|
size_t | n_cells (size_t d) const |
| Return the number of cell of a given dimension. More...
|
|
std::vector< size_t > const & | get_map_ids (size_t d, size_t i_cell) const |
| Return the map_ids of the i_cell-th d-cell. More...
|
|
std::vector< size_t > const & | get_boundary (size_t d_boundary, size_t d, size_t i_cell) const |
| Return a list filled with the global index of the elements on the boundary of the given dimension. More...
|
|
std::vector< size_t > const & | get_relative_map (size_t d_boundary, size_t d, size_t i_cell) const |
| The index for the mapping (of index 0) used on the element among the mappings of the boundary. More...
|
|
size_t | global_to_local (size_t d_boundary, size_t d, size_t i_b, size_t i_cell) const |
| Return the local index of the i_b d_boundary-cell with respect to the icell-th d-cell. More...
|
|
int | get_boundary_orientation (size_t d, size_t i_cell, size_t j_bd) const |
| Return the relative orientation of the j-th (d-1)-boundary of the i-th d-cell. More...
|
|
Eigen::Vector3d | get_3D_embedding (size_t m_id, Eigen::Vector< double, dimension > const &x) const |
| Interface to the extrinsic mapping. More...
|
|
Eigen::Matrix< double, 3, dimension > | get_3D_pushforward (size_t m_id, Eigen::Vector< double, dimension > const &x) const |
| Interface to the extrinsic mapping. More...
|
|
template<size_t d> |
dCell_map< dimension, d > const & | get_cell_map (size_t i) const |
| Return the i-th dCell_map. More...
|
|
Eigen::Matrix< double, dimension, dimension > | metric (size_t m_id, Eigen::Vector< double, dimension > const &x) const |
| Evaluate the metric (of the tangent space) More...
|
|
Eigen::Matrix< double, dimension, dimension > | metric_inv (size_t m_id, Eigen::Vector< double, dimension > const &x) const |
| Evaluate the metric (of the cotangent space) More...
|
|
double | volume_form (size_t m_id, Eigen::Vector< double, dimension > const &x) const |
| Evaluate the scaling factor of the volume form. More...
|
|
int | orientationTopCell (size_t i_cell) const |
| Return the relative orientation of a top dimensional cell with respect to the manifold. More...
|
|
template<size_t k, int d> |
Eigen::Matrix< double, Dimension::ExtDim(d-k, d), Dimension::ExtDim(k, d)> | getHodge (size_t i_cell, Eigen::Vector< double, d > const &x) const |
| Evaluate the hodge star operator. More...
|
|
template<size_t dimension>
class Manicore::Mesh< dimension >
Main data structure for the mesh.
The class is intended to be build with Mesh_builder, there is no public constructor.
Store a collection of dCell_graph and dCell_map and keep the shared library describing the mesh.
A dcell is a sub manifold of dimension d. It is defined by its parametrization into some reference charts. Some cells appears in several charts, hence, they have several parametrizations. The map_ids property of a cell give the id of the chart corresponding to each parametrizations (e.g. map_ids[0] is the chart corresponding to the first parametrization ...).
- Template Parameters
-
dimension | Dimension of the manifold |
template<size_t dimension>
Eigen::Matrix<double,3,dimension> Manicore::Mesh< dimension >::get_3D_pushforward |
( |
size_t |
m_id, |
|
|
Eigen::Vector< double, dimension > const & |
x |
|
) |
| const |
|
inline |
Interface to the extrinsic mapping.
Optional function to help viewing the embedding of the manifold. This is not used in any computation and can be set freely in the mesh shared library
Using the differential of I should always map into the correct tangent space, whereas J could introduce a deviation if it is not constant along the normal component.
- Parameters
-
m_id | Id of the embedding to use |
x | Location in the chart |