## Abstract

This paper reports on the design and implementation of a liquid crystal variable retarder based overdetermined spectroscopic Mueller matrix polarimeter, with parallel processing of all wavelengths. The system was designed using a modified version of a recently developed genetic algorithm [Letnes et al. Opt. Express **18**, 22, 23095 (2010)]. A generalization of the eigenvalue calibration method is reported that allows the calibration of such overdetermined polarimetric systems. Out of several possible designs, one of the designs was experimentally implemented and calibrated. It is reported that the instrument demonstrated good performance, with a measurement accuracy in the range of 0.1% for the measurement of air.

© 2013 OSA

## 1. Introduction

Polarimeters measure the polarization state of electromagnetic waves. Methods based on polarimetry are thus non-invasive and have the possibility for remote sensing applications, which makes them attractive in many fields of science. In the range of optical frequencies, polarimetry has proven to be useful and promising in e.g. biomedical diagnostics [1–3], remote sensing [4] and astronomy [5]. The sample measuring polarimeter (ellipsometer) is a key characterization technique for thin films [6–8], with recent applications to e.g. gratings [9], nanostructures [10–12], plasmonics [13], metamaterials [14] and scattering from rough surfaces [15–17].

A Mueller matrix ellipsometer/polarimeter consists of a complete polarization state generator (PSG) and polarization state analyzer (PSA), which determines all the polarization altering properties of a sample both in reflection and in transmission. A Stokes polarimeter consist only of a PSA and is used to determine the complete polarization state of partially polarized light.

A PSA/PSG generally consists of a diattenuating polarizer and an active birefringent optical component either modulated by azimuthal rotation or by an externally applied electric field [18]. Typical examples are rotating (wave-plate/bi-prism) retarders [6, 19], electro-optical modulation [20], photoelastic modulators [21, 22], and liquid crystal retarders [23, 24]. Dispersion in the optical components is usually limiting the wavelengths range of the polarimeters, but novel system designs may overcome this problem for at least a limited spectral range [23].

Certain wide band achromatic polarimeters (from the ultraviolet to the infrared) may be constructed using near non-dispersive retarders, by exploiting the total internal reflection from Fresnel prisms [19]. These retarders do commonly have a small aperture, are sensitive to alignment and require mechanical azimuth rotation for operation, and are thus not really suitable for imaging and space applications. On the other hand, liquid crystal retarders have no moving parts and can easily be made with large apertures, but they are strongly dispersive and a liquid crystal based wide band polarimeter requires a more advanced design.

A common way of designing polarimeters with dispersive components, is to first choose components based on a previous design or use a qualified guess. Secondly, the orientations of the components and the electrically controlled states are estimated by a local exhaustive or a gradient search. Due to a large search space, these latter search methods are computationally expensive and require particularly good starting guesses in order not to converge to a local minimum. Furthermore, for liquid crystal based wide spectral range multichannel polarimeters, it is necessary to add more modulating components [25], or states in the original components, in order to improve the conditioning of the system. The polarization state measurement is then said to be overdetermined. This makes the system design even more complex, due to the addition of more dimensions to the search space, hence requiring an efficient design algorithm [25].

Evolutionary algorithms are inspired by how nature evolves and how natural selection occurs. Genetic algorithms [26] are a subcategory of these and are based on the use of a genome, commonly a series of binary numbers, to evaluate, breed and compare different solutions. Genetic algorithms have proven to be effective at solving certain types of problems and are especially effective in large search spaces with a number of local minima. However, it is important to note that the algorithm does not search every solution and it cannot be guaranteed that the global optimum is found, though with well configured parameters it should be a good one [27].

Advantages of overdetermined polarimeters and the use of genetic algorithms to design them, was proven theoretically for a broadband system based on ferroelectric liquid crystal components in [25]. The genetic algorithm was generically implemented in order to create designs using any polarization modulating component with known dispersive properties. We here report for the first time an experimental implementation and testing of a genetic algorithm designed wide-band liquid crystal variable retarder Mueller matrix polarimeter.

## 2. Theory

Let us first briefly review the theory and notation used to describe the measurement of Stokes vectors and Mueller matrices using a PSA and a PSG, both for determined and overdetermined systems. The calibration of overdetermined Mueller matrix polarimeters is thereafter explained using a generalization of the eigenvalue calibration method (ECM) [28].

The polarization state of light, can generally be represented in vector form by the four element Stokes vector defined by

*E*(

_{x}*t*) and

*E*(

_{y}*t*) are time dependent, electric field amplitudes of the

