Skip to content

scram::mef::Exponential

Negative exponential distribution with hourly failure rate and time.

#include <exponential.h>

Inherits from scram::mef::ExpressionFormula< Exponential >, scram::mef::Expression, boost::noncopyable

Public Functions

Name
template <typename T > <br>doubleCompute(T && eval)<br>Evaluates the expression.
doubleCompute(double lambda, double time)
Exponential(Expression * lambda, Expression * t)<br>Constructor for exponential expression with two arguments.
virtual voidValidate() const override
virtual Intervalinterval() override

Additional inherited members

Public Functions inherited from scram::mef::ExpressionFormula< Exponential >

Name
virtual doublevalue()<br>Computes the expression with argument expression default values.
Expression(std::vector< Expression * > args ={})<br>Constructor for use by derived classes to register their arguments.

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 doublevalue() =0
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 Compute

cpp
template <typename T >
inline double Compute(
    T && eval
)

Evaluates the expression.

function Compute

cpp
double Compute(
    double lambda,
    double time
)

function Exponential

cpp
Exponential(
    Expression * lambda,
    Expression * t
)

Constructor for exponential expression with two arguments.

Parameters:

  • lambda Hourly rate of failure.
  • t Mission time in hours.

function Validate

cpp
virtual void Validate() const override

Exceptions:

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

function interval

cpp
inline virtual Interval interval() override

Return: The domain interval for validation purposes only.

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


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