diff --git a/README.md b/README.md index f505697..350556b 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ This is a continuous adjoint opimtization wrapper for Lumerical, using Python as ## Tutorials, examples, and Documentation -It is all here: https://readthedocs.org/projects/lumopt/ +It is all here: https://lumopt.readthedocs.io/en/latest/ ## Install diff --git a/examples/Ysplitter/robust_coupler.py b/examples/Ysplitter/robust_coupler.py index 162d2fd..db163a4 100644 --- a/examples/Ysplitter/robust_coupler.py +++ b/examples/Ysplitter/robust_coupler.py @@ -49,8 +49,12 @@ def taper_splitter_2(params,n_points=10): return polygon_points bounds = [(0.2e-6, 1e-6)]*10 -geometry_1 = function_defined_Polygon(func=taper_splitter_1,initial_params=np.linspace(0.25e-6,0.6e-6,10),eps_out=1.44 ** 2, eps_in=2.8 ** 2,bounds=bounds,depth=220e-9,edge_precision=5) -geometry_2 = function_defined_Polygon(func=taper_splitter_2,initial_params=np.linspace(0.25e-6,0.6e-6,10),eps_out=1.44 ** 2, eps_in=2.8 ** 2,bounds=bounds,depth=220e-9,edge_precision=5) + +#final value from splitter_opt_2D.py optimization +initial_params=np.array([2.44788514e-07, 2.65915795e-07, 2.68748023e-07, 4.42233947e-07, 6.61232152e-07, 6.47561406e-07, 6.91473099e-07, 6.17511522e-07, 6.70669074e-07, 5.86141086e-07]) + +geometry_1 = function_defined_Polygon(func=taper_splitter_1,initial_params=initial_params,eps_out=1.44 ** 2, eps_in=2.8 ** 2,bounds=bounds,depth=220e-9,edge_precision=5) +geometry_2 = function_defined_Polygon(func=taper_splitter_2,initial_params=initial_params,eps_out=1.44 ** 2, eps_in=2.8 ** 2,bounds=bounds,depth=220e-9,edge_precision=5) ######## DEFINE FIGURE OF MERIT ######## diff --git a/examples/Ysplitter/splitter_base_TE_modematch.lsf b/examples/Ysplitter/splitter_base_TE_modematch.lsf index b800dfb..77271fa 100644 --- a/examples/Ysplitter/splitter_base_TE_modematch.lsf +++ b/examples/Ysplitter/splitter_base_TE_modematch.lsf @@ -62,6 +62,7 @@ set('x min',-size_x/2); set('x max',size_x/2); set('y min',-size_y/2); set('y max',size_y/2); +set('force symmetric y mesh',1); ## MESH IN OPTIMIZABLE REGION addmesh; diff --git a/examples/Ysplitter/splitter_base_TE_modematch_25nmoffset.lsf b/examples/Ysplitter/splitter_base_TE_modematch_25nmoffset.lsf index 4886c99..52f00cc 100644 --- a/examples/Ysplitter/splitter_base_TE_modematch_25nmoffset.lsf +++ b/examples/Ysplitter/splitter_base_TE_modematch_25nmoffset.lsf @@ -63,6 +63,8 @@ set('x min',-size_x/2); set('x max',size_x/2); set('y min',-size_y/2); set('y max',size_y/2); +set('force symmetric y mesh',1); + ## MESH IN OPTIMIZABLE REGION addmesh;