Manicore
Library to implement schemes on n-dimensionnal manifolds.
Public Member Functions | Public Attributes | List of all members
Manicore::ParametrizedMetricMap< dimension > Struct Template Referenceabstract

Used to specify the ambient metric. More...

#include <definitions.hpp>

Collaboration diagram for Manicore::ParametrizedMetricMap< dimension >:
Collaboration graph
[legend]

Public Member Functions

virtual Eigen::Matrix< double, dimension, dimension > metric (Eigen::Vector< double, dimension > const &) const =0
 Metric of the tangent space on a chart. More...
 
virtual Eigen::Matrix< double, dimension, dimension > metric_inv (Eigen::Vector< double, dimension > const &) const =0
 Metric of the cotangent space on a chart. More...
 
virtual double volume (Eigen::Vector< double, dimension > const &) const =0
 Scaling of the volume form on a chart. More...
 
 ParametrizedMetricMap (int o)
 Allows setting the orientation when sub classing. More...
 
virtual ~ParametrizedMetricMap ()=default
 

Public Attributes

std::vector< double > _extra
 Optional parameters that may be used within the class. More...
 
const int orientation = 0
 Orientation of the chart. More...
 

Detailed Description

template<size_t dimension>
struct Manicore::ParametrizedMetricMap< dimension >

Used to specify the ambient metric.

Template Parameters
dimensionDimension of the manifold

Constructor & Destructor Documentation

◆ ParametrizedMetricMap()

template<size_t dimension>
Manicore::ParametrizedMetricMap< dimension >::ParametrizedMetricMap ( int  o)
inline

Allows setting the orientation when sub classing.

◆ ~ParametrizedMetricMap()

template<size_t dimension>
virtual Manicore::ParametrizedMetricMap< dimension >::~ParametrizedMetricMap ( )
virtualdefault

Member Function Documentation

◆ metric()

template<size_t dimension>
virtual Eigen::Matrix<double,dimension,dimension> Manicore::ParametrizedMetricMap< dimension >::metric ( Eigen::Vector< double, dimension > const &  ) const
pure virtual

Metric of the tangent space on a chart.

◆ metric_inv()

template<size_t dimension>
virtual Eigen::Matrix<double,dimension,dimension> Manicore::ParametrizedMetricMap< dimension >::metric_inv ( Eigen::Vector< double, dimension > const &  ) const
pure virtual

Metric of the cotangent space on a chart.

This is the inverse matrix of the metric matrix

◆ volume()

template<size_t dimension>
virtual double Manicore::ParametrizedMetricMap< dimension >::volume ( Eigen::Vector< double, dimension > const &  ) const
pure virtual

Scaling of the volume form on a chart.

This is the determinant of the inverse of the metric

Member Data Documentation

◆ _extra

template<size_t dimension>
std::vector<double> Manicore::ParametrizedMetricMap< dimension >::_extra

Optional parameters that may be used within the class.

◆ orientation

template<size_t dimension>
const int Manicore::ParametrizedMetricMap< dimension >::orientation = 0

Orientation of the chart.

Should \( dx^1 \wedge dx^2 \wedge \dots \wedge dx^n \) be a direct basis ?


The documentation for this struct was generated from the following file: