#revised on 2012-01-04 For SOA B Design from jaredwave import * import time # Set Parameters set_working_directory('./') set_eval_type('n_eff') set_mode_finder_type('stable') set_mode_solver('vectorial FMM real') lam0 = 1.58 # expected center wavelength to be compatible with IPHOD waveguide set_wavelength(lam0) set_N_1d(100) set_N(1) # Project Node project = 'HW_SOA_D'; SOA12_prj = Project(project + '_prj') SOA12_prj.buildNode() top_prj = SOA12_prj; # Structure Definition w_Dev = 14; w_nInP = w_Dev; w_SL = w_nInP; w_bondOxide = w_nInP; w_Mesa = w_Dev; w_pInP = w_Mesa; w_ESL = w_Mesa; # etch stop layer w_pInP2 = w_Mesa w_MQW = w_Mesa; w_pEBL = w_MQW w_pSCH = w_MQW; w_nSCH = w_MQW; w_nEBL = w_Dev; w_Si_ridge = 1.0; # ridge waveguide width w_Si_slab = w_Dev; w_SiO2 = w_Dev; #h_pContact = 0.1; #ignore h_well = 0.006; h_barrier = 0.009; Num_well = 7; Num_barrier = Num_well+1; h_MQW = h_well*Num_well + h_barrier*Num_barrier; h_pSCH = 0.1; h_nSCH = 0.1; h_ESL = 0.05; h_EBL = 0.05; h_pInP = 1.5; h_pInP2 = 0.05; # the layer between the EBL and ESL h_nInP = 0.110; h_SL = 0.03 h_bondOxide = 0.01; h_Si_ridge = 0.25; # etch depth h_Si_slab = 0.5-h_Si_ridge; h_SiO2 = 1; h_air = 0.1; # Material definition n_SU8 = 1.57; #1.55 n_Si = 3.47533; #1.58 n_SiO2 = 1.44366; #1.58 n_Air = 1; #n_InGaAs = 3.726156 # n_InP = 3.163766428 #1.58 #n_pSCH_ext = 3.252083918903392 #GRIN-SCH exteral side In(0.53)Al(x)Ga(0.47-x)As x=0.44->0.155 n_pSCH_ext = 3.316115558669745 #GRIN-SCH exteral side In(0.53)Al(x)Ga(0.47-x)As x=0.34->0.155 n_pSCH_int = 3.4544666 # GRIN-SCH interal side x=0.155 n_nSCH_int = n_pSCH_int # n_nSCH_ext = n_pSCH_ext n_well = 3.635223413 #In(0.6758)Al(0.06)Ga(0.2642)As 1.58um n_barrier = 3.494023939 # In(0.4411)Al(0.085)Ga(0.4739)As 1.58um n_MQW = sqrt((n_well*n_well*h_well*Num_well+n_barrier*n_barrier*h_barrier*Num_barrier)/h_MQW); n_InGaAsP = 3.2876027240668 #In(0.85)Ga(0.15)As(0.327)P(0.673) 1.58um n_bondOixde = 1.6 #approximation n_SL = sqrt(0.5*(n_InGaAsP*n_InGaAsP+n_InP*n_InP)) n_pInP = n_InP n_nInP = n_InP n_ESL = 3.243242483 # In(0.9029)Ga(0.0971)As(0.213)P(0.787) 1.58 n_EBL = 3.237747466 # In(0.52)Al(0.48)As m_SU8 = Material(n_SU8) m_Si = Material(n_Si) m_air = Material(n_Air) m_SiO2 = Material(n_SiO2) m_pInP = Material(n_pInP); m_nInP = Material(n_nInP); m_MQW = Material(n_MQW); m_SL = Material(n_SL) m_pSCH_ext = Material(n_pSCH_ext); m_pSCH_mid = Material((n_pSCH_ext+n_pSCH_int)*0.5); m_pSCH_int = Material(n_pSCH_int) m_nSCH_ext = Material(n_nSCH_ext); m_nSCH_mid = Material((n_nSCH_ext+n_nSCH_int)*0.5); m_nSCH_int = Material(n_nSCH_int) m_ESL = Material(n_ESL) m_EBL = Material(n_EBL) m_bondOxide = Material(n_bondOixde); bndry = 'PEC'; set_top_boundary(bndry) set_bottom_boundary(bndry) set_right_boundary(bndry) set_left_boundary(bndry) f = open(project + '.out','a') f.write('wavelength = '+str(lam0)+' \mum'+'\n') s_air = Slice(m_air(w_Dev)); ## replace InGaAs by pInP #s_pContact = Slice(m_SU8(w_Dev/2-w_pContact/2) + m_pInP(w_pContact) + m_SU8(w_Dev/2-w_pContact/2)); if w_pInP