Expand description
Concrete Riemannian manifold implementations.
Each manifold implements the traits from cartan-core using
nalgebra SVector and SMatrix types for statically-sized storage.
§Available manifolds
Euclidean<N>– R^N with the flat metric (trivial baseline)Sphere<N>– S^{N-1} in R^N with round metricSpecialOrthogonal<N>– SO(N) with bi-invariant metricSpecialEuclidean<N>– SE(N) with product metricCorr<N>– Corr(N) correlation matrices with Frobenius metric (flat)Spd<N>– SPD(N) with affine-invariant metric (Cartan-Hadamard)Grassmann<N, K>– Gr(N, K) with canonical metric
§no_std support
cartan-manifolds is no_std-compatible when the std feature is disabled:
cartan-manifolds = { version = "0.1", default-features = false, features = ["alloc"] }Available without std (requires alloc):
Euclidean<N>, Sphere<N>, SpecialOrthogonal<N>, SpecialEuclidean<N>,
Grassmann<N, K>
Requires std (eigendecomposition or imports from qtensor):
QTensor3, Corr<N>, Spd<N>, FrameField3D
Re-exports§
pub use corr::Corr;pub use euclidean::Euclidean;pub use frame_field::FrameField3D;pub use frame_field::d2_gauge_fix;pub use grassmann::Grassmann;pub use qtensor::QTensor3;pub use se::SEPoint;pub use se::SETangent;pub use se::SpecialEuclidean;pub use so::SpecialOrthogonal;pub use spd::Spd;pub use sphere::Sphere;
Modules§
- corr
- Correlation matrix manifold Corr(N) with the Frobenius metric.
- euclidean
- Euclidean space R^N.
- frame_
field - Frame fields on nematic Q-tensor configurations.
- grassmann
- Grassmann manifold Gr(N, K) of K-dimensional subspaces of R^N.
- qtensor
- Q-tensor manifold: the space of 3×3 symmetric traceless matrices.
- se
- Special Euclidean group SE(N) — rigid motions in N dimensions.
- so
- Special orthogonal group SO(N) with the bi-invariant metric.
- spd
- Symmetric Positive Definite manifold SPD(N) with the affine-invariant metric.
- sphere
- Unit sphere S^{N-1} embedded in R^N.
- util
- Matrix utility functions shared across manifold implementations.