Skip to content

Commit

Permalink
Adds NCS values to results
Browse files Browse the repository at this point in the history
  • Loading branch information
domna committed Sep 8, 2023
1 parent da04eb7 commit dbd18e3
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions src/elli/result.py
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,48 @@ def delta(self) -> npt.NDArray:
return np.mod(-np.angle(self.rho, deg=True), 360)
return -np.angle(self.rho, deg=True)

@property
def N(self) -> npt.NDArray:
r"""
N element of the NCS parameter set.
The NCS values are essentially the non-zero mueller matrix elements for isotropic samples.
Synonym: Ic'.
It is calculated directly from psi/delta:
.. math::
N = \cos (2 \Psi )
"""
return np.cos(2 * np.deg2rad(self.psi))

@property
def C(self) -> npt.NDArray:
r"""
C element of the NCS parameter set.
The NCS values are essentially the non-zero mueller matrix elements for isotropic samples.
Synonym: Ic
It is calculated directly from psi/delta:
.. math::
C = \sin (2 \Psi ) \cdot \cos \Delta
"""
return np.sin(2 * np.deg2rad(self.psi)) * np.cos(np.deg2rad(self.delta))

@property
def S(self) -> npt.NDArray:
r"""
S element of the NCS parameter set.
The NCS values are essentially the non-zero mueller matrix elements for isotropic samples.
Synonym: Is
It is calculated directly from psi/delta:
.. math::
S = \sin (2 \Psi ) \cdot \sin \Delta
"""
return np.sin(2 * np.deg2rad(self.psi)) * np.sin(np.deg2rad(self.delta))

@property
def delta_t(self) -> npt.NDArray:
r"""Returns the ellipsometric angle :math:`\Delta_\text{t}` in transmission direction.
Expand Down

0 comments on commit dbd18e3

Please sign in to comment.