15 #ifndef BORNAGAIN_CORE_MULTILAYER_ISPECULARSTRATEGY_H
16 #define BORNAGAIN_CORE_MULTILAYER_ISPECULARSTRATEGY_H
40 using coeffs_t = std::vector<std::unique_ptr<const ILayerRTCoefficients>>;
42 virtual coeffs_t Execute(
const std::vector<Slice>& slices,
const kvector_t& k)
const = 0;
44 virtual coeffs_t Execute(
const std::vector<Slice>& slices,
45 const std::vector<complex_t>& kz)
const = 0;
Defines complex_t, and a few elementary functions.
Defines basic vectors in R^3 and C^3.
Interface to access reflection/transmission coefficients.
Interface for the Fresnel computations, both in the scalar and magnetic case.
Data structure containing the data of a single slice, for calculating the Fresnel coefficients.