*x*− and

*y*−components, of an electric field propagating in the

*z*−direction. 〈·〉 denotes time averages and

*δ*(

*t*) is the time dependent phase difference between the

*x*− and

*y*−components of the electric field. Note that the averaging of time varying amplitudes and phases, results in a reduced degree of polarization.

The Mueller matrix is a 4 × 4 transfer matrix transforming an initial Stokes vector to the final by **S**_{final} = **M**_{sample}**S**_{initial}. A Mueller matrix can describe all changes in the polarization state of light upon the interaction with a sample, with quantifiable effects, like for instance polarizance, diattenuation, retardance and depolarization [18].

In order to measure **M**, one needs at least four probing Stokes vectors [18]. Consequently these Stokes vectors need to be measured by a polarimeter/PSA. A polarimeter/PSA projects the incoming intensity to at least four carefully selected polarization states. These states are the Stokes vectors in the PSA, organized into the rows of the PSA matrix **A**. The intensity vector, **b** = **AS**, for an incoming Stokes vector can then be measured, and the Stokes vector found by inversion; **S** = **A**^{−1}**b**. Similarly, for the PSG in the Mueller matrix polarimeter/ellipsometer, the generated Stokes vectors are organized as columns in the **W** matrix. The product **MW** gives the Stokes vectors for the PSA to analyze, yielding the total intensity measurement matrix **B** = **AMW**. As a result, the Mueller matrix can then, in principle, readily be calculated by inversion of **A** and **W**, **M** = **A**^{−1}**BW**^{−1}. There are several ways of finding **A** and **W** for a system, but a common method is the robust and increasingly popular ECM [28]. It uses the measurement of a set of calibration samples to account for all systematic errors, such as alignment errors and time/temperature dependent variations in components of the system [23,24,29]. Prior knowledge is only required for the form of the reference sample Mueller matrix (i.e. if it is a polarizer or retarder) and an initial qualified guess of the azimuth orientation, for solving the system with the ECM. In our case, **A** and **W** result from six states in the PSA and PSG, corresponding to 12 specific Stokes vectors **S**_{W}_{1−6} and **S**_{A}_{1−6}

The ECM is explained in the original paper [28] for systems using four Stokes vectors in the PSG and PSA. Here we present the generalization needed to calibrate a system with *n* Stokes vectors in the PSA and *m* Stokes vectors in the PSG. We start with a set of reference Mueller matrices, {**M**}, corresponding to a set of intensity measurements, {**B**}. **B*** _{i}* is of size

*n*×

*m*and is given by

**M**

_{0}is chosen to be air, such that

**B**

_{0}=

**AW**. Next, two sets of matrices, {

**C**} and {

**C**′}, are constructed using

^{†}denotes the Moore-Penrose pseudoinverse, which is the common way of defining the inverse of a non-square matrix with noise [30]. In the case where

**B**

*is of size four by four, the sets {*

_{i}**C**} and {

**C**′} have the same eigenvalues as the set of Mueller matrices {

**M**}. As

**C**

*is independent of*

_{i}**A**, and

**C**′

*is independent of*

_{i}**W**,

**A**and

**W**may be found independently, and {

**M**} may be found both from {

**C**} and {

**C**′} independently.

In an overdetermined system **C*** _{i}* and

**C**′

*holds more eigenvalues than the corresponding Mueller matrix*

_{i}**M**

*. One way of finding which of the eigenvalues that correspond to the Mueller matrix*

_{i}**M**

*, is to do a search in the eigenvalues of*

_{i}**C**

*and*

_{i}**C**′

*and compare them with expected values. However, in a real measurement including noise, the latter approach did in our experience not appear robust. The noise is related to the relative error in*

_{i}**M**, shown by Stabo-Eeg et al. [19] to be

*κ*

**and**

_{W}*κ*

**are the condition numbers of**

_{A}**W**and

**A**respectively. For a square non-singular matrix the condition number is defined as

*κ*

**= ||**

_{A}**A**||||

**A**

^{−1}||, while for a non-square matrix the generalized condition number is given by

*κ*

**= ||**

_{A}*A*||||

*A*

^{†}|| [31], where || · || denotes the second norm of the matrix. From Eq. (2) it is seen that in order to minimise the noise in

**M**, it is necessary to reduce the condition numbers of

**A**and

**W**.

A robust solution to finding the correct eigenvalues of {**M**} from {**C**} and {**C**′}, is to (at each wavelength) reduce **B**_{0} and **B*** _{i}* in Eq. (1) to the 4 × 4 subset of

