Skip to content

Commit

Permalink
Should fix #1681
Browse files Browse the repository at this point in the history
  • Loading branch information
jan-david-fischbach committed May 21, 2023
1 parent cc4d4c6 commit 56dcb31
Showing 1 changed file with 12 additions and 4 deletions.
16 changes: 12 additions & 4 deletions gdsfactory/simulation/gtidy3d/write_sparameters.py
Expand Up @@ -178,7 +178,7 @@ def write_sparameters(
port_source_names = port_source_names or port_names

for port_name in port_source_names:
if port_name not in port_symmetries:
if port_name in port_symmetries or not port_symmetries:
sim = get_simulation(component, port_source_name=port_name, **kwargs)
sims.append(sim)

Expand Down Expand Up @@ -217,18 +217,26 @@ def get_sparameter(
sp[key] = sij
sp["wavelengths"] = get_wavelengths(port_name=port_name, sim_data=sim_data)

def convert_old_fmt(s_name):
if len(s_name) == 3 and s_name[0]=="s":
s_name = f"{port_names[int(s_name[1])-1]}@0,{port_names[int(s_name[2])-1]}@0"
return s_name

if bool(port_symmetries):
for key, symmetries in port_symmetries.items():
for sym in symmetries:
if key in sp:
sp[sym] = sp[key]
n_key = convert_old_fmt(key) # TODO contribute back
n_sym = convert_old_fmt(sym)
if n_key in sp:
sp[n_sym] = sp[n_key]

return sp

for port_source_name, (_sim_name, sim_data) in zip(
port_source_names, batch_data.items()
):
sp.update(get_sparameter(port_source_name, sim_data))
sp.update(get_sparameter(port_source_name, sim_data,
port_symmetries=port_symmetries.get(port_source_name, {})))

end = time.time()
np.savez_compressed(filepath, **sp)
Expand Down

0 comments on commit 56dcb31

Please sign in to comment.