|
ADS-IDAC Engine 5.0.0
|
Index tables for the downward (distribute) message from a parent clique p to one child clique u. More...
#include <workspace.hpp>
Public Attributes | |
| std::size_t | product_states |
| number of states of the product space More... | |
| std::vector< uint32_t > | pot_map |
| [prod_idx] to flat index in parent clique p's potential More... | |
| bool | has_parent_down = false |
| true when p has a parent of its own More... | |
| std::vector< uint32_t > | down_map |
| [prod_idx] to index in p's down message; empty unless has_parent_down More... | |
| std::vector< std::vector< uint32_t > > | sibling_maps |
| [sibling_i][prod_idx] to index in that sibling's up message More... | |
| std::vector< std::size_t > | sibling_cliques |
| other children of p, parallel to sibling_maps More... | |
| std::vector< uint32_t > | marg_map |
| [prod_idx] to index in u's down message More... | |
| std::size_t | parent_clique = 0 |
| clique index of p More... | |
Index tables for the downward (distribute) message from a parent clique p to one child clique u.
The product space is that of clique p, combined with the separators to the siblings of u. The message multiplies p's potential, the down message p received from its own parent (if any) and the up messages of u's siblings, then sums onto the separator between p and u. Indexing follows CollectOp.
Definition at line 47 of file workspace.hpp.
| std::vector<uint32_t> bncore::DistributeOp::down_map |
[prod_idx] to index in p's down message; empty unless has_parent_down
Definition at line 51 of file workspace.hpp.
Referenced by bncore::BatchWorkspace::build_message_schedule(), and bncore::BatchWorkspace::calibrate().
| bool bncore::DistributeOp::has_parent_down = false |
true when p has a parent of its own
Definition at line 50 of file workspace.hpp.
Referenced by bncore::BatchWorkspace::build_message_schedule(), and bncore::BatchWorkspace::calibrate().
| std::vector<uint32_t> bncore::DistributeOp::marg_map |
[prod_idx] to index in u's down message
Definition at line 54 of file workspace.hpp.
Referenced by bncore::BatchWorkspace::build_message_schedule(), and bncore::BatchWorkspace::calibrate().
| std::size_t bncore::DistributeOp::parent_clique = 0 |
clique index of p
Definition at line 55 of file workspace.hpp.
Referenced by bncore::BatchWorkspace::build_message_schedule().
| std::vector<uint32_t> bncore::DistributeOp::pot_map |
[prod_idx] to flat index in parent clique p's potential
Definition at line 49 of file workspace.hpp.
Referenced by bncore::BatchWorkspace::build_message_schedule(), and bncore::BatchWorkspace::calibrate().
| std::size_t bncore::DistributeOp::product_states |
number of states of the product space
Definition at line 48 of file workspace.hpp.
Referenced by bncore::BatchWorkspace::build_message_schedule(), and bncore::BatchWorkspace::calibrate().
| std::vector<std::size_t> bncore::DistributeOp::sibling_cliques |
other children of p, parallel to sibling_maps
Definition at line 53 of file workspace.hpp.
Referenced by bncore::BatchWorkspace::build_message_schedule(), and bncore::BatchWorkspace::calibrate().
| std::vector<std::vector<uint32_t> > bncore::DistributeOp::sibling_maps |
[sibling_i][prod_idx] to index in that sibling's up message
Definition at line 52 of file workspace.hpp.
Referenced by bncore::BatchWorkspace::build_message_schedule(), and bncore::BatchWorkspace::calibrate().