**B**

_{0}and

**B**

*resulting in the lowest condition number for the reduced*

_{i}**B**

_{0}. When inverting

**B**

_{0}, this ensures minimal noise propagation into

**C**

*and to the eigenvalues of*

_{i}**M**

*. After finding the eigenvalues of {*

_{i}**M**}, the remainder of the calibration procedure follows the original paper by Compain et al. [28], using the non reduced {

**B**}.

Also worth noting is that the noise equation, Eq. (2), is the basis for the genetic optimisation, which tries to maximise the inverse condition number.

## 3. Experimental

The essential optical components in the Mueller matrix polarimeter presented here, are polarizers and liquid crystal variable retarders (LCVR). In the calibration, a polarizer and a waveplate was used. We used a high extinction ratio near infra-red polarizer (*LPNIR*) from *Thorlabs* and a true zero-order quarter waveplate at 1310 nm from *Casix*. The LCVRs were custom made for the near infrared from *Meadowlark Optics*.

LCVRs are wave retarders having the retardance as a function of applied voltage. Compared to ferroelectric liquid crystal retarders (previously proposed overdetermined polarimeter design [25]) which have only one fixed retardance, but with two stable azimuth orientations, they typically have much longer transition times between two states [32], but have the advantage of allowing the selection of all retardation values between a maximum and minimum value.

In order to design the optimal polarimeter, the retardance as a function of voltage and wavelength needs to be known with reasonable precision. Although the calibration routine handles small deviations in dispersive optical properties, high accuracy of the Mueller matrix elements is only insured as long as the condition number is not strongly degraded with respect to the design. In the instrument reported here, it was also found that there were, due to manufacturing uncertainties, differences in thickness between the individual crystals. The crystals were therefore characterized individually in the range of 450 – 1680 nm using a commercial available Mueller matrix polarimeter *RC2* from *J.A. Woollam Co.*. Figure 1(a) shows as an example, a surface plot of the resulting retardance as a function of voltage and wavelength for one of the LCVRs. It is noted that for lower voltages the retardance reaches a threshold at the critical voltage 1.5 V, while it approaches a low residual retardance for high voltages. The large retardance in the visible insures the possibility for a reasonable retardance variation in the longer wavelengths of the NIR spectrum.

It was found that the retardance was reduced significantly with the increased ambient temperature. Figure 1(b) shows the deviation in the wavelength dependent retardance for 26°C, 28°C and 30°C, relative to the retardance at 24°C at 0 V. Thus, for reproducible and accurate measurements, the LCVRs must be operated in an environment with a stable temperature.

Figure 2 shows a schematic drawing of a typical LCVR Mueller matrix polarimeter system design, based on a broadband white light source, a spectrograph and four temperature controlled LCVRs. The polarizer and the two crystals on the left side of the sample makes up the PSG, while the components in the opposite order on the right side of the sample makes up the PSA (i.e. a Stokes polarimeter).

The system design was done using a genetic algorithm based on the *Pyevolve* library [33]. The algorithm tries to maximize a fitness function, which was defined as

*e*is the error function defined as

*N*is the total number of wavelengths and

_{λ}*κ*(

*λ*) is the generalized condition number of

_{n}**A**or

**W**for a given wavelength

*λ*. This fitness function is similar to the one previously defined in [25] and incorporates experimentally measured optical properties of the components using the Mueller formalism to calculate the generalized condition number of

_{n}**A**or

**W**. As for the previous fitness function, it punishes inverse condition numbers far away from the theoretical maximum inverse condition number ( $1/\sqrt{3}$), by taking the difference to the fourth power. Finally, it is noted that since the genetic algorithm is based on bit strings, the conversion from bits to numbers will not always yield a voltage, or wavelength where the LCVRs were experimentally characterized, in these cases the closest measured retardance value was used.

The genetic optimization was performed using the settings given in Table 1. 8 bits was considered sufficient to represent the voltage and the rotation angle, i.e. a step size of 0.04 V and 0.7°. The wavelength range was selected to be 900 – 1700 nm, the range of a typical indium gallium arsenide (InGaAs) near infrared detector. In particular, we used the *NirQuest512* spectrograph from *Ocean Optics*. The number of generations, population size and mutation rate were found by trial and error, by encouraging diversity and avoiding formation of large groups of individuals focused around one minimum. Elitism (copying of the best individual from one generation to the next), two point crossover and tournament were also used.

## 4. Results and discussion

