| 
									
										
										
										
											2013-03-24 04:19:36 +08:00
										 |  |  | /**
 | 
					
						
							|  |  |  |  * @file summarization.h | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * @brief Types and utility functions for summarization | 
					
						
							|  |  |  |  *  | 
					
						
							|  |  |  |  * @date Jun 22, 2012 | 
					
						
							|  |  |  |  * @author Alex Cunningham | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #pragma once
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-04-06 03:06:28 +08:00
										 |  |  | #include <gtsam_unstable/base/dllexport.h>
 | 
					
						
							| 
									
										
										
										
											2013-07-30 07:55:40 +08:00
										 |  |  | #include <gtsam/linear/GaussianFactorGraphOrdered.h>
 | 
					
						
							|  |  |  | #include <gtsam/linear/GaussianBayesTreeOrdered.h>
 | 
					
						
							|  |  |  | #include <gtsam/nonlinear/OrderingOrdered.h>
 | 
					
						
							| 
									
										
										
										
											2013-03-24 04:19:36 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | namespace gtsam { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /**
 | 
					
						
							|  |  |  |  * Backsubstitution-based conditioning - reduces conditionals to | 
					
						
							|  |  |  |  * densities on a sub-set of variables. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * Corner cases: | 
					
						
							|  |  |  |  *  - If no frontal vars are saved, returns a null pointer | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  *  @param initConditional the conditional from which to remove a variable | 
					
						
							|  |  |  |  *  @param saved_indices is the set of indices that should appear in the result | 
					
						
							|  |  |  |  *  @param solution is a full solution for the system | 
					
						
							|  |  |  |  */ | 
					
						
							| 
									
										
										
										
											2013-07-30 07:55:40 +08:00
										 |  |  | GTSAM_UNSTABLE_EXPORT gtsam::GaussianConditionalOrdered::shared_ptr conditionDensity(const gtsam::GaussianConditionalOrdered::shared_ptr& initConditional, | 
					
						
							|  |  |  |     const std::set<gtsam::Index>& saved_indices, const gtsam::VectorValuesOrdered& solution); | 
					
						
							| 
									
										
										
										
											2013-03-24 04:19:36 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | /**
 | 
					
						
							|  |  |  |  * Backsubstitution-based conditioning for a complete Bayes Tree - reduces | 
					
						
							|  |  |  |  * conditionals by solving out variables to eliminate. Traverses the tree to | 
					
						
							|  |  |  |  * add the correct dummy factors whenever a separator is eliminated. | 
					
						
							|  |  |  |  */ | 
					
						
							| 
									
										
										
										
											2013-07-30 07:55:40 +08:00
										 |  |  | GTSAM_UNSTABLE_EXPORT gtsam::GaussianFactorGraphOrdered conditionDensity(const gtsam::GaussianBayesTreeOrdered& bayesTree, | 
					
						
							| 
									
										
										
										
											2013-03-24 04:19:36 +08:00
										 |  |  |     const std::set<gtsam::Index>& saved_indices); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } // \namespace gtsam
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 |