EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
Loading...
Searching...
No Matches
StudentT.h File Reference

StudentT: the multivariate Student-t, a Gaussian with heavier tails, built by create() from a location, scale matrix, and degrees of freedom, with its marginals, conditionals, and draws; and StudentTError, why those fail to define one. More...

#include <cmath>
#include <concepts>
#include <expected>
#include <optional>
#include <random>
#include <utility>
#include <EmrysFilter/Core/Forwarding.h>
#include <EmrysFilter/Core/Macros.h>
#include <EmrysFilter/Core/Math.h>
#include <EmrysFilter/Core/Multiply.h>
#include <EmrysFilter/Core/Print.h>
#include <EmrysFilter/Core/Solve.h>
#include <EmrysFilter/Distributions/Gaussian.h>
#include <EmrysFilter/Distributions/Moments.h>
#include <EmrysFilter/Distributions/SampleSet.h>
#include <EmrysFilter/Distributions/Sampling.h>
#include <EmrysFilter/Spaces/Indexing.h>
#include <EmrysFilter/Spaces/Space.h>
#include <EmrysFilter/Spaces/Subspace.h>

Go to the source code of this file.

Classes

class  Emrys::StudentT< Space_, Scalar_ >
 The multivariate Student-t distribution: a Gaussian with heavier tails. More...

Enumerations

enum class  Emrys::StudentTError { StudentTError::NotPositiveDefinite , StudentTError::NonFiniteScale , StudentTError::NotPositiveDegreesOfFreedom , StudentTError::NonFiniteDegreesOfFreedom }
 Reasons a location, scale matrix, and degrees of freedom fail to define a StudentT. More...

Functions

template<typename Scalar, typename Space, std::uniform_random_bit_generator G>
SampleSet< Space, Scalar > Emrys::drawSamples (StudentT< Space, Scalar > const &t, Eigen::Index n, G &rng)
template<typename Scalar, typename Space, std::uniform_random_bit_generator G>
Moments< Space, Scalar >::VectorType Emrys::drawSample (StudentT< Space, Scalar > const &t, G &rng)
template<typename Scalar, typename Space, std::uniform_random_bit_generator G>
SamplesWithLogDensity< Space, Scalar > Emrys::drawSamplesWithLogDensity (StudentT< Space, Scalar > const &t, Eigen::Index n, G &rng)
template<typename Scalar, typename Space, std::uniform_random_bit_generator G>
SampleWithLogDensity< Space, Scalar > Emrys::drawSampleWithLogDensity (StudentT< Space, Scalar > const &t, G &rng)

Detailed Description

StudentT: the multivariate Student-t, a Gaussian with heavier tails, built by create() from a location, scale matrix, and degrees of freedom, with its marginals, conditionals, and draws; and StudentTError, why those fail to define one.

An immutable value, its own parameters (decisions.md [params-and-density], [checked-factories]), that holds a factorized Gaussian. Read Product.h next.