Replies: 2 comments 5 replies
-
Hey Ruggero, I don't remember a previous issue on this as well. Your code looks very good already and you just have to do a few tweaks to account for correct alignment of the sample.
There is no general relation of the extraordinary axis to, e.g., the sample surface. This is because you could have a different cut of your material which would mean that your sample geometry has another relation to ordinary/extraordinary axes. For an experiment you either know your alignment of the optical axes to the sample surfaces already or you have to experimentally determine this. You can also fit this in pyElli if you want! However, generally you should at least roughly know in with direction your optical axes w.r.t. to the geometry are situated. Otherwise the parameter space of 3D rotation is just to large. Now, how do you align the sample geometry to the optical axes? In pyElli we do this by rotating the material with a suitable rotation matrix. You can see this in the Cholesteric Liquid Crystal example. This is the most relevant part for you: LC = elli.UniaxialMaterial(
elli.ConstantRefractiveIndex(no), elli.ConstantRefractiveIndex(ne)
) # ne is along z
R = elli.rotation_v_theta(elli.E_Y, 90) # rotation of pi/2 along y
LC.set_rotation(R) # apply rotation from z to x As you see you can just apply a rotation matrix by calling
The disp_e = elli.LorentzEnergy().add(
params["amplitude_e"],
params["energy_e"],
params["broadening_e"],) + params["epsilon_inf"] A number just adds as epsiloninf (i.e. its the same as using
Indeed, the 2x2 cannot account for anisotropy as it treats s and p waves independently and w/o cross-interaction.
👍️ |
Beta Was this translation helpful? Give feedback.
-
Without rotation, the Materiel is oriented with the extraordinary axis perpendicular to the layer surface. If you prefer the euler angles, in the Fujiwara's book Spectroscopic Ellipsometry - Principles and Applications Figure 6.10 has some common examples. |
Beta Was this translation helpful? Give feedback.
-
Dear PyElli's,
I would like to build a model using the UniaxialMaterial class and I am not sure about a couple of things, hope you can help. I did not find open/closed issues/discussions. In case this is a duplicate please point me there.
I am going along these lines, to build a stack where I report only the meaningful (the one I believe is) part of the code:
For the case of a thin film on SiO2 on Si
How the anisotropic layer is assumed to be oriented? The extraordinary axis is normal to the substrate surface?
How would one here add an EpsilonInf term to the uniaxial layer?
I am using the 4x4 solver, correct?
The "as_delta_range(0,180)" is due to Woollam data.
Thanks,
Best regards
Ruggero
Beta Was this translation helpful? Give feedback.
All reactions