13#include "libmesh/utility.h"
22 params.
addRequiredParam<Real>(
"location",
"The Lognormal location parameter (m or mu).");
23 params.
addRequiredParam<Real>(
"scale",
"The Lognormal scale parameter (s or sigma).");
28 :
Distribution(parameters), _location(getParam<Real>(
"location")), _scale(getParam<Real>(
"scale"))
35 return 1.0 / (
x *
scale * std::sqrt(2.0 * M_PI)) *
36 std::exp(-0.5 * Utility::pow<2>((std::log(
x) - location) /
scale));
42 return 0.5 * (1.0 + std::erf((std::log(
x) - location) / (
scale * std::sqrt(2.0))));
const std::vector< double > x
registerMooseObject("StochasticToolsApp", Lognormal)
static InputParameters validParams()
A class used to generate a lognormal distribution.
virtual Real quantile(const Real &p) const override
virtual Real cdf(const Real &x) const override
Lognormal(const InputParameters ¶meters)
const Real & _scale
The lognormal scale parameter (s or sigma)
const Real & _location
The lognormal location parameter (m or mu)
static InputParameters validParams()
virtual Real pdf(const Real &x) const override
virtual Real quantile(const Real &p) const override