EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
Loading...
Searching...
No Matches
Emrys::ExponentialEmission< Space, Scalar_ > Class Template Reference

The emission model of the time from one event to the next, from a Poisson process whose rate is a function of the value. More...

#include <EmrysFilter/Models/Emission.h>

Inheritance diagram for Emrys::ExponentialEmission< Space, Scalar_ >:

Public Types

using Scalar = Scalar_
 the scalar type of the rates

Public Member Functions

template<typename Derived>
 ExponentialEmission (Eigen::DenseBase< Derived > const &rates, TimeStep< Scalar_ > auto const &tau)
 The emission of an inter-arrival time of tau, any TimeStep (see Time steps), with rates one per value.
Scalar_ interval () const
void logLikelihoods (Space const &space, EmissionBuffer< Space, Scalar > out) const
 Writes the exponential log-density of the inter-arrival time under each value's rate into out.

Detailed Description

template<DiscreteSpace Space, RealScalar Scalar_ = double>
class Emrys::ExponentialEmission< Space, Scalar_ >

The emission model of the time from one event to the next, from a Poisson process whose rate is a function of the value.

The exponential density of an inter-arrival time \( \tau \): \( \log p(\tau \mid v) = \log \lambda_v - \lambda_v \tau \). Like PoissonEmission, it treats the value as fixed over the interval; ArrivalInterval is the exact observation over a ContinuousTimeMarkovChain.

Template Parameters
Spacethe discrete space
Scalar_scalar type of the rates, double by default

Member Function Documentation

◆ interval()

template<DiscreteSpace Space, RealScalar Scalar_ = double>
Scalar_ Emrys::ExponentialEmission< Space, Scalar_ >::interval ( ) const
inlinenodiscard
Returns
the inter-arrival time, in the unit of the rates (see Time steps)

The documentation for this class was generated from the following file: