# manifolds: Coordinate-free hypersurfaces

Manifolds, a generalisation of the notion of “smooth curves” or surfaces,
are topological spaces *locally homeomorphic to a vector space*. This gives
rise to what is actually the most natural / mathematically elegant way of dealing
with them: calculations can be carried out locally, in connection with Riemannian
products etc., in a vector space, the tangent space / tangent bundle.

However, this does not trivially translate to non-local operations. Common ways to carry those out include using a single affine map to cover (almost) all of the manifold (in general not possible homeomorphically, which leads to both topological and geometrical problems), to embed the manifold into a larger-dimensional vector space (which tends to distract from the manifold's own properties and is often not friendly to computations) or approximating the manifold by some kind of finite simplicial mesh (which intrinsically introduces non-differentiability issues and leads to the question of what precision is required).

This library tries to mitigate these problems by using Haskell's functional nature to keep the representation close to the mathematical ideal of local linearity with homeomorphic coordinate transforms, and, where it is necessary to recede to the less elegant alternatives, exploiting lazy evaluation etc. to optimise the compromises that have to be made.

Versions | 0.1.0.0, 0.1.0.2, 0.1.3.0, 0.1.3.1, 0.1.5.0, 0.1.5.1, 0.1.5.2, 0.1.6.2, 0.1.6.3, 0.2.0.1, 0.2.2.0, 0.2.3.0, 0.3.0.0, 0.4.0.0, 0.4.1.0, 0.4.4.0, 0.4.5.0, 0.5.0.0 |
---|---|

Dependencies | array, base (>=4.5 && <6), call-stack, comonad, constrained-categories (>=0.3.1 && <0.4), containers, deepseq, free, free-vector-spaces (>=0.1.5), ieee754 (>=0.8 && <1), lens, linear, linearmap-category (>=0.3.4 && <0.4), manifolds-core (==0.5.0.0), MemoTrie, number-show (==0.1.*), placeholders, pragmatic-show, QuickCheck (>=2.8 && <3), semigroups, spatial-rotations (==0.1.*), tagged, transformers, vector, vector-space (>=0.8), void [details] |

License | GPL-3.0-only |

Author | Justus Sagemüller |

Maintainer | (@) sagemueller $ geo.uni-koeln.de |

Category | Math |

Home page | https://github.com/leftaroundabout/manifolds |

Source repo | head: git clone git://github.com/leftaroundabout/manifolds.git |

Uploaded | by leftaroundabout at Mon Jul 2 10:05:31 UTC 2018 |

Distributions | NixOS:0.5.0.0 |

Downloads | 6879 total (198 in the last 30 days) |

Rating | (no votes yet) [estimated by rule of succession] |

Your Rating | |

Status | Docs not available [build log] All reported builds failed as of 2018-07-02 [all 3 reports] Hackage Matrix CI |

## Modules

*Data**Function*- Data.Function.Affine
- Data.Function.Differentiable

- Data.Manifold
- Data.Manifold.Atlas
- Data.Manifold.DifferentialEquation
- Data.Manifold.FibreBundle
*Function*- Data.Manifold.Function.Interpolation
- Data.Manifold.Function.LocalModel

- Data.Manifold.Griddable
- Data.Manifold.Mesh
- Data.Manifold.PseudoAffine
- Data.Manifold.Riemannian
- Data.Manifold.Shade
- Data.Manifold.TreeCover
- Data.Manifold.Types
- Data.Manifold.Types.Stiefel

- Data.Manifold.Web
- Data.Manifold.Web.Internal

*Simplex*- Data.Simplex.Abstract

*Math**Manifold**Embedding**Simple*- Math.Manifold.Embedding.Simple.Class

*Real*- Math.Manifold.Real.Coordinates

## Downloads

- manifolds-0.5.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)