PolyDiM
C++ library for POLYtopal DIscretization Methods
Loading...
Searching...
No Matches
LocalSpace_DF_PCC_2D.hpp File Reference
Include dependency graph for LocalSpace_DF_PCC_2D.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data
 Method-specific reference-element data for the 2D DF_PCC local space. More...
 
class  Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data
 Per-cell local-space data for the 2D DF_PCC local space. More...
 
class  Polydim::PDETools::LocalSpace_DF_PCC_2D::Performance_Data
 Per-cell performance metrics for the 2D DF_PCC local space. More...
 
class  Polydim::PDETools::LocalSpace_DF_PCC_2D::Performance_Data::Cell2D_Performance
 

Namespaces

namespace  Polydim
 
namespace  Polydim::PDETools
 
namespace  Polydim::PDETools::LocalSpace_DF_PCC_2D
 Unified interface to the 2D divergence-free primal conforming (DF_PCC) local spaces.
 

Enumerations

enum struct  Polydim::PDETools::LocalSpace_DF_PCC_2D::MethodTypes { Polydim::PDETools::LocalSpace_DF_PCC_2D::TAYLOR_HOOD = 0 , Polydim::PDETools::LocalSpace_DF_PCC_2D::VEM_DF_PCC_FULL = 1 , Polydim::PDETools::LocalSpace_DF_PCC_2D::VEM_DF_PCC_REDUCED = 2 }
 Discretization method for the 2D DF_PCC velocity/pressure pair. More...
 

Functions

ReferenceElement_Data Polydim::PDETools::LocalSpace_DF_PCC_2D::CreateReferenceElement (const Polydim::PDETools::LocalSpace_DF_PCC_2D::MethodTypes &method_type, const unsigned int method_order)
 Create the velocity/pressure reference elements for the chosen method and order.
 
std::vector< Polydim::PDETools::DOFs::DOFsManager::MeshDOFsInfoPolydim::PDETools::LocalSpace_DF_PCC_2D::SetMeshDOFsInfo (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Gedim::MeshMatricesDAO &mesh, const std::array< Polydim::PDETools::DOFs::DOFsManager::MeshDOFsInfo::BoundaryMap, 2 > &boundary_info)
 Build the DOF layout over the mesh for the velocity and pressure fields.
 
LocalSpace_Data Polydim::PDETools::LocalSpace_DF_PCC_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_DF_PCC_2D::ReferenceElement_Data &reference_element_data)
 Build the coupled velocity/pressure local space on a given cell.
 
std::vector< Eigen::MatrixXd > Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocityBasisFunctionsValues (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data, const Polydim::VEM::DF_PCC::ProjectionTypes &projectionType=Polydim::VEM::DF_PCC::ProjectionTypes::Pi0k)
 Evaluate the (vector) velocity basis functions at the internal quadrature points.
 
std::vector< Eigen::MatrixXd > Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocityBasisFunctionsValues (const ReferenceElement_Data &reference_element_data, const LocalSpace_Data &local_space_data, const Eigen::MatrixXd &points, const Polydim::VEM::DF_PCC::ProjectionTypes &projectionType=Polydim::VEM::DF_PCC::ProjectionTypes::Pi0k)
 Evaluate the (vector) velocity basis functions at arbitrary points.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_DF_PCC_2D::PressureBasisFunctionsValues (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data)
 Evaluate the (scalar) pressure basis functions at the internal quadrature points.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_DF_PCC_2D::PressureBasisFunctionsValues (const ReferenceElement_Data &reference_element_data, const LocalSpace_Data &local_space_data, const Eigen::MatrixXd &points)
 Evaluate the (scalar) pressure basis functions at arbitrary points.
 
std::vector< Eigen::MatrixXd > Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocityBasisFunctionsDerivativeValues (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data, const Polydim::VEM::DF_PCC::ProjectionTypes &projectionType=Polydim::VEM::DF_PCC::ProjectionTypes::PiNabla)
 Evaluate the velocity basis-function derivatives at the internal quadrature points.
 
std::vector< Eigen::MatrixXd > Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocityBasisFunctionsDerivativeValues (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data, const Eigen::MatrixXd &points, const Polydim::VEM::DF_PCC::ProjectionTypes &projectionType=Polydim::VEM::DF_PCC::ProjectionTypes::PiNabla)
 Evaluate the velocity basis-function derivatives at arbitrary points.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocityBasisFunctionsDivergenceValues (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data)
 Evaluate the velocity divergence at the internal quadrature points.
 
Gedim::Quadrature::QuadratureData Polydim::PDETools::LocalSpace_DF_PCC_2D::InternalQuadrature (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data)
 Internal quadrature rule of the cell.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocityBasisFunctionsValuesOnEdge (const unsigned int &edge_local_index, const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data, const Eigen::MatrixXd &pointsCurvilinearCoordinates)
 Evaluate the velocity basis functions on a given edge.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocityStabilizationMatrix (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data, const Polydim::VEM::DF_PCC::ProjectionTypes &projectionType=Polydim::VEM::DF_PCC::ProjectionTypes::PiNabla)
 Compute the (VEM) velocity stabilization matrix of the local space.
 
Eigen::MatrixXd Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocityEdgeDofsCoordinates (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data, const unsigned int edge_local_index)
 Coordinates of the velocity DOFs associated with a given edge.
 
unsigned int Polydim::PDETools::LocalSpace_DF_PCC_2D::VelocitySize (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data)
 Number of local velocity degrees of freedom of the cell.
 
Performance_Data Polydim::PDETools::LocalSpace_DF_PCC_2D::ComputePerformance (const Polydim::PDETools::LocalSpace_DF_PCC_2D::ReferenceElement_Data &reference_element_data, const Polydim::PDETools::LocalSpace_DF_PCC_2D::LocalSpace_Data &local_space_data)
 Compute the per-cell performance metrics of the local space.
 
void Polydim::PDETools::LocalSpace_DF_PCC_2D::export_velocity_dofs (const Gedim::GeometryUtilities &geometry_utilities, const Gedim::MeshMatricesDAO &mesh, const Gedim::MeshUtilities::MeshGeometricData2D &mesh_geometric_data, const std::vector< Polydim::PDETools::DOFs::DOFsManager::MeshDOFsInfo > &mesh_dofs_info, const std::vector< DOFs::DOFsManager::DOFsData > &dofs_data, const Polydim::PDETools::Assembler_Utilities::count_dofs_data &count_dofs, const Gedim::IArray &right_hand_side, const Gedim::IArray &solution, const Gedim::IArray &solution_strongs, const std::string &file_path)
 Export the velocity DOFs and solution fields to file for visualization.