The equal-weight components of a grid over some coordinates of a space, made one at a time when read: what uniformComponents() returns.
More...
|
|
using | Scalar = Scalar_ |
| | the scalar type
|
|
using | Index = Eigen::Index |
| | Eigen's index type.
|
|
using | SpaceType = Space_ |
| | the space the components live in
|
|
using | MomentsType = Moments<Space_, Scalar_> |
| | a component's mean and covariance
|
|
using | VectorType = typename MomentsType::VectorType |
| | a value, such as a mean
|
|
using | MatrixType = typename MomentsType::MatrixType |
| | a matrix over differences
|
| using | CountsType |
| | A count of cells per coordinate, zero for a coordinate that is not gridded.
|
|
using | value_type = Element |
| | an element, made when read
|
|
using | const_iterator = internal::ElementIterator<UniformGrid> |
| | iterates the elements
|
|
using | iterator = const_iterator |
| | iterates the elements; they are read-only
|
template<Space Space_, RealScalar Scalar_ = double>
class Emrys::UniformGrid< Space_, Scalar_ >
The equal-weight components of a grid over some coordinates of a space, made one at a time when read: what uniformComponents() returns.
A coordinate i with counts()(i) \( = N_i > 0 \) is gridded: its interval from \( \ell_i \) with width \( w_i \) is cut into \( N_i \) cells, and the components' means sit at the cells' centers, \( \ell_i + (j + \tfrac12) w_i / N_i \), with variance \( (c w_i / N_i)^2 \), where \( c \) is the relative width. Every other coordinate keeps its mean, and its rows and columns of the covariance, in every component. Component k is at the cell whose indices are k's digits in the mixed radix of the counts, the first gridded coordinate varying fastest, as a grid's flat cell index does.
It is a random-access range of size() elements, each a log-weight of \( -\log \prod_i N_i \) and the component's Moments, so GaussianMixtureParams::assign() fills a mixture from it:
MixtureParams< Gaussian< Space_, Scalar_ >, Allocator_ > GaussianMixtureParams
A Mixture of Gaussians in covariance form, the spelling for the common case (decisions....
Definition Mixture.h:2072
UniformGrid< S, Scalar > uniformComponents(Uniform< S, Scalar > const &uniform, Eigen::DenseBase< CountsDerived > const &counts, std::type_identity_t< Scalar > relativeWidth=Scalar(0.6))
Definition UniformMixture.h:362
The most elements a container will hold, reserved once: a mixture's components or a particle set's pa...
Definition Allocation.h:54
A filter's starting state is made the same way, with the capacity or allocator the filter needs, and moved into the filter.
The mixture must be in space(); the elements carry no space, so the mixture's is the one the components take. The grid holds its values and borrows nothing, and its iterators borrow it.