32 class SymmetricBlockMatrix;
50 template<
typename CONTAINER>
60 const std::string&
s =
"",
79 virtual Matrix augmentedJacobian()
const = 0;
88 virtual std::pair<Matrix,Vector> jacobian()
const = 0;
98 virtual Matrix augmentedInformation()
const = 0;
103 virtual Matrix information()
const = 0;
112 virtual void hessianDiagonal(
double* d)
const = 0;
115 virtual std::map<Key,Matrix> hessianBlockDiagonal()
const = 0;
121 virtual bool empty()
const = 0;
145 virtual void gradientAtZero(
double* d)
const = 0;
151 template <
typename CONTAINER>
153 return std::find(keys.begin(), keys.end(),
key) - keys.begin();
158 friend class boost::serialization::access;
159 template<
class ARCHIVE>
161 ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(Base);
void print(const Matrix &A, const string &s, ostream &stream)
Concept check for values that can be used in unit tests.
void serialize(ARCHIVE &ar, const unsigned int)
GaussianFactor This
This class.
static const KeyFormatter DefaultKeyFormatter
ptrdiff_t DenseIndex
The index type for Eigen objects.
const KeyFormatter & formatter
virtual ~GaussianFactor()
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
boost::shared_ptr< This > shared_ptr
shared_ptr to this class
GaussianFactor(const CONTAINER &keys)
Factor Base
Our base class.
KeyVector::const_iterator const_iterator
Const iterator over keys.
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
static DenseIndex Slot(const CONTAINER &keys, Key key)
std::uint64_t Key
Integer nonlinear key type.
The base class for all factors.