TruncatedNormal

Truncated normal distribution

Description

The truncated normal (or Gaussian) distribution object defines a normal distribution function with the provided mean, standard_deviation and truncation range (lower_bound and upper_bound) parameters. The probability density function (PDF) of the truncated normal distribution is given by the Eq. (1).

ψ(x    μ,σ2,a,b)={ϕ((x    μ,σ2)Φ(x    μ,σ2,b)Φ(x    μ,σ2,a),if a<x<b0,otherwise\psi(x \; | \; \mu, \sigma^2, a, b) = \begin{cases} \frac{\phi((x \; | \; \mu, \sigma^2)}{\Phi(x\;|\;\mu,\sigma^2,b)-\Phi(x\;|\;\mu,\sigma^2,a)},& \text{if } a<x<b\\ 0, & \text{otherwise} \end{cases}(1)

The parameters μ\mu and σ\sigma are the mean and standard deviation of the general normal PDF. The ϕ((x    μ,σ2)\phi((x \; | \; \mu, \sigma^2) and Φ((x    μ,σ2)\Phi((x \; | \; \mu, \sigma^2) are the general normal PDF and cumulative distribution function (CDF).

Example Input Syntax

The following input file defines a normal distribution with a mean of 100, a standard deviation of 25, and truncation range (50,150).

[Distributions]
  [normal_test]
    type = TruncatedNormal
    mean = 100
    standard_deviation = 25
    lower_bound = 50
    upper_bound = 150
  []
[]
(contrib/moose/modules/stochastic_tools/test/tests/distributions/truncated_normal.i)

Input Parameters

  • meanMean (or expectation) of the distribution.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mean (or expectation) of the distribution.

  • standard_deviationStandard deviation of the distribution

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Standard deviation of the distribution

Required Parameters

  • lower_bound-1.79769e+308Lower bound of the distribution

    Default:-1.79769e+308

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Lower bound of the distribution

  • upper_bound1.79769e+308Upper bound of the distribution

    Default:1.79769e+308

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Upper bound of the distribution

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

References

No citations exist within this document.