|
DOLFIN-X
DOLFIN-X C++ interface
|
This class manages coordinate mappings for isoparametric cells. More...
#include <CoordinateElement.h>
Public Member Functions | |
| CoordinateElement (mesh::CellType cell_type, int topological_dimension, int geometric_dimension, const std::string &signature, const ElementDofLayout &dof_layout, bool is_affine, std::function< int(double *, int, int, const double *)> evaluate_basis_derivatives) | |
| Create a coordinate element. More... | |
| virtual | ~CoordinateElement ()=default |
| Destructor. | |
| std::string | signature () const |
| String identifying the finite element. More... | |
| mesh::CellType | cell_shape () const |
| Cell shape. More... | |
| int | topological_dimension () const |
| Return the topological dimension of the cell shape. | |
| int | geometric_dimension () const |
| Return the geometric dimension of the cell shape. | |
| const ElementDofLayout & | dof_layout () const |
| Return the dof layout. | |
| void | push_forward (Eigen::Ref< Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >> x, const Eigen::Ref< const Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >> &X, const Eigen::Ref< const Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >> &cell_geometry) const |
| Compute physical coordinates x for points X in the reference configuration. More... | |
| void | compute_reference_geometry (Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > &X, Eigen::Tensor< double, 3, Eigen::RowMajor > &J, Eigen::Ref< Eigen::Array< double, Eigen::Dynamic, 1 >> detJ, Eigen::Tensor< double, 3, Eigen::RowMajor > &K, const Eigen::Ref< const Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >> &x, const Eigen::Ref< const Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >> &cell_geometry) const |
| Compute reference coordinates X, and J, detJ and K for physical coordinates x. | |
This class manages coordinate mappings for isoparametric cells.
| CoordinateElement::CoordinateElement | ( | mesh::CellType | cell_type, |
| int | topological_dimension, | ||
| int | geometric_dimension, | ||
| const std::string & | signature, | ||
| const ElementDofLayout & | dof_layout, | ||
| bool | is_affine, | ||
| std::function< int(double *, int, int, const double *)> | evaluate_basis_derivatives | ||
| ) |
Create a coordinate element.
| [in] | cell_type | Cell type |
| [in] | topological_dimension | Topological dimension |
| [in] | geometric_dimension | Geometric dimension |
| [in] | signature | Signature string description of coordinate map |
| [in] | dof_layout | Layout of the geometry degrees-of-freedom |
| [in] | is_affine | Boolean flag indicating affine mapping |
| [in] | evaluate_basis_derivatives |
| mesh::CellType CoordinateElement::cell_shape | ( | ) | const |
Cell shape.
| void CoordinateElement::push_forward | ( | Eigen::Ref< Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >> | x, |
| const Eigen::Ref< const Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >> & | X, | ||
| const Eigen::Ref< const Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor >> & | cell_geometry | ||
| ) | const |
Compute physical coordinates x for points X in the reference configuration.
| [in,out] | x | The physical coordinates of the reference points X |
| [in] | X | The coordinates on the reference cells |
| [in] | cell_geometry | The cell node coordinates (physical) |
| std::string CoordinateElement::signature | ( | ) | const |
String identifying the finite element.
1.8.18