Several Mueller matrix polarimeters were optimized in order to cover the near infrared spectral range. By using two LCVRs in both the PSG and the PSA, one may in principle generate a large number of states. However, a system that approaches the theoretically optimal inverse condition number
$1/\sqrt{3}$ will need 16 states for every measured wavelength, as long as a retardance of *π*/2 is available. For a large number of wavelengths (typically > 500), such a system results in an unreasonable high total measurement time. Therefore, several Mueller matrix polarimeters were designed and evaluated with only a limited number of states in the PSG and the PSA, in order to keep the measurement time low. Three Mueller matrix polarimeter designs were optimized and evaluated. All designs used an equal number of states in the PSG and the PSA. The first design used two states in each of the LCVRs, totaling 4 (2 × 2) states for the PSA or the PSG, and 16 (4^{2}) states for the complete system. The second design had two states in the first LCVR and three in the second LCVR, totaling 6 (2 × 3) states for the PSA/PSG and 36 (6^{2}) in the complete system. Similarly the last design had two states in the first and four in the second LCVR, resulting in a total of 8 (2 × 4) states for the PSA/PSG, and 64 (8^{2}) for the complete polarimeter. For simplicity, these three designs will from now on be denoted as 2 × 2, 2 × 3 and 2 × 4. The resulting designs are summarized in Table 2, whereas the resulting inverse condition numbers are shown in Fig. 3. It is evident that by going from a 2 × 2 to a 2 × 3 design the condition number is increased on the two edges of the spectrum. By moving to 2 × 4 states, the condition number increases over the whole spectrum. It is clear that there will be a trade-off between the measurement time and the gain in the increased condition number, and hence the noise reduction at the edges of the spectrum. As a compromise, we found it practical to use the 2 × 3 design for the experimental realization of the Mueller matrix polarimeter.

In comparison to previously reported ferroelectric liquid crystal (FLC) designs [25] obtained using a similar genetic algorithm, the 2 × 3 LCVR design has a much narrower wavelength range and a slightly lower inverse condition number. This is as expected, since the design using three FLCs has three compensating wave-plates in addition to the liquid crystals, giving extra degrees of freedom. Specifically, these degrees of freedom arise from the fact that both the thickness (birefringence) and the azimuthal orientation of each component can be selected, and as a result one would expect an overall higher inverse generalized condition number. However, more optical components reduce the transmitted intensity, which in some cases results in a greatly reduced signal to noise ratio. A high signal to noise ratio is particularly important for applications with a limited flux, for example a large field of view imaging or space applications.

The 2 × 3 design was mounted in custom made temperature controlled holders, one for the PSG and one for the PSA. These were then separately mounted in the beam-path of the RC2, and by switching through all the 2 × 3 states of the LCVRs, the Stokes vectors of the **W** and **A** matrix was determined in the range 350 – 1680 nm, by selecting the first column of the measured Mueller matrix. The resulting inverse generalized condition number is shown in Fig. 3(b) (in green stippled lines), together with the simulated inverse generalized condition number resulting from the design obtained by the genetic algorithm (solid line). As seen, the correspondence between the experimental and simulated inverse generalized condition numbers is excellent. This demonstrates the power of such a system design and implementation, utilizing genetic algorithms and re-characterization of the optical components after arrival. The PSG and the PSA were then mounted in the transmission geometry shown in Fig. 2, making up the complete LCVR based Mueller matrix polarimeter. **A** and **W** were found using the ECM, as discussed in section 2. The generalized condition number of the calibrated **W** matrix is plotted in Fig. 3(b). It is observed from the figure that the general spectral features in the optimized condition number are reproduced in the experimental version, although it suffers from small offsets in some parts of the spectrum. The latter offsets are possible due to that the components of the PSA/PSG were slightly realigned between the measurement using the commercial Mueller matrix ellipsometer compared to the final implementation of the LCVR Mueller matrix polarimeter. On the other hand, it shows that the modified ECM automatically compensates for alignment errors during assembly, and the final system calibrate correctly with only minor changes in the propagation of noise.

An important measure of the Mueller matrix polarimeter accuracy is the measurement of air, whose Mueller matrix is simply the 4 × 4 identity matrix. Figure 4 shows the spectroscopic Mueller matrix measurement of air (normalized to the *m*_{11} element). The deviation from the identity matrix is small, since the error is less than 0.1% over most of the spectrum, and is never more than 0.17%.

