12 #include "libmesh/utility.h" 23 params.
set<
Real>(
"standard_deviation") = 1.0;
37 _lower(getParam<
Real>(
"a")),
38 _upper(getParam<
Real>(
"b")),
39 _alpha_1(getParam<
Real>(
"alpha_1")),
40 _alpha_2(getParam<
Real>(
"alpha_2"))
46 const Real &
x,
const Real &
a,
const Real &
b,
const Real & alpha_1,
const Real & alpha_2)
52 return (alpha_2 * (
b -
a)) / ((
x -
a) * (
b -
x) * std::sqrt(2.0 * M_PI)) *
53 std::exp(-0.5 * Utility::pow<2>(alpha_1 + alpha_2 * std::log((
x -
a) / (
b -
x))));
61 const Real &
x,
const Real &
a,
const Real &
b,
const Real & alpha_1,
const Real & alpha_2)
67 return Normal::cdf(alpha_1 + alpha_2 * std::log((
x -
a) / (
b -
x)), 0.0, 1.0);
75 const Real & p,
const Real &
a,
const Real &
b,
const Real & alpha_1,
const Real & alpha_2)
78 return (
a +
b * std::exp((
Z - alpha_1) / alpha_2)) / (1.0 + std::exp((
Z - alpha_1) / alpha_2));
registerMooseObject("StochasticToolsApp", JohnsonSB)
A class used to generate a Johnson SB distribution.
virtual Real cdf(const Real &x) const override
A class used to generate a normal distribution.
static InputParameters validParams()
JohnsonSB(const InputParameters ¶meters)
const std::vector< double > x
const Real & _alpha_2
The second shape parameter, alpha_2.
virtual Real pdf(const Real &x) const override
static InputParameters validParams()
static const std::string Z
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const Real & _alpha_1
The first shape parameter, alpha_1.
const Real & _lower
The lower location parameter, a.
virtual Real quantile(const Real &p) const override
virtual Real quantile(const Real &p) const override
virtual Real cdf(const Real &x) const override
const Real & _upper
The upper location parameter, b.