Feel++ 0.111.0-preview.14
Finite Element Embedded Library in C++
Feel::MeshAdaptation< Dim, Order, OrderGeo > Class Template Reference
+ Collaboration diagram for Feel::MeshAdaptation< Dim, Order, OrderGeo >:

Public Types

typedef std::shared_ptr< backend_type > backend_ptrtype
 linear algebra backend factory shared_ptr<> type
 
typedef Backend< double > backend_type
 linear algebra backend factory
 
typedef Simplex< Dim, OrderGeo, Dim > convex_type
 
typedef space_type::element_type element_type
 
typedef std::shared_ptr< export_type > export_ptrtype
 the exporter factory (shared_ptr<> type)
 
typedef Exporter< mesh_type > export_type
 the exporter factory type
 
typedef Eigen::Matrix< double, Dim, Dim > matrixN_type
 
typedef std::shared_ptr< mesh_type > mesh_ptrtype
 mesh shared_ptr<> type
 
typedef Mesh< convex_type > mesh_type
 mesh type
 
typedef std::list< std::pair< std::vector< p1_element_type >, std::string > > metric_list_type
 
typedef p0_space_type::element_type p0_element_type
 
typedef std::shared_ptr< p0_space_type > p0_space_ptrtype
 
typedef Pdh_type< mesh_type, 0 > p0_space_type
 Scalar P0 space.
 
typedef p1_space_type::element_type p1_element_type
 
typedef std::shared_ptr< p1_space_type > p1_space_ptrtype
 
typedef Pch_type< mesh_type, 1 > p1_space_type
 
typedef bases< Lagrange< 1, Vectorial > > p1vec_basis_type
 Vectorial P1 space.
 
typedef p1vec_space_type::element_type p1vec_element_type
 
typedef std::shared_ptr< p1vec_space_type > p1vec_space_ptrtype
 
typedef FunctionSpace< mesh_type, p1vec_basis_type > p1vec_space_type
 
typedef mesh_type::point_type point_type
 
typedef std::shared_ptr< space_type > space_ptrtype
 
typedef Pch_type< mesh_type, Order > space_type
 
typedef backend_type::sparse_matrix_ptrtype sparse_matrix_ptrtype
 sparse matrix type associated with backend (shared_ptr<> type)
 
typedef backend_type::sparse_matrix_type sparse_matrix_type
 sparse matrix type associated with backend
 
typedef backend_type::vector_ptrtype vector_ptrtype
 vector type associated with backend (shared_ptr<> type)
 
typedef backend_type::vector_type vector_type
 vector type associated with backend
 
typedef Eigen::Matrix< double, Dim, 1 > vectorN_type
 

Public Member Functions

template<typename ... Ts>
mesh_ptrtype adaptMesh (Ts &&... v)
 Mesh adaptation interface.
 
std::string adaptMeshHess1 (element_type &U, const mesh_ptrtype &mesh, double hMin, double hMax, std::string name, std::string geofile, double tol, bool aniso)
 Mesh adaptation from Hessian matrix.
 
std::string adaptMeshHess2 (element_type &U, const mesh_ptrtype &mesh, double hMin, double hMax, std::string name, std::string geofile, double tol, bool aniso)
 
std::string adaptMeshHess2 (element_type &U, const mesh_ptrtype &mesh, double hMin, double hMax, std::string name, std::string geofile, double tol, bool aniso, mpl::bool_< false >)
 
std::string adaptMeshHess2 (element_type &U, const mesh_ptrtype &mesh, double hMin, double hMax, std::string name, std::string geofile, double tol, bool aniso, mpl::bool_< true >)
 
mesh_ptrtype adaptMeshImpl (const mesh_ptrtype &initMesh, std::string geofile, std::string adaptType, std::list< std::pair< element_type, std::string > > var, std::list< std::pair< std::vector< p1_element_type >, std::string > > metric, double hMin, double hMax, double tol)
 Interface.
 
std::string buildAdaptedMesh (std::string geofile, std::string name, std::vector< std::string > posfiles, bool aniso)
 Build adapted mesh.
 
void computeMetric (const double tol, const double h_min, const double h_max, const matrixN_type &hessian_matrix, matrixN_type &M, double &max_eigenvalue, int dofId)
 Compute the metric for mesh adaptation using hessian matrix.
 
std::string createAdaptedGeo (std::string geofile, std::string name, std::vector< std::string > posfiles, bool aniso)
 Adapt geofile for mesh adaptation.
 
std::string createPosfile (std::string name_var, const p1_element_type &bbNewMap, const mesh_ptrtype &mesh)
 Generates a GMSH post processing file (for mesh adaptation)
 
std::string createPosfileAnisotropic (std::string nameVar, const std::vector< p1_element_type > &bbNewMap, const mesh_ptrtype &mesh)
 
std::vector< matrixN_type > const directions ()
 Set of directions on a dof.
 
std::vector< vectorN_type > const measures ()
 Set of measures on a dof.
 
 MeshAdaptation ()
 Constructor.
 
std::string pastePosFilesTogether (std::vector< std::string >const &posFiles)
 Paste several pos files together (for parallel adaptation only)
 

Static Public Member Functions

static metric_list_type makeMetricList (p1_element_type &metric, std::string metric_name)
 
static metric_list_type makeMetricList (std::vector< p1_element_type > &metrics, std::string metric_name)
 

Static Public Attributes

static const bool isP1 = (Order == 1)