It is recalled that the wide band LVCR design uses few components and thereby has small reflection losses from the optical interfaces. Hence, the designed Mueller matrix polarimeter should also be well suited for a fast imaging setup with low loss of light, compared to a FLC based setup, while insuring small measurement errors across the spectral range of operation, even suitable for hyperspectral imaging. The reduction in number of components also enables a more compact design. Another advantage of the setup will be the possibility to redesign the spectral characteristics without having to rotate the components, since the voltage of the LCVRs is software controlled. By using the genetic algorithm, it is possible to fix the rotation angles and only optimize on the LVCR voltage in order to fulfill other system specifications. Finally, one may envisage a system that can improve itself by self-characterization and intelligent design by implementing an in-line version of the genetic algorithm.

## 5. Conclusion

Genetic algorithms have been used to design multichannel Mueller matrix polarimeters based on liquid crystal variable retarders for the near infrared with 2 × 2, 2 × 3 or 2 × 4 voltage states for the polarization state generator and analyzer. The design using 2 × 3 states was experimentally realized and calibrated, based on its advantageous trade-off between total measurement time and overall performance with respect to error propagation (optimized inverse condition number). The resulting Mueller matrix polarimeter demonstrated here, shows good performance in the design wavelength range (900–1700 nm) with less than 0.1% error on the Mueller matrix of air, making it suitable in for example hyperspectral or multispectral imaging applications.

## Acknowledgment

L.M.S.A acknowledges support from The Norwegian Research Center for Solar Cell Technology (project num. 193829).

## References and links

**1. **P. G. Ellingsen, M. B. Lilledahl, L. M. S. Aas, C. d. L. Davies, and M. Kildemo, “Quantitative characterization of articular cartilage using Mueller matrix imaging and multiphoton microscopy,” J. Biomed. Opt. **16**, 116002 (2011) [CrossRef] [PubMed] .

**2. **M. H. Smith, P. D. Burke, A. Lompado, E. A. Tanner, and L. W. Hillman, “Mueller matrix imaging polarimetry in dermatology,” Proc. SPIE **3911**, 210–216 (2000) [CrossRef] .

**3. **R. N. Weinreb, S. Shakiba, and L. Zangwill, “Scanning laser polarimetry to measure the nerve fiber layer of normal and glaucomatous eyes,” Am. J. Ophthalmol. **119**, 627–636 (1995) [PubMed] .

**4. **J. D. Howe, M. A. Miller, R. V. Blumer, T. E. Petty, M. A. Stevens, D. M. Teale, and M. H. Smith, “Polarization sensing for target acquisition and mine detection,” Proc. SPIE **4133**, 202–213 (2000) [CrossRef] .

**5. **A. Alvarez-Herrero, V. Martínez-Pillet, J. del Toro Iniesta, and V. Domingo, “The IMaX polarimeter for the solar telescope SUNRISE of the NASA long duration balloon program,” in API’09, (2010), pp. 05002.

**6. **R. Azzam and N. Bashara, *Ellipsometry and Polarized light* (North-Holland, 1977).

**7. **H. Fujiwara, *Spectroscopic Ellipsometry: Principles and Applications* (John Wiley & Sons, Chichester, England; Hoboken, NJ, 2007) [CrossRef] .

**8. **H. Tompkins and E. A. Irene, *Handbook of Ellipsometry* (William Andrew, 2005) [CrossRef] .

**9. **M. Foldyna, A. D. Martino, R. Ossikovski, E. Garcia-Caurel, and C. Licitra, “Characterization of grating structures by Mueller polarimetry in presence of strong depolarization due to finite spot size,” Opt. Commun. **282**, 735–741 (2009) [CrossRef] .

**10. **D. Schmidt, A. C. Kjerstad, T. Hofmann, R. Skomski, E. Schubert, and M. Schubert, “Optical, structural, and magnetic properties of cobalt nanostructure thin films,” J. Appl. Phys. **105**, 113508 (2009) [CrossRef] .

**11. **L. M. S. Aas, M. Kildemo, Y. Cohin, and E. Søndergård, “Determination of small tilt angles of short gasb nanopillars using uv-visible mueller matrix ellipsometry,” Thin Solid Films (2012) [CrossRef] .

**12. **I. S. Nerbø, S. Le Roy, M. Foldyna, M. Kildemo, and E. Søndergård, “Characterization of inclined GaSb nanopillars by Mueller matrix ellipsometry,” J. Appl. Phys. **108**, 014307 (2010) [CrossRef] .

