BornAgain  1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
LayerRoughness Class Reference

Description

A roughness of interface between two layers.

Based on the article "X-ray reflection and transmission by rough surfaces" by D. K. G. de Boer, Physical Review B 51, 5297 (1995)

Inheritance diagram for LayerRoughness:

Public Member Functions

 LayerRoughness ()
 
 LayerRoughness (double sigma, double hurstParameter=0, double lateralCorrLength=0)
 
std::string className () const final
 
LayerRoughnessclone () const override
 
double corrFunction (R3 k) const
 
double hurst () const
 Returns hurst parameter. More...
 
double lateralCorrLength () const
 Returns lateral correlation length. More...
 
std::vector< ParaMeta > parDefs () const final
 
void setHurstParameter (double hurstParameter)
 Sets hurst parameter. It describes how jagged the surface is. More...
 
void setLatteralCorrLength (double lateralCorrLength)
 Sets lateral correlation length. More...
 
void setSigma (double sigma)
 Sets rms of roughness. More...
 
double sigma () const
 Returns rms of roughness. More...
 
double spectralFunction (R3 kvec) const
 Returns power spectral density of the surface roughness. More...
 

Constructor & Destructor Documentation

◆ LayerRoughness() [1/2]

LayerRoughness::LayerRoughness ( double  sigma,
double  hurstParameter = 0,
double  lateralCorrLength = 0 
)

◆ LayerRoughness() [2/2]

LayerRoughness::LayerRoughness ( )

Member Function Documentation

◆ className()

std::string LayerRoughness::className ( ) const
final

◆ clone()

LayerRoughness* LayerRoughness::clone ( ) const
override

◆ corrFunction()

double LayerRoughness::corrFunction ( R3  k) const

◆ hurst()

double LayerRoughness::hurst ( ) const

Returns hurst parameter.

◆ lateralCorrLength()

double LayerRoughness::lateralCorrLength ( ) const

Returns lateral correlation length.

◆ parDefs()

std::vector<ParaMeta> LayerRoughness::parDefs ( ) const
final

◆ setHurstParameter()

void LayerRoughness::setHurstParameter ( double  hurstParameter)

Sets hurst parameter. It describes how jagged the surface is.

◆ setLatteralCorrLength()

void LayerRoughness::setLatteralCorrLength ( double  lateralCorrLength)

Sets lateral correlation length.

◆ setSigma()

void LayerRoughness::setSigma ( double  sigma)

Sets rms of roughness.

◆ sigma()

double LayerRoughness::sigma ( ) const

Returns rms of roughness.

◆ spectralFunction()

double LayerRoughness::spectralFunction ( R3  kvec) const

Returns power spectral density of the surface roughness.