javaslam.filter
Class ExtendedTransformation
java.lang.Object
|
+--javaslam.filter.Linearization
|
+--javaslam.filter.ExtendedTransformation
- public class ExtendedTransformation
- extends Linearization
The extended transformation for linearizing functions with
Gaussian-distributed inputs. This technique computes the
first-order Taylor expansion of the nonlinear function. The
function to be linearized must implement ExtendedVectorFunction
so that the Jacobian can be computed.
This class records counts of all floating point operations using
Flops.count(long)
.
Fields inherited from class javaslam.filter.Linearization |
a, B, G, k, m, n, q, vSet, xSet, y, ySet |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
factory
protected static LinearizationFactory factory
- A factory for creating linearizations using the extended
transformation.
ExtendedTransformation
public ExtendedTransformation(NoisyVectorFunction f,
Gaussian px)
- Constructor.
- Parameters:
f
- an ExtendedVectorFunction
that takes a
(n + m)-by-1 vector as input
and returns a k-by-1 vector; the function's input
is x stacked on top of vpx
- a Gaussian distribution (in the moment parameterization)
over the n-by-1 vector x (which can be
partitioned into several sub-variables)
- Throws:
IllegalArgumentException
- if the sum dimension of
px
and
pv
does not match the
input dimension of f
getFactory
public static LinearizationFactory getFactory()
- Returns a handle on a factory for creating linearizations using
the extended transformation.
- Returns:
- a factory for creating linearizations