**13. **T. Oates, H. Wormeester, and H. Arwin, “Characterization of plasmonic effects in thin films and metamaterials using spectroscopic ellipsometry,” Prog. Surf. Sci. **86**, 328–376 (2011) [CrossRef] .

**14. **B. Gallas, K. Robbie, R. Abdeddaïm, G. Guida, J. Yang, J. Rivory, and a. Priou, “Silver square nanospirals mimic optical properties of U-shaped metamaterials.” Opt. Express **18**, 16335–16344 (2010) [CrossRef] [PubMed] .

**15. **T. A. Germer, “Polarized light scattering by microroughness and small defects in dielectric layers.” J. Opt. Soc. Am. A **18**, 1279–1288 (2001) [CrossRef] .

**16. **T. Germer, “Measurement of roughness of two interfaces of a dielectric film by scattering ellipsometry,” Phys. Rev. Lett. **85**, 349–352 (2000) [CrossRef] [PubMed] .

**17. **Ø. Svensen, M. Kildemo, J. Maria, J. J. Stamnes, and O. Frette, “Mueller matrix measurements and modeling pertaining to Spectralon white reflectance standards.” Opt. Express **20**, 15045–15053 (2012) [CrossRef] [PubMed] .

**18. **J. M. Bennet, R. Chipman, and R. M. A. Azzam, “Polarized light,” in *Handbook of Optics*, M. Bass and V. Mahajan, eds. (McGraw-Hill, Inc., 2010), pp. 12.3–16.21.

**19. **F. Stabo-Eeg, M. Kildemo, I. Nerbø, and M. Lindgren, “Well-conditioned multiple laser Mueller matrix ellipsometer,” Opt. Eng. **47**, 073604 (2008) [CrossRef] .

**20. **E. Compain and B. Drevillon, “Complete high-frequency measurement of Mueller matrices based on a new coupled-phase modulator,” Rev. Sci. Instrum. **68**, 2671 (1997) [CrossRef] .

**21. **O. Arteaga, J. Freudenthal, B. Wang, and B. Kahr, “Mueller matrix polarimetry with four photoelastic modulators: theory and calibration.” Appl. Optics **51**, 6805–6817 (2012) [CrossRef] .

**22. **G. E. Jellison and F. a. Modine, “Two-channel polarization modulation ellipsometer.” Appl. Optics **29**, 959–974 (1990) [CrossRef] .

**23. **E. Garcia-Caurel, A. D. Martino, and B. Drevillon, “Spectroscopic Mueller polarimeter based on liquid crystal devices,” Thin Solid Films **455**, 120–123 (2004) [CrossRef] .

**24. **L. Aas, P. Ellingsen, and M. Kildemo, “Near infra-red Mueller matrix imaging system and application to retardance imaging of strain,” Thin Solid Films **519**, 2737–2741 (2010) [CrossRef] .

**25. **P. Letnes, I. Nerbø, L. Aas, P. Ellingsen, and M. Kildemo, “Fast and optimal broad-band Stokes/Mueller polarimeter design by the use of a genetic algorithm,” Opt. Express **18**, 23095–23103 (2010) [CrossRef] [PubMed] .

**26. **J. H. Holland, “Genetic algorithms,” Sci. Am. **267**, 44–50 (1992) [CrossRef] .

**27. **D. Floreano and C. Mattiussi, *Bio-Inspired Artificial Intelligence: Theories, Methods, and Technologies* (The MIT Press, 2008).

**28. **E. Compain, S. Poirier, and B. Drevillon, “General and self-consistent method for the calibration of polarization modulators, polarimeters, and mueller-matrix ellipsometers.” Appl. Optics **38**, 3490–3502 (1999) [CrossRef] .

**29. **S. B. Hatit, M. Foldyna, A. De Martino, and B. Drévillon, “Angle-resolved Mueller polarimeter using a microscope objective,” Phys. Stat. Sol. (a) **205**, 743–747 (2008) [CrossRef] .

**30. **A. Ben-Israel and T. N. E. Greville, *Generalized Inverses: Theory and Applications* (Springer-Verlag, 2003).

**31. **R. Hagen, S. Roch, and B. Silbermann, *C* Algebras Numerical Analysis* (Marcel Dekker, 2001).

**32. **L. Aas, P. Ellingsen, M. Kildemo, and M. Lindgren, “Dynamic Response of a fast near infra-red Mueller matrix ellipsometer,” J. Mod. Opt. **57**, 1603–1610 (2010) [CrossRef] .

**33. **C. S. Perone, “Pyevolve,” http://pyevolve.sourceforge.net/.