PolyDiM
C++ library for POLYtopal DIscretization Methods
Loading...
Searching...
No Matches
LocalSpace_MCC_2D.cpp File Reference
#include "LocalSpace_MCC_2D.hpp"
#include <memory>
Include dependency graph for LocalSpace_MCC_2D.cpp:

Namespaces

namespace  Polydim
 
namespace  Polydim::PDETools
 
namespace  Polydim::PDETools::LocalSpace_MCC_2D
 Unified interface to the 2D mixed conforming (MCC) local spaces.
 

Functions

ReferenceElement_Data Polydim::PDETools::LocalSpace_MCC_2D::CreateReferenceElement (const Polydim::PDETools::LocalSpace_MCC_2D::MethodTypes &method_type, const unsigned int method_order)
 Create the velocity/pressure reference elements for the chosen method and order.
 
LocalSpace_Data Polydim::PDETools::LocalSpace_MCC_2D::CreateLocalSpace (const double &geometric_tolerance_1D, const double &geometric_tolerance_2D, const Gedim::MeshUtilities::MeshGeometricData2D &mesh_geometric_data, const unsigned int cell2D_index, const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data)
 Build the coupled velocity/pressure local space on a given cell.
 
std::vector< Eigen::MatrixXd > Polydim::PDETools::LocalSpace_MCC_2D::VelocityBasisFunctionsValues (const ReferenceElement_Data &reference_element_data, const LocalSpace_Data &local_space_data, const Polydim::VEM::MCC::ProjectionTypes &projectionType=Polydim::VEM::MCC::ProjectionTypes::Pi0k)
 Evaluate the (vector) velocity/flux basis functions at the internal quadrature points.
 
std::vector< Eigen::MatrixXd > Polydim::PDETools::LocalSpace_MCC_2D::VelocityBasisFunctionsValues (const ReferenceElement_Data &reference_element_data, const LocalSpace_Data &local_space_data, const Eigen::MatrixXd &points, const Polydim::VEM::MCC::ProjectionTypes &projectionType=Polydim::VEM::MCC::ProjectionTypes::Pi0k)
 Evaluate the (vector) velocity/flux basis functions at arbitrary points.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_MCC_2D::PressureBasisFunctionsValues (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data)
 Evaluate the (scalar) pressure basis functions at the internal quadrature points.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_MCC_2D::VelocityBasisFunctionsDivergenceValues (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data)
 Evaluate the velocity/flux divergence at the internal quadrature points.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_MCC_2D::VelocityBasisFunctionsValuesOnEdges (const unsigned int &edge_local_index, const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data, const Eigen::MatrixXd &edge_quadrature_points)
 Evaluate the velocity basis functions on a given edge.
 
Gedim::Quadrature::QuadratureData Polydim::PDETools::LocalSpace_MCC_2D::EdgeReferenceQuadrature (const ReferenceElement_Data &reference_element_data)
 Quadrature rule on the reference edge.
 
Gedim::Quadrature::QuadratureData Polydim::PDETools::LocalSpace_MCC_2D::EdgeQuadrature (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data, const unsigned int edge_local_index)
 Quadrature rule on a given (physical) edge of the cell.
 
Gedim::Quadrature::QuadratureData Polydim::PDETools::LocalSpace_MCC_2D::InternalQuadrature (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data)
 Internal quadrature rule of the cell.
 
unsigned int Polydim::PDETools::LocalSpace_MCC_2D::VelocitySize (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data)
 Number of local velocity degrees of freedom of the cell.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_MCC_2D::StabilizationMatrix (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data, const Polydim::VEM::MCC::ProjectionTypes &projectionType=Polydim::VEM::MCC::ProjectionTypes::Pi0k)
 Compute the (VEM) stabilization matrix of the velocity local space.
 
Gedim::Quadrature::QuadratureData Polydim::PDETools::LocalSpace_MCC_2D::EdgeDofsCoordinates (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data, const unsigned int edge_local_index)
 Coordinates (and weights) of the velocity DOFs on a given edge.
 
Eigen::VectorXd Polydim::PDETools::LocalSpace_MCC_2D::EdgeDofs (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data, const unsigned int edge_local_index, const Gedim::Quadrature::QuadratureData &edge_dofs_coordinates, const Eigen::VectorXd &strong_values)
 Compute the edge velocity DOFs from strongly-imposed boundary values.
 
std::array< std::array< unsigned int, 4 >, 2 > Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElementNumDOFs (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data)
 Number of reference-element DOFs per mesh-entity type, for velocity and pressure.
 
Performance_Data Polydim::PDETools::LocalSpace_MCC_2D::ComputePerformance (const Polydim::PDETools::LocalSpace_MCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_MCC_2D::LocalSpace_Data &local_space_data)
 Compute the per-cell performance metrics of the local space.