mfGeomProduct | R Documentation |
A general product geometry
A general product geometry
An mfGeometry
class implementing a product geometry in an abstract
general way. While there might be more efficient implementations using the
particular structure of your geometry of interest, this should work for
products of any mfGeometries.
manifoldboost::mfGeometry
-> mfGeomProduct
mfGeom_default
an mfGeometry
object implementing the default
geometry of a component of the product space.
y_
return lists of respective elements in the components.
y_
can be specified as a list of mfGeometry
objects constituting
the components of the product geometry.
pole_
return lists of respective elements in the components.
weights_
return lists of respective elements in the components.
mfGeom_classes
return a list of the classes of y_
(read only).
new()
Initialize product geometry with each
component the mfGeom_default
based on the
data
containing the variables for y_
specified in the formula
.
mfGeomProduct$new(mfGeom_default, data, formula)
mfGeom_default
mfGeometry
object carrying the
component geometry.
data
containing required variables.
formula
formula containing interpreted
via mfInterpret_formula
) and indicating, in particular,
the ID variable for splitting observations in the product
components.
slice()
subset product geometry to specified components. Make sure to clone the product geometry first if complete geometry should be preserved.
mfGeomProduct$slice(which)
which
integers or character strings indicating
which elements of y_
should be selected.
structure()
bring y
into the right order to
split and pass it to the component geometries.
mfGeomProduct$structure(y)
y
a list of y
elements of the component manifolds in an
unstructured 'flattened' way
unstructure()
unstructure y_
in the component geometries
and arrange it into the right order.
mfGeomProduct$unstructure(y_)
y_
a list of objects living in the component manifolds
unstructure_weights()
unstructure weights_
in the component geometries
and arrange it into the right order.
mfGeomProduct$unstructure_weights(weights_)
weights_
list of numeric vectors of inner product weights.
structure_weights()
bring weights
into the right order to
split and pass it to the component geometries.
mfGeomProduct$structure_weights(weights)
weights
numeric vector of inner product weights matching the y
as a numeric vector.
align()
component-wise alignment.
mfGeomProduct$align(y_, y0_, ...)
y_
a list of objects living in the component manifolds
y0_
a list of objects living in the component manifolds
...
other arguments passed to underlying mfGeometry
.
register()
component-wise registration.
mfGeomProduct$register(y_, ...)
y_
a list of objects living in the component manifolds
...
other arguments passed to underlying mfGeometry
.
register_v()
component-wise registration.
mfGeomProduct$register_v(v_, y0_, ...)
v_
a list of tangent vectors living in the component manifolds
y0_
a list of objects living in the component manifolds
...
other arguments passed to underlying mfGeometry
.
distance()
compute vector of distances in component geometries.
mfGeomProduct$distance(y0_, y1_, ...)
y0_
a list of objects living in the component manifolds
y1_
a list of objects living in the component manifolds
...
other arguments passed to underlying mfGeometry
.
exp()
loop over Exp-maps in the component geometries.
mfGeomProduct$exp(v_, y0_, ...)
v_
a list of tangent vectors living in the component manifolds
y0_
a list of objects living in the component manifolds
...
other arguments passed to underlying mfGeometry
.
log()
loop over Log-maps in the component geometries.
mfGeomProduct$log(y_, y0_, ...)
y_
a list of objects living in the component manifolds
y0_
a list of objects living in the component manifolds
...
other arguments passed to underlying mfGeometry
.
transport()
loop over parallel transports in the component geometries.
mfGeomProduct$transport(v0_, y0_, y1_, ...)
v0_
a list of tangent vectors living in the component manifolds
y0_
a list of objects living in the component manifolds
y1_
a list of objects living in the component manifolds
...
other arguments passed to underlying mfGeometry
.
innerprod()
compute vector of inner products in the component geometries. An inner product on the product space can be obtained as a scalar product of the returned vector.
mfGeomProduct$innerprod(v0_, v1_ = v0_, ...)
v0_
a list of tangent vectors living in the component manifolds
v1_
a list of tangent vectors living in the component manifolds
...
other arguments passed to underlying mfGeometry
.
plot()
loop over individual plots of the components.
mfGeomProduct$plot(y_ = self$y_, y0_ = self$pole_, main = names(y_), ...)
y_
a list of objects living in the component manifolds
y0_
a list of objects living in the component manifolds
main
vector of plot titles
...
other arguments passed to underlying mfGeometry
.
get_normal()
Obtain "design matrix" of tangent space normal vectors in unstructured long format, arranging rows into the right order after evaluating it on the components.
mfGeomProduct$get_normal(y0_ = self$pole_, weighted = FALSE)
y0_
a list of objects living in the component manifolds
weighted
logical, should inner product weights be pre-multiplied to normal vectors?
validate()
loop of validation functions of component geometries.
mfGeomProduct$validate(y_)
y_
a list of objects living in the component manifolds
clone()
The objects of this class are cloneable with this method.
mfGeomProduct$clone(deep = FALSE)
deep
Whether to make a deep clone.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.