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

Description

Scan type with z-components of scattering vector as coordinate values. Wavelength and incident angles are not accessible separately.

Inheritance diagram for QzScan:

Public Member Functions

 QzScan (const IAxis &qs_nm)
 
 QzScan (int nbins, double qz_min, double qz_max)
 Sets q-defined specular scan. Accepts either numpy array of q-values sorted in ascending order or an IAxis object with q-values. Alternatively an axis can be defined in-place, then the first passed parameter is the number of bins, second - minimum on-axis q-value, third - maximum on-axis q_value. More...
 
 QzScan (std::vector< double > qs_nm)
 Accepts qz-value vector (in inverse nm) More...
 
 ~QzScan () override
 
QzScanclone () const override
 
double offset () const
 
const ScanResolutionresolution () const
 
void setAbsoluteQResolution (const IRangedDistribution &distr, const std::vector< double > &std_dev)
 Sets qz resolution values via IRangedDistribution and values of standard deviations. std_dev can be either single-valued or a numpy array. In the latter case the length of the array should coinside with the length of the qz-axis. More...
 
void setAbsoluteQResolution (const IRangedDistribution &distr, double std_dev)
 
void setOffset (double offset)
 
void setQResolution (const ScanResolution &resolution)
 Sets q resolution values via ScanResolution object. More...
 
void setRelativeQResolution (const IRangedDistribution &distr, const std::vector< double > &rel_dev)
 Sets qz resolution values via IRangedDistribution and values of relative deviations (that is, rel_dev equals standard deviation divided by the mean value). rel_dev can be either single-valued or a numpy array. In the latter case the length of the array should coinside with the length of the qz-axis. More...
 
void setRelativeQResolution (const IRangedDistribution &distr, double rel_dev)
 
double wavelength () const override
 

Constructor & Destructor Documentation

◆ QzScan() [1/3]

QzScan::QzScan ( std::vector< double >  qs_nm)

Accepts qz-value vector (in inverse nm)

◆ QzScan() [2/3]

QzScan::QzScan ( const IAxis &  qs_nm)

◆ QzScan() [3/3]

QzScan::QzScan ( int  nbins,
double  qz_min,
double  qz_max 
)

Sets q-defined specular scan. Accepts either numpy array of q-values sorted in ascending order or an IAxis object with q-values. Alternatively an axis can be defined in-place, then the first passed parameter is the number of bins, second - minimum on-axis q-value, third - maximum on-axis q_value.

◆ ~QzScan()

QzScan::~QzScan ( )
override

Member Function Documentation

◆ clone()

QzScan* QzScan::clone ( ) const
override

◆ offset()

double QzScan::offset ( ) const

◆ resolution()

const ScanResolution* QzScan::resolution ( ) const

◆ setAbsoluteQResolution() [1/2]

void QzScan::setAbsoluteQResolution ( const IRangedDistribution &  distr,
const std::vector< double > &  std_dev 
)

Sets qz resolution values via IRangedDistribution and values of standard deviations. std_dev can be either single-valued or a numpy array. In the latter case the length of the array should coinside with the length of the qz-axis.

◆ setAbsoluteQResolution() [2/2]

void QzScan::setAbsoluteQResolution ( const IRangedDistribution &  distr,
double  std_dev 
)

◆ setOffset()

void QzScan::setOffset ( double  offset)

◆ setQResolution()

void QzScan::setQResolution ( const ScanResolution resolution)

Sets q resolution values via ScanResolution object.

◆ setRelativeQResolution() [1/2]

void QzScan::setRelativeQResolution ( const IRangedDistribution &  distr,
const std::vector< double > &  rel_dev 
)

Sets qz resolution values via IRangedDistribution and values of relative deviations (that is, rel_dev equals standard deviation divided by the mean value). rel_dev can be either single-valued or a numpy array. In the latter case the length of the array should coinside with the length of the qz-axis.

◆ setRelativeQResolution() [2/2]

void QzScan::setRelativeQResolution ( const IRangedDistribution &  distr,
double  rel_dev 
)

◆ wavelength()

double QzScan::wavelength ( ) const
override