15 #ifndef BORNAGAIN_CORE_RT_MATRIXRTCOEFFICIENTS_V3_H
16 #define BORNAGAIN_CORE_RT_MATRIXRTCOEFFICIENTS_V3_H
31 friend class SpecularMagneticNewNCTestingStrategy;
33 friend class SpecularMagnetic_v3ConsistencyTest;
34 friend class SpecularMagnetic_v3ConsistencyTest_ScalarMagneticAmplitudes_Test;
35 friend class SpecularMagnetic_v3ConsistencyTest_AmplitudesBackwardsBackwards_Test;
36 template <
class sampleClass>
friend class TestSimulation;
47 Eigen::Vector2cd
T1plus()
const override;
48 Eigen::Vector2cd R1plus()
const override;
49 Eigen::Vector2cd T2plus()
const override;
50 Eigen::Vector2cd R2plus()
const override;
51 Eigen::Vector2cd T1min()
const override;
52 Eigen::Vector2cd R1min()
const override;
53 Eigen::Vector2cd T2min()
const override;
54 Eigen::Vector2cd R2min()
const override;
56 Eigen::Vector2cd
getKz()
const override;
57 double magneticSLD()
const {
return m_magnetic_SLD; }
59 Eigen::Matrix2cd computeP()
const;
60 Eigen::Matrix2cd computeInverseP()
const;
62 Eigen::Matrix2cd computeDeltaMatrix(
double thickness);
64 Eigen::Matrix2cd getReflectionMatrix()
const override {
return m_R; };
68 Eigen::Vector2cd m_lambda;
70 double m_magnetic_SLD;
76 Eigen::Matrix2cd TransformationMatrix(Eigen::Vector2d selection)
const;
77 Eigen::Matrix2cd T1Matrix()
const;
78 Eigen::Matrix2cd T2Matrix()
const;
80 Eigen::Matrix2cd pMatrixHelper(
double sign)
const;
Defines and implements class ILayerRTCoefficients.
Defines basic vectors in R^3 and C^3.
Interface to access reflection/transmission coefficients.
Specular reflection and transmission coefficients in a layer in case of magnetic interactions between...
Eigen::Vector2cd T1plus() const override
The following functions return the transmitted and reflected amplitudes for different incoming beam p...
Eigen::Vector2cd getKz() const override
Returns z-part of the two wavevector eigenmodes.
Implements the magnetic Fresnel computation with Nevot-Croce roughness.
Implements the magnetic Fresnel computation with Nevot-Croce roughness.
Implements the magnetic Fresnel computation with the analytical Tanh roughness.