File indexing completed on 2026-04-09 07:58:21
0001 import random
0002
0003 import math
0004 import time
0005 import json
0006 import sys
0007
0008
0009 def generator():
0010 while True:
0011 yield random.random()
0012
0013
0014 def evgen_single_point(x, nevents=10000, outputfile='out.json'):
0015
0016 m1, m2 = x
0017 thresh = (1 + math.tan(m1 - m2)) / 2.
0018 accepted_events = []
0019 for i, rn in enumerate(generator()):
0020 if i == nevents:
0021 break
0022 time.sleep(0.001)
0023 rnd = random.random()
0024 if rnd < thresh:
0025 accepted_events.append(1)
0026 json.dump({'accepted': float(sum(accepted_events))}, open(outputfile, 'w'))
0027
0028
0029 if __name__ == '__main__':
0030 evgen_single_point([float(sys.argv[1]), float(sys.argv[2])], nevents=int(sys.argv[3]), outputfile=sys.argv[4])