aGrUM 3.2.0
a C++ library for (probabilistic) graphical models
gum::KTBNInference< GUM_SCALAR >::_Window_ Struct Reference

A compiled window: the junction tree of \(H_t = I_{t-1} \cup V_t\), rooted at the clique holding \(I_t\), plus everything needed to fill and message-pass it. Built once; windows 0..k-2 are the initial ones, window k-1 is the repeating one, re-entered from slice k-1 on. More...

Collaboration diagram for gum::KTBNInference< GUM_SCALAR >::_Window_:
[legend]

Public Attributes

std::vector< _Slot_ > slotOfNode
 template graph NodeId -> slot it stands for
JunctionTree jt
 the junction tree over those nodes
NodeId rootC {0}
 clique containing the whole outgoing interface I_t
NodeId rootD {0}
 clique containing the whole incoming interface I_{t-1}
std::vector< NodeId > bfs
 cliques in BFS order from rootC, and each one's parent in that rooting
std::unordered_map< NodeId, NodeId > parentOf
std::unordered_map< NodeId, std::vector< int > > factorsOf
 clique -> base indices whose family factor is multiplied in there
std::unordered_map< int, NodeId > selfClique
 base index -> clique holding that base's own slot (lag 0 / atemporal), for reading its posterior and placing its observation
std::vector< _Slot_ > Iprev
 the two interfaces, as slot lists
std::vector< _Slot_ > Icur

Detailed Description

template<GUM_Numeric GUM_SCALAR>
struct gum::KTBNInference< GUM_SCALAR >::_Window_

A compiled window: the junction tree of \(H_t = I_{t-1} \cup V_t\), rooted at the clique holding \(I_t\), plus everything needed to fill and message-pass it. Built once; windows 0..k-2 are the initial ones, window k-1 is the repeating one, re-entered from slice k-1 on.

Definition at line 447 of file KTBNInference.h.

Member Data Documentation

◆ bfs

template<GUM_Numeric GUM_SCALAR>
std::vector< NodeId > gum::KTBNInference< GUM_SCALAR >::_Window_::bfs

cliques in BFS order from rootC, and each one's parent in that rooting

Definition at line 457 of file KTBNInference.h.

Referenced by gum::KTBNInference< GUM_SCALAR >::_compileWindow_(), gum::KTBNInference< GUM_SCALAR >::_propagate_(), and gum::KTBNInference< GUM_SCALAR >::makeInference().

◆ factorsOf

template<GUM_Numeric GUM_SCALAR>
std::unordered_map< NodeId, std::vector< int > > gum::KTBNInference< GUM_SCALAR >::_Window_::factorsOf

clique -> base indices whose family factor is multiplied in there

Definition at line 460 of file KTBNInference.h.

Referenced by gum::KTBNInference< GUM_SCALAR >::_applyTemporalObservations_(), gum::KTBNInference< GUM_SCALAR >::_compileWindow_(), and gum::KTBNInference< GUM_SCALAR >::_fillWindow_().

◆ Icur

template<GUM_Numeric GUM_SCALAR>
std::vector< _Slot_ > gum::KTBNInference< GUM_SCALAR >::_Window_::Icur

◆ Iprev

template<GUM_Numeric GUM_SCALAR>
std::vector< _Slot_ > gum::KTBNInference< GUM_SCALAR >::_Window_::Iprev

the two interfaces, as slot lists

Definition at line 465 of file KTBNInference.h.

Referenced by gum::KTBNInference< GUM_SCALAR >::_compileWindow_(), and gum::KTBNInference< GUM_SCALAR >::makeInference().

◆ jt

◆ parentOf

template<GUM_Numeric GUM_SCALAR>
std::unordered_map< NodeId, NodeId > gum::KTBNInference< GUM_SCALAR >::_Window_::parentOf

◆ rootC

template<GUM_Numeric GUM_SCALAR>
NodeId gum::KTBNInference< GUM_SCALAR >::_Window_::rootC {0}

◆ rootD

template<GUM_Numeric GUM_SCALAR>
NodeId gum::KTBNInference< GUM_SCALAR >::_Window_::rootD {0}

clique containing the whole incoming interface I_{t-1}

Definition at line 455 of file KTBNInference.h.

Referenced by gum::KTBNInference< GUM_SCALAR >::_belief_(), gum::KTBNInference< GUM_SCALAR >::_compileWindow_(), and gum::KTBNInference< GUM_SCALAR >::makeInference().

◆ selfClique

template<GUM_Numeric GUM_SCALAR>
std::unordered_map< int, NodeId > gum::KTBNInference< GUM_SCALAR >::_Window_::selfClique

base index -> clique holding that base's own slot (lag 0 / atemporal), for reading its posterior and placing its observation

Definition at line 463 of file KTBNInference.h.

Referenced by gum::KTBNInference< GUM_SCALAR >::_compileWindow_(), and gum::KTBNInference< GUM_SCALAR >::makeInference().

◆ slotOfNode

template<GUM_Numeric GUM_SCALAR>
std::vector< _Slot_ > gum::KTBNInference< GUM_SCALAR >::_Window_::slotOfNode

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