Mueller matrix decompositions¶
- class pySCATMECH.mueller.CharacterizedMueller(M)¶
Characterize the Mueller matrix according to
N. Ghosh, M.F.G. Wood, and I.A. Vitkin, ‘Mueller matrix decomposition for extraction of individual polarization parameters from complex turbid media exhibiting multiple scattering, optical activity, and linear birefringence,’’ J. Biomedical Opt. 13, 044036 (2008).
A few other parameters are also calculated.
- Parameters:
M (MuellerMatrix) – The Mueller matrix to be characterized
- Mdepol¶
Depolarizer in Lu-Chipman decomposition
- Type:
- Mret¶
Retarder in Lu-Chipman decomposition
- Type:
- Mdiatten¶
Diattenuator in Lu-Chipman decomposition
- Type:
- DiattenuationVector¶
The 3-element diattenuation vector
- Type:
numpy.array
- Diattenuation¶
Diattenuation
- Type:
float
- CircularDiattenuation¶
Circular diattenuation
- Type:
float
- LinearDiattenuation¶
Linear diattenuation
- Type:
float
- DiattenuationAngle¶
Angle of diattenuation in radians
- Type:
float
- Polarizance¶
The 3-element polarizance vector
- Type:
numpy.array
- DepolarizationCoefficient¶
Depolarization coefficient (1 = nondepolarizing, 0 = depolarizing)
- Type:
float
- LinearRetardance¶
Linear retardance in radians
- Type:
float
- OpticalRotation¶
Optical rotation in radians
- Type:
float
- Retardance¶
Total retardance in radians
- Type:
float
- RetardanceAngle¶
Angle of retardance in radians
- Type:
float
- pySCATMECH.mueller.Cloude_Decomposition(M)¶
Return a list of four non-depolarizing Mueller matrices that sum to the Mueller matrix.
- Parameters:
M (MuellerMatrix) – Mueller matrix to be decomposed
- Returns:
M1, M2, M3, M4 – The decomposed Jones-Mueller matrices sorted so that M1[0,0] >= M2[0,0] >= M3[0,0] >= M4[0,0]
- Return type:
- pySCATMECH.mueller.MuellerLog(M)¶
Return matrix logarithm (logarithmic decomposition).
- Returns:
The matrix logarithm of M
- Return type:
4x4 numpy.array
- pySCATMECH.mueller.Reverse_Lu_Chipman_Decomposition(M)¶
Return a diattenuator, retarder, and depolarizer whose ordered product is the Mueller matrix.
See: S.-Y. Lu and R.A. Chipman, “Interpretation of Mueller matrices based on polar decomposition,” J. Opt. Soc. Am. A 13, 1106-1113 (1996) and J. Morio and G. Goudail, “Influence of the order of diattenuator, retarder, and polarizer in polar decomposition of Mueller matrices,” Opt. Lett. 29, 2234-2236 (2004).
- Parameters:
M (MuellerMatrix) – The matrix to be decomposed
- Returns:
diattenuator (MuellerMatrix)
retarder (MuellerMatrix)
depolarizer (MuellerMatrix) – M = diattenuator @ retarder @ depolarizer
- pySCATMECH.mueller.Symmetric_Decomposition(M)¶
Perform the symmetric decomposition described by Ossikovski.
See: R. Ossikovski, J. Opt. Soc. Am. A 26, 1109-1118 (2009).
- Parameters:
M (MuellerMatrix) –
- Returns:
diatten2 (MuellerMatrix)
ret2 (MuellerMatrix)
depol (MuellerMatrix)
ret1 (MuellerMatrix)
diatten1 (MuellerMatrix) – M = diatten2 @ ret2 @ depol @ ret1 @ diatten1