In this unit, we will set up the simulation project for our Mie scattering example.
First, we need to add the materials we need in our simulation.
Let’s open the optical material database.
In this example, we need 2 materials: gold for the nano-particle, and vacuum for the
We will select the Johnson and Christy model for gold.
Clicking "Create" will add this material to the "materials" group in the object tree.
We now do the same for vacuum and close the material database.
Now that we have defined the materials needed in the simulation, we can create the geometry.
We add a sphere, that will define the simulation volume.
Then, we edit its properties by naming it "outer", set its radius to be 250nm and choose
its material to be vacuum.
From the graphical rendering tab, we set the "alpha" property to 0.5 so the sphere becomes
semi-transparent in the layout editor.
Next, we will add another sphere, that will define the surface where the light is injected.
We name this sphere "source" and set the radius to 70nm.
The material assigned to this object is vacuum.
As both "outer" and "source" objects are assigned the same material, which is vacuum, we need
to check the "preserve surfaces" box in this object so the surface of the "source" sphere
can be used to inject the light.
Otherwise, the solver would merge both objects together since they are both made of the same
Finally, we set the "alpha" to 0.5 for this sphere as well.
Now we add another sphere that represents our nano-particle.
Let’s name it "particle", set the radius to 50nm, and the material to gold.
Finally, we add a 2D rectangle which will be used as a reference plane to define the
monitor that will record the field profile inside and around the particle in the XY plane.
The default settings of the rectangle object are sufficient for our simulation.
The next step is to define the simulation region.
Let’s edit its properties.
We will do a 3D simulation, and set all the boundaries to open so the simulation region
is defined by the outer limits of the geometry, in our case, the "outer" sphere.
We can now add the DGTD solver to our simulation.
In the solver properties window, we set the simulation time to 35fs, the number of edges
per wavelength to 5, and the polynomial order to 2.
More details about the definition and application of these settings will be provided later in
At any time during the simulation setup, we can use the partitioned volume mode to visualize
the simulation setup as can be seen by the solver and to make sure that the simulation
is setup as intended.
In our example, we can see that based on our simulation setup, the simulation region is
divided into 4 domains of Vacuum and 2 of domains of Gold.
Upper and lower domains are formed because the "2D rectangle" used as a reference plane
for the monitor cuts the simulation volume in half.
There are also two domains of gold, which define the "particle" object.
More details about the partitioned volume mode can be found in the "simulation tips"
section of this course.
Now, let’s define the boundary conditions for our simulation.
We add an absorbing boundary condition and edit its properties.
The surface type is set to solid, we select the "outer" sphere in "solid" and check the
"outer surface only" option.
This will assign the absorbing boundary condition to the outer surface of the sphere object
which happens to be our simulation region boundary since we set the boundaries of the
simulation region to open.
It is important to understand that, in this case, the simulation domain is not defined
by the rectangular simulation region object, but by the largest geometrical object within
the boundaries of the simulation region object.
For more information about various types of boundary conditions and open simulation boundaries,
please visit the "simulation tips" section of this course.
Next, we add a plane wave as our light source and edit its properties.
We will keep the default settings for the direction of propagation and polarization.
In the geometry tab, we set the surface type to solid and select our "source" sphere.
This will assign the light source to the sphere object that is surrounding our gold nanoparticle.
Again, we check "outer surface only" so the light is injected from the sphere surface
Finally, we set the wavelength range to be from 300nm to 1100nm.
Now we will add the monitors that will record the desired data from the simulation.
First we add a frequency monitor which will be used to calculate the amount of light scattered
by the particle.
We call this monitor "scat", set the number of frequency points to 81 and check "use linear
In "Geometry", we select the same settings as for the source: surface type is solid and
we select the "source" sphere.
This will put the monitor at the same place as the light source which will allow the separation
of scattered light from the light injected by the source.
We check "outer surface only" so the monitor will record the data at the surface of the
We now add a second frequency monitor to visualize the electric field distribution around the
We can call this monitor "Field_XY" and use the same frequency settings as for the previous
In geometry tab, we select "solid" and use the 2D rectangle as a reference plane to record
the field distribution along the XY plane.
The simulation setup is now complete.
In the next unit, we will learn how to run the simulation we just setup and how to analyze
the simulation results.