18 #include <Eigen/Dense> 
   25 std::pair<complex_t, complex_t>
 
   30         const double sigeff = 
pi2_15 * sigma;
 
   34     const complex_t inv_roughness = 1.0 / roughness;
 
   35     const complex_t kz_ratio = kzi1 / kzi * roughness;
 
   37     const complex_t a00 = 0.5 * (inv_roughness + kz_ratio);
 
   38     const complex_t a01 = 0.5 * (inv_roughness - kz_ratio);
 
std::complex< double > complex_t
 
Defines M_PI and some more mathematical constants.
 
Defines namespace MathFunctions.
 
Defines class SpecularScalarTanhStrategy.
 
virtual std::pair< complex_t, complex_t > transition(complex_t kzi, complex_t kzi1, double sigma) const override
Roughness is modelled by tanh profile [see e.g. Phys. Rev. B, vol. 47 (8), p. 4385 (1993)].
 
complex_t tanhc(const complex_t z)
Complex tanhc function: .