Compare commits

..

3 Commits

Author SHA1 Message Date
Joseph Hopfmüller
884d9f73c9 add default to birefsteps 2024-12-05 23:50:49 +01:00
Joseph Hopfmüller
08c81428ef add new training data 2024-12-05 23:50:14 +01:00
Joseph Hopfmüller
9299316f81 add new training_data 2024-12-05 23:43:24 +01:00
9 changed files with 39 additions and 9 deletions

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1250b8258fe86ed75db52637b69e1d5738105be1b60fd45049738f711d390192
size 606

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:beb48236b04818824df1110815ecacdd2f2796a441d4c50bc944711cc3d6ef94
size 606

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:505efd2a124a4e1bba5fb4342bc1427b24042e64db5c60a96cb66d0a2b19378f
size 605

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:166c482c5cbf586468865358a4b3cf101be4b16c42a590a8b517cdf7f9c2fd7a
size 605

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bc6bae5f56197c905482795cffd6158254cb2f6ae38b848f16afe230fe6a9250
size 134217856

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6e8cdb0328ed84f16e1f5e586acf981a16ae60710b97c3de74f9eb873fafd0cc
size 134217856

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ff0411b01ecfa5a0663343f21ba90bf6fa95e5bf5673e99ec26ba2055bbb19f9
size 134217856

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6e8cdb0328ed84f16e1f5e586acf981a16ae60710b97c3de74f9eb873fafd0cc
size 134217856

View File

@@ -244,8 +244,8 @@ def initialize_fiber_and_data(config, input_data_override=None):
D=config["fiber"]["d"], D=config["fiber"]["d"],
S=config["fiber"]["s"], S=config["fiber"]["s"],
) )
if config["fiber"]["birefsteps"] > 0: if config["fiber"].get("birefsteps", 0) > 0:
config["fiber"]["birefseed"] = config["fiber"].get( seed = config["fiber"].get(
"birefseed", (int(time.time() * 1000)) % 2**32 "birefseed", (int(time.time() * 1000)) % 2**32
) )
py_fiber.birefarray = pypho.birefringence_segment.create_pmd_fibre( py_fiber.birefarray = pypho.birefringence_segment.create_pmd_fibre(
@@ -253,7 +253,7 @@ def initialize_fiber_and_data(config, input_data_override=None):
py_fiber.l / config["fiber"]["birefsteps"], py_fiber.l / config["fiber"]["birefsteps"],
# maxDeltaD=config["fiber"]["d"]/5, # maxDeltaD=config["fiber"]["d"]/5,
maxDeltaBeta = config["fiber"].get("max_delta_beta", 0), maxDeltaBeta = config["fiber"].get("max_delta_beta", 0),
seed=config["fiber"]["birefseed"], seed=seed,
) )
c_params = pypho.cfiber.ParamsWrapper.from_fiber( c_params = pypho.cfiber.ParamsWrapper.from_fiber(
py_fiber, max_step=1e3 if py_fiber.gamma == 0 else 200 py_fiber, max_step=1e3 if py_fiber.gamma == 0 else 200
@@ -296,7 +296,7 @@ def save_data(data, config):
f"alpha = {config['fiber']['alpha']}", f"alpha = {config['fiber']['alpha']}",
f"D = {config['fiber']['d']}", f"D = {config['fiber']['d']}",
f"S = {config['fiber']['s']}", f"S = {config['fiber']['s']}",
f"birefsteps = {config['fiber']['birefsteps']}", f"birefsteps = {config['fiber'].get('birefsteps',0)}",
f"max_delta_beta = {config['fiber'].get('max_delta_beta', 0)}", f"max_delta_beta = {config['fiber'].get('max_delta_beta', 0)}",
f"birefseed = {hex(birefseed)}" if birefseed else "; birefseed = not set", f"birefseed = {hex(birefseed)}" if birefseed else "; birefseed = not set",
"", "",
@@ -336,7 +336,7 @@ def save_data(data, config):
config["fiber"]["d"], config["fiber"]["d"],
config["fiber"]["s"], config["fiber"]["s"],
f"{config['signal']['modulation'].upper()}{config['signal']['mod_order']}", f"{config['signal']['modulation'].upper()}{config['signal']['mod_order']}",
config["fiber"]["birefsteps"], config['fiber'].get('birefsteps',0),
config["fiber"].get("max_delta_beta", 0), config["fiber"].get("max_delta_beta", 0),
) )
@@ -366,7 +366,7 @@ def length_loop(config, lengths, incremental=False, bireflength=None, save=True)
else: else:
print(f"\nGenerating data for fiber length {length}m") print(f"\nGenerating data for fiber length {length}m")
config["fiber"]["length"] = length config["fiber"]["length"] = length
if bireflength is not None: if bireflength is not None and bireflength > 0:
config["fiber"]["birefsteps"] = length // bireflength config["fiber"]["birefsteps"] = length // bireflength
birefsteps_running += config["fiber"]["birefsteps"] birefsteps_running += config["fiber"]["birefsteps"]
# set the input data to the output data of the previous run # set the input data to the output data of the previous run
@@ -520,9 +520,15 @@ if __name__ == "__main__":
add_pypho.show_log() add_pypho.show_log()
config = get_config() config = get_config()
# lengths = np.arange(50000, 150000+6000, 10000) ranges = (10000,)
lengths = [10000] # scales = tuple(range(1, 10))
length_loop(config, lengths, incremental=False, bireflength=1000, save=True) scales = (1,)
lengths = [range_ * scale for range_ in ranges for scale in scales]
# lengths.append(10*max(ranges))
lengths = [*lengths, *lengths]
lengths = sorted(lengths)
length_loop(config, lengths, incremental=False, bireflength=None, save=True)
# birefringence is constant over coupling length -> several 100m -> bireflength=1000 (m) # birefringence is constant over coupling length -> several 100m -> bireflength=1000 (m)
# single_run_with_plot(config, save=False) # single_run_with_plot(config, save=False)