Copyright | (c) Justus Sagemüller 2015 |
---|---|
License | GPL v3 |
Maintainer | (@) jsag $ hvl.no |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Synopsis
- class SemimanifoldWithBoundary m => Atlas m where
- type ChartIndex m :: *
- chartReferencePoint :: ChartIndex m -> m
- lookupAtlas :: m -> ChartIndex m
- type NumPrime s = (Num' s, Eq s, OpenManifold s, ProjectableBoundary s)
- type Atlas' m = (Atlas m, HasTrie (ChartIndex m))
- type AffineManifold m = (Atlas' m, Manifold m, AffineSpace m, Needle m ~ Diff m)
- type EuclidSpace x = (AffineManifold x, InnerSpace (Diff x), DualVector (Diff x) ~ Diff x, Floating (Scalar (Diff x)))
- euclideanMetric :: EuclidSpace x => proxy x -> Metric x
Documentation
class SemimanifoldWithBoundary m => Atlas m where Source #
type ChartIndex m :: * Source #
chartReferencePoint :: ChartIndex m -> m Source #
lookupAtlas :: m -> ChartIndex m Source #
Instances
type AffineManifold m = (Atlas' m, Manifold m, AffineSpace m, Needle m ~ Diff m) Source #
The AffineSpace
class plus manifold constraints.
type EuclidSpace x = (AffineManifold x, InnerSpace (Diff x), DualVector (Diff x) ~ Diff x, Floating (Scalar (Diff x))) Source #
An euclidean space is a real affine space whose tangent space is a Hilbert space.
euclideanMetric :: EuclidSpace x => proxy x -> Metric x Source #