In this video, we are going to set up a finite element eigenmode simulation for a silicon
strip waveguide within the DEVICE design environment using the FEEM solver.
We have already opened up DEVICE and are going to start with a blank project.
The simulation workflow is similar to the other DEVICE solvers and starts with the material
Adding a material to the objects tree can be done in more that one way.
For example, we can open up the optical material database, select the material of interest;
for example, silicon and click on the create button to create a copy of this material in
the objects tree.
Let’s close the window.
We can also add a new material to the objects tree first, by clicking on the New Material
button and then right clicking on it to add optical properties.
This will open up the optical material database and we can select the model we want to use.
For example, let’s select the silicon dioxide material model and click SELECT.
Rename the material object to SiO2 (Glass) - Palik.
The materials are now ready to be used in our simulation.
The next step is to build the geometry of the device under investigation.
To do this, we will first add a rectangle to the objects tree from the structures section
in the Design tab and edit its properties.
Set the name to WG and the x span to 0.5 micron.
Set the z min to 0 and z max to 0.22 micron.
In the material tab set the material to Si.
Add a second rectangle to the objects tree to model the oxide cladding surrounding the
silicon waveguide and edit it properties.
Set the name to oxide, the x span to 3 micron, and the z span to 3 microns.
In the material tab set the material to SiO2 and the mesh order to 5.
Note that a higher mesh order means that in regions where the oxide will overlap with
the silicon waveguide, the silicon waveguide will have priority.
In the graphical rendering tab set the value of alpha to 0.1 so that the oxide object will
be transparent, and we can still easily see the silicon waveguide inside it.
With the geometry defined, the next step in the workflow is to define the simulation region.
All DEVICE project files have a simulation region in the objects tree by default.
If necessary, we can also add more simulation regions by clicking on the Region button in
the tabbed toolstrip.
In this demo we are going to modify the default simulation region according to our need.
Go to the property editor and set the dimension to 2D-Ynormal.
Keep all the boundaries to ‘closed’, this means that the simulation volume is going
to be defined by the size of this simulation region object.
Set the geometry with x span equal to 2.5 micron and z span equal to 2.5 micron.
We are now ready to add the solver object.
Click on the FEEM button in the tabbed toolstrip to add the solver to the objects tree.
Note that as soon as the solver object gets added, a new tab containing all the necessary
simulation objects for that particular solver appears in the tabbed toolstrip.
Open up the property editor for the solver and note that the simulation region has already
been set to the default simulation region object in the objects tree.
If there is only one simulation region object available, then the solvers automatically
However, if there are multiple simulation regions present then care must be taken to
ensure that the right one has been selected in the solver properties.
In the mesh tab set the edges per wavelength to 2 and polynomial order to 3.
Enable the “refine based on material properties” option so that the solver will use the effective
wavelength of light inside each material during meshing.
In the modal analysis tab set the sweep parameter to wavelength and the wavelength value to
Keep the number of trial modes to 20.
Search near n and use the “use max index” option.
This way the solver will look for modes near the maximum index value in the system which
would be the index value of silicon at 1.55 micron in this case.
We can now check out the partition volume by clicking on the partition button.
The partitioned volume mode shows the entire simulation volume and identifies the different
domains and surfaces.
Each domain and surface have a unique identifier and they are listed under the "simulation
region" in the Objects Tree.
As you select different domains and surfaces in the Objects Tree the corresponding volume
or surface gets highlighted in the partitioned volume.
In the object tree you can also see the material of each domain listed on the right.
We will now add the boundary conditions to our simulation region.
The external boundaries should all be set to PEC.
We can do this by adding a PEC boundary condition to the object tree from the tabbed toolbar.
Now edit the property of the boundary condition and set the surface type to simulation region.
Select the x min, x max, z min, and z max boundaries to apply the PEC boundary condition
at these boundaries.
Note that the corresponding boundaries now get highlighted in the partitioned volume
mode when the PEC boundary condition object is selected.
The default boundary condition for the mode simulation region is PEC so if no boundary
condition is defined, they will automatically be set to PEC boundary condition.
Finally, we will add a mesh constraint which will allow us to refine the mesh in specific
domains or sufaces inside the simulation region.
In this simulation we will refine the mesh on the outer surface of the silicon waveguide.
To do this, click on the constraint button in the tabbed toolbar and edit the proprties.
Set the maximum edge length to 0.01 micron so that element edges on the surface of the
silicon waveguide will be either smaller than or equal to 10 nm.
In the geometry tab set the geometry type to surface, surface type to solid.
Select the waveguide geometry as the solid and close the window.
Note that the partitioned volume again highlights the location where the constraint will get
The simulation set up is now complete.
Save the file and name it “soi_wg.ldev”.
In the following units we will see how to run the simulation and analyze the simulation