BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
Log-normal distribution.
Definition at line 172 of file RangedDistributions.h.
Public Member Functions | |
RangedDistributionLogNormal () | |
RangedDistributionLogNormal (size_t n_samples, double sigma_factor, const RealLimits &limits=RealLimits::limitless()) | |
RangedDistributionLogNormal (size_t n_samples, double sigma_factor, double min, double max) | |
Initializes Ranged distribution with given number of samples, sigma factor (range in standard deviations to take into account during sample generation) and limits (either RealLimits object or just min and max limits). By default n_samples = 5, sigma_factor = 2.0, while the limits are (-inf, +inf). More... | |
~RangedDistributionLogNormal () override=default | |
RangedDistributionLogNormal * | clone () const override |
IDistribution1D * | distribution (double mean, double stddev) const |
Public interface function to underlying IDistribution1D object. More... | |
std::vector< std::vector< ParameterSample > > | generateSamples (const std::vector< double > &mean, const std::vector< double > &stddev) const |
Generates list of sampled values with their weights from given means and standard deviations. More... | |
std::vector< ParameterSample > | generateSamples (double mean, double stddev) const |
RealLimits | limits () const |
Returns current limits of the distribution. More... | |
std::string | name () const override |
Returns distribution name for python-formatted text. More... | |
size_t | nSamples () const |
Returns number of samples to generate. More... | |
void | setLimits (const RealLimits &limits) |
double | sigmaFactor () const |
Returns sigma factor to use during sampling. More... | |
virtual void | transferToCPP () |
Used for Python overriding of clone (see swig/tweaks.py) More... | |
Protected Member Functions | |
IDistribution1D * | distribution_impl (double mean, double stddev) const override |
Returns underlying IDistribution1D object. More... | |
Private Member Functions | |
void | checkInitialization () |
Private Attributes | |
RealLimits | m_limits |
size_t | m_n_samples |
double | m_sigma_factor |
RangedDistributionLogNormal::RangedDistributionLogNormal | ( | ) |
Definition at line 235 of file RangedDistributions.cpp.
RangedDistributionLogNormal::RangedDistributionLogNormal | ( | size_t | n_samples, |
double | sigma_factor, | ||
const RealLimits & | limits = RealLimits::limitless() |
||
) |
Definition at line 240 of file RangedDistributions.cpp.
RangedDistributionLogNormal::RangedDistributionLogNormal | ( | size_t | n_samples, |
double | sigma_factor, | ||
double | min, | ||
double | max | ||
) |
Initializes Ranged distribution with given number of samples, sigma factor (range in standard deviations to take into account during sample generation) and limits (either RealLimits object or just min and max limits). By default n_samples = 5, sigma_factor = 2.0, while the limits are (-inf, +inf).
Definition at line 246 of file RangedDistributions.cpp.
|
overridedefault |
|
privateinherited |
Definition at line 103 of file RangedDistributions.cpp.
References RealLimits::hasLowerAndUpperLimits(), RealLimits::lowerLimit(), IRangedDistribution::m_limits, IRangedDistribution::m_n_samples, IRangedDistribution::m_sigma_factor, and RealLimits::upperLimit().
Referenced by IRangedDistribution::IRangedDistribution().
|
overridevirtual |
Implements IRangedDistribution.
Definition at line 252 of file RangedDistributions.cpp.
|
inherited |
Public interface function to underlying IDistribution1D object.
Definition at line 95 of file RangedDistributions.cpp.
References IRangedDistribution::distribution_impl().
Referenced by IRangedDistribution::generateSamples().
|
overrideprotectedvirtual |
Returns underlying IDistribution1D object.
Implements IRangedDistribution.
Definition at line 262 of file RangedDistributions.cpp.
|
inherited |
Generates list of sampled values with their weights from given means and standard deviations.
Definition at line 79 of file RangedDistributions.cpp.
References IRangedDistribution::generateSamples().
|
inherited |
Definition at line 65 of file RangedDistributions.cpp.
References IRangedDistribution::distribution(), IRangedDistribution::m_limits, IRangedDistribution::m_n_samples, IRangedDistribution::m_sigma_factor, and ParameterSample::weight.
Referenced by IRangedDistribution::generateSamples().
|
inlineinherited |
Returns current limits of the distribution.
Definition at line 63 of file RangedDistributions.h.
References IRangedDistribution::m_limits.
Referenced by Py::Fmt2::printRangedDistribution(), and IRangedDistribution::setLimits().
|
overridevirtual |
Returns distribution name for python-formatted text.
Implements IRangedDistribution.
Definition at line 257 of file RangedDistributions.cpp.
|
inlineinherited |
Returns number of samples to generate.
Definition at line 67 of file RangedDistributions.h.
References IRangedDistribution::m_n_samples.
Referenced by Py::Fmt2::printRangedDistribution().
|
inlineinherited |
Definition at line 71 of file RangedDistributions.h.
References IRangedDistribution::limits(), and IRangedDistribution::m_limits.
|
inlineinherited |
Returns sigma factor to use during sampling.
Definition at line 65 of file RangedDistributions.h.
References IRangedDistribution::m_sigma_factor.
Referenced by Py::Fmt2::printRangedDistribution().
|
inlinevirtualinherited |
Used for Python overriding of clone (see swig/tweaks.py)
Definition at line 32 of file ICloneable.h.
|
privateinherited |
Definition at line 85 of file RangedDistributions.h.
Referenced by IRangedDistribution::checkInitialization(), IRangedDistribution::generateSamples(), IRangedDistribution::limits(), and IRangedDistribution::setLimits().
|
privateinherited |
Definition at line 83 of file RangedDistributions.h.
Referenced by IRangedDistribution::checkInitialization(), IRangedDistribution::generateSamples(), and IRangedDistribution::nSamples().
|
privateinherited |
Definition at line 84 of file RangedDistributions.h.
Referenced by IRangedDistribution::checkInitialization(), IRangedDistribution::generateSamples(), and IRangedDistribution::sigmaFactor().