Skip to content

scram::mef::LognormalDeviate

Log-normal distribution.

#include <random_deviate.h>

Inherits from scram::mef::RandomDeviate, scram::mef::Expression, boost::noncopyable

Public Functions

Name
LognormalDeviate(Expression * mean, Expression * ef, Expression * level)<br>The log-normal deviate parametrization with its expected value and error factor of certain confidence level.
LognormalDeviate(Expression * mu, Expression * sigma)<br>The parametrization with underlying normal distribution parameters.
virtual voidValidate() const override<br>Validates the expression.
virtual doublevalue() override
virtual Intervalinterval() override<br>The high is 99.9 percentile estimate.

Additional inherited members

Public Functions inherited from scram::mef::RandomDeviate

Name
virtual boolIsDeviate() override<br>Determines if the value of the expression contains deviate expressions.
Expression(std::vector< Expression * > args ={})<br>Constructor for use by derived classes to register their arguments.
voidseed(unsigned seed)<br>Sets the seed of the underlying random number generator.

Protected Functions inherited from scram::mef::RandomDeviate

Name
std::mt19937 &rng()

Public Functions inherited from scram::mef::Expression

Name
Expression(std::vector< Expression * > args ={})<br>Constructor for use by derived classes to register their arguments.
virtual~Expression() =default
const std::vector< Expression * > &args() const
virtual boolIsDeviate()<br>Determines if the value of the expression contains deviate expressions.
doubleSample()
voidReset()<br>This routine resets the sampling to get new values.

Protected Functions inherited from scram::mef::Expression

Name
voidAddArg(Expression * arg)<br>Registers an additional argument expression.

Public Functions Documentation

function LognormalDeviate

cpp
LognormalDeviate(
    Expression * mean,
    Expression * ef,
    Expression * level
)

The log-normal deviate parametrization with its expected value and error factor of certain confidence level.

Parameters:

  • mean The mean of the log-normal distribution not the mean of underlying normal distribution, which is parameter mu. mu is the location parameter, sigma is the scale factor. E(x) = exp(mu + sigma^2 / 2)
  • ef The error factor of the log-normal distribution. EF = exp(z_alpha * sigma)
  • level The confidence level.

function LognormalDeviate

cpp
LognormalDeviate(
    Expression * mu,
    Expression * sigma
)

The parametrization with underlying normal distribution parameters.

Parameters:

  • mu The mean of the normal distribution.
  • sigma The standard deviation of the normal distribution.

function Validate

cpp
inline virtual void Validate() const override

Validates the expression.

Exceptions:

Reimplements: scram::mef::Expression::Validate

This late validation is due to parameters that are defined late.

function value

cpp
inline virtual double value() override

Return: The mean value of this expression.

Reimplements: scram::mef::Expression::value

function interval

cpp
virtual Interval interval() override

The high is 99.9 percentile estimate.

Reimplements: scram::mef::Expression::interval


Updated on 2025-11-11 at 16:51:08 +0000