PolyFEM
|
#include <LagrangeBasis2d.hpp>
Static Public Member Functions | |
static int | build_bases (const mesh::Mesh2D &mesh, const std::string &assembler, const int quadrature_order, const int mass_quadrature_order, const int discr_order, const bool serendipity, const bool has_polys, const bool is_geom_bases, const bool use_corner_quadrature, std::vector< ElementBases > &bases, std::vector< mesh::LocalBoundary > &local_boundary, std::map< int, InterfaceData > &poly_edge_to_data, std::shared_ptr< mesh::MeshNodes > &mesh_nodes) |
Builds FE basis functions over the entire mesh (P1, P2 over triangles, Q1, Q2 over quads). | |
static int | build_bases (const mesh::Mesh2D &mesh, const std::string &assembler, const int quadrature_order, const int mass_quadrature_order, const Eigen::VectorXi &discr_order, const bool serendipity, const bool has_polys, const bool is_geom_bases, const bool use_corner_quadrature, std::vector< ElementBases > &bases, std::vector< mesh::LocalBoundary > &local_boundary, std::map< int, InterfaceData > &poly_edge_to_data, std::shared_ptr< mesh::MeshNodes > &mesh_nodes) |
Builds FE basis functions over the entire mesh (P1, P2 over triangles, Q1, Q2 over quads). | |
static Eigen::VectorXi | tri_edge_local_nodes (const int p, const mesh::Mesh2D &mesh, mesh::Navigation::Index index) |
static Eigen::VectorXi | quad_edge_local_nodes (const int q, const mesh::Mesh2D &mesh, mesh::Navigation::Index index) |
Definition at line 19 of file LagrangeBasis2d.hpp.
|
static |
Builds FE basis functions over the entire mesh (P1, P2 over triangles, Q1, Q2 over quads).
Polygonal facets with > 4 vertices are dealt later on by the PolygonalBasis2d class.
[in] | mesh | The input planar mesh |
[in] | assembler | The pde to solve |
[in] | quadrature_order | The quadrature order |
[in] | mass_quadrature_order | The quadrature for mass matrix |
[in] | discr_order | The order for each element |
[in] | serendipity | Uses serendipity bases or not (only for quads) |
[in] | has_polys | Does the mesh has polygons, if not the interface mapping is not necessary |
[in] | is_geom_bases | Flag to decide if build geometric mapping or normal bases, used to decide if the nodes are important |
[out] | bases | List of basis functions per element |
[out] | local_boundary | List of descriptor per element, indicating which edge of the canonical elements lie on the boundary of the mesh |
[out] | poly_edge_to_data | Data for edges at the interface with a polygon (used to build the harmonics inside polygons) |
[out] | mesh_nodes | Object for retrieving assigned node IDs. |
|
static |
Builds FE basis functions over the entire mesh (P1, P2 over triangles, Q1, Q2 over quads).
Polygonal facets with > 4 vertices are dealt later on by the PolygonalBasis2d class.
[in] | mesh | The input planar mesh |
[in] | assembler | The pde to solve |
[in] | quadrature_order | The quadrature order |
[in] | mass_quadrature_order | The quadrature for mass matrix |
[in] | discr_order | The order of the elements (1-4) |
[in] | serendipity | Uses serendipity bases or not (only for quads) |
[in] | has_polys | Does the mesh has polygons, if not the interface mapping is not necessary |
[in] | is_geom_bases | Flag to decide if build geometric mapping or normal bases, used to decide if the nodes are important |
[out] | bases | List of basis functions per element |
[out] | local_boundary | List of descriptor per element, indicating which edge of the canonical elements lie on the boundary of the mesh |
[out] | poly_edge_to_data | Data for edges at the interface with a polygon (used to build the harmonics inside polygons) |
[out] | mesh_nodes | Object for retrieving assigned node IDs. |
Referenced by polyfem::mesh::Remesher::build_bases(), and polyfem::State::build_basis().
|
static |
Definition at line 642 of file LagrangeBasis2d.cpp.
References polyfem::mesh::Navigation::Index::face, polyfem::mesh::Mesh::is_cube(), polyfem::mesh::Mesh2D::switch_vertex(), and polyfem::mesh::Navigation::Index::vertex.
Referenced by polyfem::basis::SplineBasis2d::build_bases().
|
static |
Definition at line 611 of file LagrangeBasis2d.cpp.
References polyfem::mesh::Navigation::Index::face, polyfem::mesh::Mesh::is_simplex(), polyfem::mesh::Mesh2D::switch_vertex(), and polyfem::mesh::Navigation::Index::vertex.