Simulation algorithms
Overview of the different algorithms implemented
Parratt
For optical isotropic material
Very fast
very stable algorithm
can calculate only sigma- and pi-light. Circluar polarization modelled as average of sigma- and pi-light.
magnetic contributions are included approximately for circular polarized light.
The magnetic dichroism in the Parratt formalism is implemented by changing the magnetization of the sample. Because of the limitations of Parratt a dichroism by changing the polarization of the light is not possible.
Zak
For optical isotropic material with magnetic contributions
very slow
stable algorithm
arbitrary polarization of incident light
top layer must be vacuum for calculating reflectivity
top and bottom layer must be vacuum for calcuting transmission
magnetization can have any direction in the material
The magnetic dichroism is implemented by changing the polarization of the light. A change of the magnetization is not possible. Due to symmetry of the XMCD effect this is not a limitation.
Matrix
For optical anisotropic material which can contain every effect that can be modelled by a dielectric tensor (e. g. magnetism, crystal structure, orbitals)
very slow
algorithm can be numerically unstable
arbitrary polarization of incident light
top layer must be vacuum for calculating reflectivity
top and bottom layer must be vacuum for calcuting transmission
Simulation modes
The reflectivity is a function of <m>R(q_z, E)</m> with the
wave vector <m>q_z = 2 k_0 sin(theta)</m>, angle of incidence <m>theta</m> and energy E. Several simulation modes are implemented to calculate the proper reflectivity.
Reflectivity
monochromatic
Calculates the reflectivity <m>R(q_z)</m> for a given polarization and energy of the incoming light.
The polarization is defined as “Ray 1” in the “Polarzation” tab.
The energy is defined in the “Reflectivity Settings” tab.
dichroic
Calculates the reflectivity <m>R(q_z)</m> for two given polarizations and one constant energy of the incoming light.
The polarizations are defined as “Ray 1” and “Ray 2” in the polarzation tab.
The energy is defined in the “Reflectivity Settings” tab.
asymmetry
Energy Scan
monochromatic
dichroic
asymmetry
map
monochromatic
Calculates the reflectivity <m>R(q_z, E)</m> of the sample for a given polarization and energy of the incoming light.
The polarization is defined as “Ray 1” in the “Polarzation” tab.
The energy is defined in the “Reflectivity Settings” tab.
Options
There are several options to alter the behaviour of the algorithms
Option Algorithm
Here you can choose the algorithm for the simulation
Parrat: activates the parratt algorithm
Full matrix formalism: activates matrix algorithm
Zak matrix formalism: activates zak algorithm
Option Precision
The algorithm are implemented with different accuracies. For most systems the precision “double” is sufficient.
In most cases the precision option is only useful for the full matrix formalism because it can be numerically unstable.
float: uses the accuracy of the 4-byte floating point numbers
double: uses the accuracy of the 8-byte floating point numbers
long double: uses the accuracy of the 10-byte floating point numbers
60 digits: uses a floating point numbers with an accuracy of 60 digits. (Very slow, but very accurate)
roughness calculation
The interface roughness makes your model real. ReMagX uses a model known as Nevot&Croce which defines the interface with
a continuous change of the optical constants delta and beta.
Nevot&Croce: Use a very efficient model to simulation interface roughness.
layer segmentation: Enable layer segmentation (see chapter “Adaptive Layer Segmentation”)