pf
pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t > Class Template Reference

#include <resamplers.h>

Inheritance diagram for pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >:
Collaboration diagram for pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >:

Public Types

using ssv = Eigen::Matrix< float_t, dimx, 1 >
 
using arrayVec = std::array< ssv, nparts >
 
using arrayFloat = std::array< float_t, nparts >
 
using arrayInt = std::array< unsigned int, nparts >
 
using usvr = Eigen::Matrix< float_t, 1, 1 >
 

Public Member Functions

 sys_hilb_resampler ()=default
 Default constructor. This class does not handle random numbers, so there is no seed-setting.

 
void resampLogWts (arrayVec &oldParts, arrayFloat &oldLogUnNormWts, const usvr &ur)
 resamples particles. More...
 

Additional Inherited Members

- Private Types inherited from pf::resamplers::rbase_hcs< nparts, dimx, 1, num_hilb_bits, float_t >
using ssv = Eigen::Matrix< float_t, dimx, 1 >
 
using arrayVec = std::array< ssv, nparts >
 
using arrayFloat = std::array< float_t, nparts >
 
using usvr = Eigen::Matrix< float_t, dimur, 1 >
 
- Private Member Functions inherited from pf::resamplers::rbase_hcs< nparts, dimx, 1, num_hilb_bits, float_t >
 rbase_hcs ()=default
 The default constructor. There is no seed-setting.
 
virtual void resampLogWts (arrayVec &oldParts, arrayFloat &oldLogUnNormWts, const usvr &ur)=0
 Function to resample from log unnormalized weights. More...
 
std::array< unsigned, nparts > get_permutation (const arrayVec &unsortedParts)
 get a permutation based on unsorted particle samples (not their weights) More...
 

Detailed Description

template<size_t nparts, size_t dimx, size_t num_hilb_bits, typename float_t>
class pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >

Author
taylor
Date
08/06/21

Member Typedef Documentation

◆ arrayFloat

template<size_t nparts, size_t dimx, size_t num_hilb_bits, typename float_t >
using pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >::arrayFloat = std::array<float_t,nparts>

type alias for array of float_ts

◆ arrayInt

template<size_t nparts, size_t dimx, size_t num_hilb_bits, typename float_t >
using pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >::arrayInt = std::array<unsigned int, nparts>

type alias for array of integers

◆ arrayVec

template<size_t nparts, size_t dimx, size_t num_hilb_bits, typename float_t >
using pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >::arrayVec = std::array<ssv, nparts>

type alias for array of Eigen Matrices

◆ ssv

template<size_t nparts, size_t dimx, size_t num_hilb_bits, typename float_t >
using pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >::ssv = Eigen::Matrix<float_t,dimx,1>

type alias for linear algebra stuff

◆ usvr

template<size_t nparts, size_t dimx, size_t num_hilb_bits, typename float_t >
using pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >::usvr = Eigen::Matrix<float_t,1,1>

type alias for resampling normal random variable

Member Function Documentation

◆ resampLogWts()

template<size_t nparts, size_t dimx, size_t num_hilb_bits, typename float_t >
void pf::resamplers::sys_hilb_resampler< nparts, dimx, num_hilb_bits, float_t >::resampLogWts ( arrayVec oldParts,
arrayFloat oldLogUnNormWts,
const usvr ur 
)

resamples particles.

Parameters
oldPartsthe old particles that get changed in place
oldLogUnNormWtsthe old log unnormalized weights that get changed in place
urstandard normal random variable used to resample indexes

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