|
| | Nnpp () |
| double | rate_at (double t) const |
| | lambda(t), cyclic aware; zero past the horizon when not cyclic.
|
| double | mean_value (double t) const |
| | mu(t) = int_0^t lambda, cyclic aware; constant past the horizon when not cyclic.
|
| double | time_average_rate () const |
| double | mean () const |
| double | rate () const |
| double | scv () const |
| double | skewness () const |
| const std::vector< double > & | majorizer_breakpoints () const |
| | The Q+1 majorizer breakpoints z_i = i*S/Q.
|
| const std::vector< double > & | majorizer_rates () const |
| | The Q piecewise-constant majorizer rates.
|
| double | mean_value_majorizer () const |
| | muTilde(S), the majorizer mass over one cycle.
|
| double | mean_value_majorizer (double t) const |
| | muTilde(t), cyclic aware.
|
| double | acceptance_rate () const |
| double | dispersion () const |
| bool | is_cyclic () const |
| double | horizon () const |
| double | weibull_shape () const |
| double | weibull_scale () const |
| int | q () const |
| int | kind () const |
| std::string | kind_name () const |
| std::string | method () const |
| std::string | name () const |
| const std::vector< double > & | alpha () const |
| const std::vector< double > & | gamma () const |
| const std::vector< double > & | omega () const |
| const std::vector< double > & | phi () const |
| const std::vector< double > & | times () const |
| const std::vector< double > & | rates () const |
| std::vector< double > | params () const |
| | The params row of sn.proc, see from_params.
|
| double | majorizer_at (double tc) const |
| | Majorizer rate in force at an in-cycle time tc.
|
| double | majorizer_inverse (double u) const |
| | muTilde^{-1}(u), absolute time, cyclic aware; +Inf when the majorizer has no mass.
|
| template<class Unif> |
| double | equilibrium_gap (Unif &unif) const |
| | The equilibrium (first) renewal gap: scale * Y^(1/shape), Y ~ Gamma(1/shape, 1).
|
| template<class Unif> |
| double | renewal_gap (Unif &unif) const |
| | A noninitial renewal gap: scale * (-log(1-U))^(1/shape).
|
| template<class Unif> |
| double | next_arrival (Stream &s, Unif &unif) const |
| | The next accepted arrival epoch (absolute time) of the path s, or +Inf when a non-cyclic process has no more arrivals.
|
| template<class Unif> |
| std::vector< double > | sample (std::size_t n, Unif &&unif) const |
| | n successive interarrival times along one path from time 0.
|
| std::vector< double > | sample (std::size_t n, std::mt19937_64 &rng) const |
| | sample(n) off a std::mt19937_64, U drawn in (0,1).
|
|
| static Nnpp | eptmp (const std::vector< double > &alpha, const std::vector< double > &gamma, const std::vector< double > &omega, const std::vector< double > &phi, double horizon, double dispersion=1.0, bool cyclic=true, int Q=200) |
| | EPTMP: lambda(t) = exp(sum_i alpha_i t^i + sum_k gamma_k sin(omega_k t + phi_k)) on [0, horizon].
|
| static Nnpp | piecewise_linear (const std::vector< double > ×, const std::vector< double > &rates, double dispersion=1.0, bool cyclic=true, int Q=200) |
| | PWLINEAR: lambda linearly interpolated between (times[j], rates[j]); horizon = times.back().
|
| static Nnpp | from_params (int kind, const std::vector< double > ¶ms, double horizon, double dispersion, bool cyclic, int Q) |
| | Rebuild from the params row of sn.proc ([m+1, p, alpha, gamma, omega, phi] for EPTMP, [n, times, rates] for PWLINEAR).
|
| static void | weibull_for_dispersion (double C, double &shape, double &scale) |
| | Weibull (shape, scale) whose mean is 1 and SCV is C: 200 bisection steps on x = log(shape) in [log 0.02, log 200].
|
Definition at line 52 of file nnpp.h.
| Nnpp line::lang::Nnpp::eptmp |
( |
const std::vector< double > & | alpha, |
|
|
const std::vector< double > & | gamma, |
|
|
const std::vector< double > & | omega, |
|
|
const std::vector< double > & | phi, |
|
|
double | horizon, |
|
|
double | dispersion = 1.0, |
|
|
bool | cyclic = true, |
|
|
int | Q = 200 ) |
|
inlinestatic |
EPTMP: lambda(t) = exp(sum_i alpha_i t^i + sum_k gamma_k sin(omega_k t + phi_k)) on [0, horizon].
Definition at line 70 of file nnpp.h.
References alpha(), dispersion(), EPTMP, gamma(), horizon(), line::InputError::InputError(), Nnpp(), omega(), and phi().
Referenced by from_params(), and line::lang::Distrib< double >::nnpp_eptmp().
| Nnpp line::lang::Nnpp::from_params |
( |
int | kind, |
|
|
const std::vector< double > & | params, |
|
|
double | horizon, |
|
|
double | dispersion, |
|
|
bool | cyclic, |
|
|
int | Q ) |
|
inlinestatic |
Rebuild from the params row of sn.proc ([m+1, p, alpha, gamma, omega, phi] for EPTMP, [n, times, rates] for PWLINEAR).
Definition at line 123 of file nnpp.h.
References dispersion(), EPTMP, eptmp(), horizon(), line::InputError::InputError(), kind(), Nnpp(), params(), piecewise_linear(), and PWLINEAR.
| void line::lang::Nnpp::weibull_for_dispersion |
( |
double | C, |
|
|
double & | shape, |
|
|
double & | scale ) |
|
inlinestatic |
Weibull (shape, scale) whose mean is 1 and SCV is C: 200 bisection steps on x = log(shape) in [log 0.02, log 200].
C == 1 is exactly (1, 1).
Definition at line 240 of file nnpp.h.
References line::InputError::InputError().