www.mooseframework.org
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
BoostWeibullDistribution Class Reference

A class used to generate Weibull distribution via Boost. More...

#include <BoostWeibullDistribution.h>

Inheritance diagram for BoostWeibullDistribution:
[legend]

Public Member Functions

 BoostWeibullDistribution (const InputParameters &parameters)
 
virtual Real pdf (const Real &x) const override
 
virtual Real cdf (const Real &x) const override
 
virtual Real quantile (const Real &y) const override
 
virtual Real median () const override
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Attributes

std::unique_ptr< boost::math::weibull_distribution< Real > > _distribution_unique_ptr
 This must be defined by the child class in the constructor. More...
 

Detailed Description

A class used to generate Weibull distribution via Boost.

Definition at line 22 of file BoostWeibullDistribution.h.

Constructor & Destructor Documentation

◆ BoostWeibullDistribution()

BoostWeibullDistribution::BoostWeibullDistribution ( const InputParameters &  parameters)

Definition at line 28 of file BoostWeibullDistribution.C.

30 {
31  _distribution_unique_ptr = libmesh_make_unique<boost::math::weibull_distribution<Real>>(
32  getParam<Real>("shape"), getParam<Real>("scale"));
33 }

Member Function Documentation

◆ cdf()

Real BoostDistribution< boost::math::weibull_distribution< Real > >::cdf ( const Real &  x) const
overridevirtualinherited

Definition at line 92 of file BoostDistribution.h.

93 {
94 #ifdef LIBMESH_HAVE_EXTERNAL_BOOST
95  mooseAssert(_distribution_unique_ptr, "Boost distribution pointer not defined.");
96  TIME_SECTION(_perf_cdf);
98 #else
99  return x; // unreachable
100 #endif
101 }

◆ median()

Real BoostDistribution< boost::math::weibull_distribution< Real > >::median ( ) const
overridevirtualinherited

Definition at line 118 of file BoostDistribution.h.

119 {
120 #ifdef LIBMESH_HAVE_EXTERNAL_BOOST
121  mooseAssert(_distribution_unique_ptr, "Boost distribution pointer not defined.");
122  TIME_SECTION(_perf_median);
124 #else
125  return 0; // unreachable
126 #endif
127 }

◆ pdf()

Real BoostDistribution< boost::math::weibull_distribution< Real > >::pdf ( const Real &  x) const
overridevirtualinherited

Definition at line 79 of file BoostDistribution.h.

80 {
81 #ifdef LIBMESH_HAVE_EXTERNAL_BOOST
82  mooseAssert(_distribution_unique_ptr, "Boost distribution pointer not defined.");
83  TIME_SECTION(_perf_pdf);
85 #else
86  return x; // unreachable
87 #endif
88 }

◆ quantile()

Real BoostDistribution< boost::math::weibull_distribution< Real > >::quantile ( const Real &  y) const
overridevirtualinherited

Definition at line 105 of file BoostDistribution.h.

106 {
107 #ifdef LIBMESH_HAVE_EXTERNAL_BOOST
108  mooseAssert(_distribution_unique_ptr, "Boost distribution pointer not defined.");
109  TIME_SECTION(_perf_quantile);
111 #else
112  return y; // unreachable
113 #endif
114 }

◆ validParams()

InputParameters BoostWeibullDistribution::validParams ( )
static

Definition at line 19 of file BoostWeibullDistribution.C.

20 {
21  InputParameters params = Distribution::validParams();
22  params.addClassDescription("Boost Weibull distribution.");
23  params.addRequiredParam<Real>("shape", "The Weibull shape parameter.");
24  params.addParam<Real>("scale", 1, "The Weibull scale parameter.");
25  return params;
26 }

Member Data Documentation

◆ _distribution_unique_ptr

std::unique_ptr<boost::math::weibull_distribution< Real > > BoostDistribution< boost::math::weibull_distribution< Real > >::_distribution_unique_ptr
protectedinherited

This must be defined by the child class in the constructor.

Definition at line 60 of file BoostDistribution.h.


The documentation for this class was generated from the following files:
BoostDistribution::quantile
virtual Real quantile(const Real &y) const override
Definition: BoostDistribution.h:105
BoostDistribution::cdf
virtual Real cdf(const Real &x) const override
Definition: BoostDistribution.h:92
validParams
InputParameters validParams()
BoostDistribution
A class used to as a base for distributions defined by Boost.
Definition: BoostDistribution.h:48
BoostDistribution< boost::math::weibull_distribution< Real > >::_distribution_unique_ptr
std::unique_ptr< boost::math::weibull_distribution< Real > > _distribution_unique_ptr
This must be defined by the child class in the constructor.
Definition: BoostDistribution.h:60
BoostDistribution::median
virtual Real median() const override
Definition: BoostDistribution.h:118
BoostDistribution::pdf
virtual Real pdf(const Real &x) const override
Definition: BoostDistribution.h:79