15 #ifndef BORNAGAIN_CORE_MULTILAYER_LAYERROUGHNESS_H 
   16 #define BORNAGAIN_CORE_MULTILAYER_LAYERROUGHNESS_H 
   31     LayerRoughness(
double sigma, 
double hurstParameter, 
double lateralCorrLength);
 
   36         return new LayerRoughness(m_sigma, m_hurstParameter, m_lateralCorrLength);
 
   46     void setSigma(
double sigma) { m_sigma = sigma; }
 
   58         m_lateralCorrLength = lateralCorrLength;
 
   65     double m_hurstParameter; 
 
   66     double m_lateralCorrLength; 
 
Defines interface class ISample.
 
Visitor interface to visit ISample objects.
 
Pure virtual base class for sample components and properties related to scattering.
 
A roughness of interface between two layers.
 
void setSigma(double sigma)
Sets rms of roughness.
 
double getSigma() const
Returns rms of roughness.
 
double getSpectralFun(const kvector_t kvec) const
Returns power spectral density of the surface roughness.
 
double getLatteralCorrLength() const
Returns lateral correlation length.
 
double getHurstParameter() const
Returns hurst parameter.
 
double getCorrFun(const kvector_t k) const
Correlation function of the roughness profile.
 
LayerRoughness * clone() const
Returns a clone of this ISample object.
 
virtual void accept(INodeVisitor *visitor) const
Calls the INodeVisitor's visit method.
 
void setLatteralCorrLength(double lateralCorrLength)
Sets lateral correlation length.
 
void setHurstParameter(double hurstParameter)
Sets hurst parameter. It describes how jagged the surface is.