mfGeomPlanarShape | R Documentation |
Geometry of the 'classic' shape space identifying planar shapes with a centered and scaled complex vector on the complex sphere / complex projective space.
manifoldboost::mfGeometry
-> manifoldboost::mfGeomEuclidean
-> manifoldboost::mfGeomUnitSphere
-> mfGeomPlanarShape
new()
Initialize planar shape geometry for data given in (long) FDboost format.
mfGeomPlanarShape$new(data, formula, weight_fun = NULL, arg_range = NULL)
data
data in the format used in FDboost
.
formula
formula describing the internal structure of the data,
intended for the obj.formula
of mfboost
(interpreted by mfInterpret_objformula
).
weight_fun
a function computing inner product weights for the geometry
taking two arguments: arg
, the argument of the functional data
specified in formula
, range
the range of arg
.
arg_range
the range
supplied to the weight_fun
.
structure()
convert 2D vectors (given in long format with dimension indicator) to complex
mfGeomPlanarShape$structure(y)
y
a numeric vector representing an element of the manifold in an unstructured way. The position of elements and dimensions is obtained from the initialization of the geometry.
unstructure()
convert complex back to long format numeric
mfGeomPlanarShape$unstructure(y_)
y_
a complex vector on the sphere, orthogonal to the constant.
unstructure_weights()
double inner product weights for complex vectors to appear in both dimensions in numeric long format
mfGeomPlanarShape$unstructure_weights(weights_)
weights_
numeric vector of inner product weights matching the y_
as a complex vector.
structure_weights()
remove double weights to obtain inner product weights for complex vectors
mfGeomPlanarShape$structure_weights(weights)
weights
numeric vector of inner product weights matching the y
as a numeric vector. weights_
are duplicated for values of both dimensions.
register()
center y_
and scale it to unit norm.
mfGeomPlanarShape$register(y_)
y_
a complex vector on the sphere, orthogonal to the constant.
register_v()
orthogonally project v_
into the tangent space of y0_
.
mfGeomPlanarShape$register_v(v_, y0_ = self$pole_)
v_
a complex tangent vector.
y0_
a complex vector on the sphere, orthogonal to the constant.
log()
Apply Log function of the sphere after rotation alignment
mfGeomPlanarShape$log( y_, y0_ = self$pole_, method = c("simple", "alternative") )
y_
a complex vector on the sphere, orthogonal to the constant.
y0_
a complex vector on the sphere, orthogonal to the constant.
method
alternatives "simple" and "alternative" for the expression used to compute the sphere Log-map. Passed to parent method.
transport()
for the parallel transport previous alignment is assumed, such that the transport of the sphere is directly applied.
mfGeomPlanarShape$transport( v0_, y0_, y1_, method = c("horizontal", "simple", "general") )
v0_
a complex tangent vector.
y0_
a complex vector on the sphere, orthogonal to the constant.
y1_
a complex vector on the sphere, orthogonal to the constant.
method
expression used for parallel transport: "general" corresponds to the one of
Cornea et al. 2017, "horizontal" to the one of Dryden & Mardia 2012 p. 76,
and "simple" to a simplified version of "general" where v0_
is horizontal to y0_
. Passed to parent method.
plot()
default plotting function for planar shapes, plotting y_
in front of y0_
(after alignment).
mfGeomPlanarShape$plot( y_ = self$y_, y0_ = self$pole_, ylab = NA, xlab = NA, col = "black", ylim = range(Im(c(y_, y0_))), xlim = range(Re(c(y_, y0_))), pch = 19, asp = 1, yaxt = "n", xaxt = "n", type = "p", y0_par = list(col = "darkgrey", type = type), seg_par = list(col = "grey"), ... )
y_
a complex vector on the sphere, orthogonal to the constant.
y0_
a complex vector on the sphere, orthogonal to the constant.
ylab, xlab, xlim, ylim, xaxt, yaxt, asp
graphical parameters passed to base::plot
with modified defaults.
col, pch, type
graphical parameters passed to base::plot
referring to y_
.
y0_par
graphical parameters for y0_
.
seg_par
graphical parameters for line segments connecting y_
and y0_
.
...
other arguments passed to base::plot
.
validate()
check whether is.complex(y_)
.
mfGeomPlanarShape$validate(y_)
y_
a complex vector on the sphere, orthogonal to the constant.
get_normal()
Obtain "design matrix" of tangent space normal vectors in unstructured long format.
mfGeomPlanarShape$get_normal(y0_ = self$pole_, weighted = FALSE)
y0_
a complex vector on the sphere, orthogonal to the constant.
weighted
logical, should inner product weights be pre-multiplied to normal vectors?
clone()
The objects of this class are cloneable with this method.
mfGeomPlanarShape$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.