Manicore
Library to implement schemes on n-dimensionnal manifolds.
Namespaces | Functions
geometry.hpp File Reference

Helpers to compute geometric quantities. More...

#include <Eigen/Dense>
#include <Eigen/Geometry>
#include "definitions.hpp"
Include dependency graph for geometry.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Manicore
 
 Manicore::Geometry
 

Functions

double Manicore::Geometry::volume_tetrahedron (Eigen::Vector3d const &a, Eigen::Vector3d const &b, Eigen::Vector3d const &c, Eigen::Vector3d const &d)
 Volume of a tetrahedron in 3D given by its 4 vertices. More...
 
double Manicore::Geometry::volume_triangle (Eigen::Vector3d const &x1, Eigen::Vector3d const &x2, Eigen::Vector3d const &x3)
 Area of a triangle in 3D given by its 3 vertices. More...
 
double Manicore::Geometry::volume_triangle (Eigen::Vector2d const &x1, Eigen::Vector2d const &x2, Eigen::Vector2d const &x3)
 Area of a triangle in 2D given by its 3 vertices. More...
 
template<typename T >
double Manicore::Geometry::diameter (std::vector< T > const &vl)
 Diameter of the convex hull of a vector of vertices in ND. More...
 
template<size_t dimension, size_t d>
Eigen::Matrix< double, dimension, d > Manicore::Geometry::tangent_space (std::vector< Eigen::Vector< double, dimension >> const &vl)
 Compute a possible basis for the tangent space from a vector of vertices. More...
 
template<size_t d>
Eigen::Vector< double, d > Manicore::Geometry::middleSimplex (Simplex< d > const &S)
 Compute the centroid of a simplex S. More...
 
template<size_t d>
bool Manicore::Geometry::inside (Eigen::Vector< double, d > const &x, Simplex< d > const &S)
 Is a vector x inside a simplex S. More...
 

Detailed Description

Helpers to compute geometric quantities.