Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
BEWeibull.cpp
Go to the documentation of this file.
1
#include "
BEWeibull.h
"
2
3
#include "
storm/exceptions/NotSupportedException.h
"
4
5
namespace
storm::dft
{
6
namespace
storage {
7
namespace
elements {
8
9
template
<>
10
double
BEWeibull<double>::getUnreliability
(
double
time)
const
{
11
// 1 - e^(-(t / lambda)^k)
12
// where lambda is the rate and k the shape
13
return
1 - exp(-std::pow(time / this->rate(), this->shape()));
14
}
15
16
template
<
typename
ValueType>
17
ValueType
BEWeibull<ValueType>::getUnreliability
(ValueType time)
const
{
18
STORM_LOG_THROW
(
false
, storm::exceptions::NotSupportedException,
"Computing cumulative failure probability not supported for this data type."
);
19
}
20
21
// Explicitly instantiate the class.
22
template
class
BEWeibull<double>
;
23
template
class
BEWeibull<RationalFunction>
;
24
25
}
// namespace elements
26
}
// namespace storage
27
}
// namespace storm::dft
BEWeibull.h
NotSupportedException.h
storm::dft::storage::elements::BEWeibull
BE with Weibull failure distribution.
Definition
BEWeibull.h:13
storm::dft::storage::elements::BEWeibull::getUnreliability
ValueType getUnreliability(ValueType time) const override
Return the unreliability of the BE up to the given time point.
Definition
BEWeibull.cpp:17
STORM_LOG_THROW
#define STORM_LOG_THROW(cond, exception, message)
Definition
macros.h:30
storm::dft
Definition
SFTBDDPropertyFormulaAdapter.h:19
src
storm-dft
storage
elements
BEWeibull.cpp
Generated by
1.9.8