Waveguide arrayΒΆ

To define a waveguide array we need to define:

  • wg_gaps

  • widths

  • the material functions or refractive indices of box, waveguide and clad

  • thickness of each material

  • x and y_steps for discretizing the structure

  • sidewall angle

  • wavelength that can be used in case the refractive index are a function of the wavelength

Where all units are in um

__________________________________________________________

                                                         clad_thickness
     widths[0]  wg_gaps[0]  widths[1]
      ___________              ___________    _ _ _ _ _ _
     |           |            |           |
_____|           |____________|           |____          |
                                                         wg_heigth
slab_thickness                                              |
________________________________________________ _ _ _ _ _

sub_thickness
__________________________________________________________
[1]:
import modes as ms
[2]:
wg = ms.waveguide_array(widths=[0.5]*2, wg_gaps=0.2)
wg
[2]:
[0.5, 0.5] x 0.22 um, n_wg = 3.4757, n_clad = [1.444023621703261]
../_images/notebooks_03_waveguide_array_3_1.png
[3]:
ms.waveguide_array?
[4]:
wg_slab = ms.waveguide_array(widths=[0.5]*2, wg_gaps=0.2, slab_thickness=0.09)
wg_slab
[4]:
[0.5, 0.5] x 0.13 um, n_wg = 3.4757, n_clad = [1.444023621703261]
../_images/notebooks_03_waveguide_array_5_1.png
[5]:
s = ms.mode_solver_full(wg=wg_slab, plot=True, plot_index=True, fields_to_write=('Ex'))
../_images/notebooks_03_waveguide_array_6_0.png
../_images/notebooks_03_waveguide_array_6_1.png
../_images/notebooks_03_waveguide_array_6_2.png
[ ]: