20 GISASSpecularComputation::GISASSpecularComputation(
const IFresnelMap* p_fresnel_map)
21 : mp_fresnel_map{p_fresnel_map}
30 double sin_alpha_i = std::abs(std::sin(elem.getAlphaI()));
31 if (sin_alpha_i == 0.0)
33 const double solid_angle = elem.getSolidAngle();
34 if (solid_angle <= 0.0)
36 const double intensity = std::norm(R) * sin_alpha_i / solid_angle;
37 elem.setIntensity(intensity);
Defines class GISASSpecularComputation.
Defines class IFresnelMap.
Defines and implements class ILayerRTCoefficients.
Defines class SimulationElement.
Holds the necessary information to calculate the radiation wavefunction in every layer for different ...
std::unique_ptr< const ILayerRTCoefficients > getInCoefficients(const T &sim_element, size_t layer_index) const
Retrieves the amplitude coefficients for an incoming wavevector.
Data stucture containing both input and output of a single detector cell.
bool isSpecular() const
Tells if simulation element corresponds to a specular peak.