BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Types | |
using | coeffs_t = std::vector< std::unique_ptr< const ILayerRTCoefficients > > |
Public Member Functions | |
virtual ISpecularStrategy::coeffs_t | Execute (const std::vector< Slice > &slices, const kvector_t &k) const override |
virtual ISpecularStrategy::coeffs_t | Execute (const std::vector< Slice > &slices, const std::vector< complex_t > &kz) const override |
Private Member Functions | |
virtual std::pair< complex_t, complex_t > | transition (complex_t kzi, complex_t kzi1, double sigma) const =0 |
std::vector< ScalarRTCoefficients > | computeTR (const std::vector< Slice > &slices, const std::vector< complex_t > &kz) const |
void | calculateUpFromLayer (std::vector< ScalarRTCoefficients > &coeff, const std::vector< Slice > &slices, const std::vector< complex_t > &kz) const |
Static Private Member Functions | |
static void | setZeroBelow (std::vector< ScalarRTCoefficients > &coeff, size_t current_layer) |
Implements the scalar Fresnel computation.
Implements method 'execute' to compute refraction angles and transmission/reflection coefficients for coherent wave propagation in a multilayer.
Inherited by SpecularScalarNCStrategy, SpecularScalarTanhStrategy
Definition at line 33 of file SpecularScalarStrategy.h.
|
inherited |
Definition at line 40 of file ISpecularStrategy.h.
|
overridevirtual |
Computes refraction angles and transmission/reflection coefficients for given coherent wave propagation in a multilayer.
Implements ISpecularStrategy.
Definition at line 29 of file SpecularScalarStrategy.cpp.
References KzComputation::computeReducedKz().
|
overridevirtual |
Implements ISpecularStrategy.
Definition at line 36 of file SpecularScalarStrategy.cpp.
References computeTR().
|
privatepure virtual |
Implemented in SpecularScalarTanhStrategy, and SpecularScalarNCStrategy.
Referenced by calculateUpFromLayer().
|
private |
Definition at line 50 of file SpecularScalarStrategy.cpp.
References calculateUpFromLayer().
Referenced by Execute().
|
staticprivate |
Definition at line 74 of file SpecularScalarStrategy.cpp.
|
private |
Definition at line 83 of file SpecularScalarStrategy.cpp.
References exp_I(), anonymous_namespace{SpecularScalarStrategy.cpp}::GetBottomRoughness(), and transition().
Referenced by computeTR().