15 #ifndef BORNAGAIN_CORE_COMPUTATION_DEPTHPROBEELEMENT_H
16 #define BORNAGAIN_CORE_COMPUTATION_DEPTHPROBEELEMENT_H
42 std::is_assignable<std::valarray<double>,
typename std::decay<T>::type>::value,
43 "Error in DepthProbeElement::setIntensities: wrong type of input data.");
Defines basic vectors in R^3 and C^3.
const IAxis * m_z_positions
positions (lower z corresponds to a greater depth)
void swapContent(DepthProbeElement &other)
double m_alpha_i
the wavelength and the incident angle of the beam
void setIntensities(T &&intensities)
void setCalculationFlag(bool calculation_flag)
Set calculation flag (if it's false, zero intensity is assigned to the element)
const IAxis * getZPositions() const
bool isCalculated() const
DepthProbeElement(double wavelength, double alpha_i, const IAxis *z_positions)
std::valarray< double > m_intensities
simulated intensity for the set of z positions
double getWavelength() const
DepthProbeElement & operator=(const DepthProbeElement &other)
void setZPositions(const IAxis *z_positions)
const std::valarray< double > & getIntensities() const
Interface for one-dimensional axes.
const double wavelength(0.154)