manifolds-0.4.1.0: Coordinate-free hypersurfaces

Copyright(c) Justus Sagemüller 2016
LicenseGPL v3
Maintainer(@) sagemueller $ geo.uni-koeln.de
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Data.Manifold.DifferentialEquation

Contents

Description

 

Synopsis

Formulating simple differential eqns.

type DifferentialEqn x ð y = Shade (x, y) -> LocalDifferentialEqn x ð y Source

type ODE x y = DifferentialEqn x ℝ⁰ y Source

An ordinary differential equation is one that does not need any a-priori partial derivatives to compute the derivative for integration in some propagation direction. Classically, ODEs are usually understood as DifferentialEquation ℝ ℝ⁰ y, but actually x can at least be an arbitrary one-dimensional space (i.e. basically real intervals or 'S¹'). In these cases, there is always only one partial derivative: that which we integrate over, in the only possible direction for propagation.

constLinearDEqn :: forall x y ð. (SimpleSpace x, SimpleSpace y, AffineManifold y, SimpleSpace ð, AffineManifold ð, Scalar x ~ , Scalar y ~ , Scalar ð ~ ) => ((y, ð) +> (x +> y)) -> ((x +> y) +> (y, ð)) -> DifferentialEqn x ð y Source

constLinearODE :: forall x y. (SimpleSpace x, Scalar x ~ , SimpleSpace y, Scalar y ~ ) => ((x +> y) +> y) -> ODE x y Source

constLinearPDE :: forall x y ð. (WithField SimpleSpace x, WithField SimpleSpace y, WithField SimpleSpace ð, AffineManifold ð) => ((x +> y) +> ð) -> (ð +> (x +> y)) -> DifferentialEqn x ð y Source

iterateFilterDEqn_static :: (WithField Manifold x, FlatSpace (Needle x), Refinable y, Geodesic y, FlatSpace (Needle y), WithField AffineManifold ð, Geodesic ð, SimpleSpace (Needle ð), MonadPlus m) => InformationMergeStrategy [] m (x, Shade' y) iy -> Embedding (->) (Shade' y) iy -> DifferentialEqn x ð y -> PointsWeb x (Shade' y) -> Cofree m (PointsWeb x (Shade' y)) Source

Cost functions for error bounds

maxDeviationsGoal :: (WithField EuclidSpace y, SimpleSpace (Needle y)) => [Needle y] -> x -> Shade' y -> Source

uncertaintyGoal :: (WithField EuclidSpace y, SimpleSpace (Needle y)) => Metric' y -> x -> Shade' y -> Source

uncertaintyGoal' :: (WithField EuclidSpace y, SimpleSpace (Needle y)) => (x -> Metric' y) -> x -> Shade' y -> Source

euclideanVolGoal :: (WithField EuclidSpace y, SimpleSpace (Needle y)) => -> x -> Shade' y -> Source

Solver configuration