12#ifndef __I_VEM_PCC_3D_LocalSpace_HPP
13#define __I_VEM_PCC_3D_LocalSpace_HPP
52 const Eigen::MatrixXd &coercivity_matrix,
53 const Eigen::VectorXd &vector_coefficients)
const = 0;
85 const Eigen::MatrixXd &points)
const = 0;
96 const Eigen::MatrixXd &points)
const = 0;
106 const Eigen::MatrixXd &points)
const = 0;
120 const Eigen::MatrixXd &points)
const = 0;
134 const Eigen::MatrixXd &points)
const = 0;
143 const Eigen::MatrixXd &points)
const = 0;
152 const Eigen::VectorXd &pointsCurvilinearCoordinates)
const = 0;
155 const unsigned int edge_local_index)
const = 0;
Interface class for Primal Conforming Constant degree 3D Virtual Element Methods .
Definition I_VEM_PCC_3D_LocalSpace.hpp:31
virtual std::vector< Eigen::MatrixXd > ComputeBasisFunctionsDerivativeValues(const VEM_PCC_3D_ReferenceElement_Data &reference_element_data, const VEM_PCC_3D_LocalSpace_Data &localSpace, const ProjectionTypes &projectionType, const Eigen::MatrixXd &points) const =0
Compute values of a suitable projection of derivatives of basis functions at given points.
virtual Eigen::MatrixXd ComputeValuesOnEdge(const VEM_PCC_3D_ReferenceElement_Data &reference_element_data, const VEM_PCC_3D_LocalSpace_Data &localSpace, const Eigen::VectorXd &pointsCurvilinearCoordinates) const =0
Compute values of the trace of VEM basis functions at given points on an edge.
virtual Eigen::MatrixXd ComputeBasisFunctionsValues(const VEM_PCC_3D_ReferenceElement_Data &reference_element_data, const VEM_PCC_3D_LocalSpace_Data &localSpace, const ProjectionTypes &projectionType, const Eigen::MatrixXd &points) const =0
Compute values of a suitable projection of basis functions at given points.
virtual Eigen::MatrixXd ComputeDRecipeStabilizationMatrix(const VEM_PCC_3D_LocalSpace_Data &localSpace, const ProjectionTypes &projectionType, const Eigen::MatrixXd &coercivity_matrix, const Eigen::VectorXd &vector_coefficients) const =0
virtual Eigen::MatrixXd ComputeDofiDofiStabilizationMatrix(const VEM_PCC_3D_LocalSpace_Data &localSpace, const ProjectionTypes &projectionType) const =0
Compute matrix representation of dofi-dofi stabilization.
virtual std::vector< Eigen::MatrixXd > ComputeBasisFunctionsDerivativeValues(const VEM_PCC_3D_LocalSpace_Data &localSpace, const ProjectionTypes &projectionType) const =0
Compute values of a suitable projection of derivatives of basis functions at default quadrature point...
virtual std::vector< Eigen::MatrixXd > ComputePolynomialsDerivativeValues(const VEM_PCC_3D_LocalSpace_Data &localSpace) const =0
Compute values of the derivatives of the polynomial basis at default quadrature points.
virtual Eigen::MatrixXd ComputeBasisFunctionsLaplacianValues(const VEM_PCC_3D_ReferenceElement_Data &reference_element_data, const VEM_PCC_3D_LocalSpace_Data &localSpace, const ProjectionTypes &projectionType, const Eigen::MatrixXd &points) const =0
Compute values of a suitable projection of laplacian of basis functions at default quadrature points.
virtual ~I_VEM_PCC_3D_LocalSpace()
Definition I_VEM_PCC_3D_LocalSpace.hpp:33
virtual Eigen::MatrixXd ComputePolynomialsValues(const VEM_PCC_3D_LocalSpace_Data &localSpace) const =0
Compute values of the polynomial basis at default quadrature points.
virtual Eigen::MatrixXd ComputeBasisFunctionsLaplacianValues(const VEM_PCC_3D_LocalSpace_Data &localSpace, const ProjectionTypes &projectionType) const =0
Compute values of a suitable projection of laplacian of basis functions at default quadrature points.
virtual Eigen::MatrixXd ComputePolynomialsLaplacianValues(const VEM_PCC_3D_ReferenceElement_Data &reference_element_data, const VEM_PCC_3D_LocalSpace_Data &localSpace, const Eigen::MatrixXd &points) const =0
Compute values of the laplacian of the polynomial basis at given points.
virtual Eigen::MatrixXd ComputeBasisFunctionsValues(const VEM_PCC_3D_LocalSpace_Data &localSpace, const ProjectionTypes &projectionType) const =0
Compute values of a suitable projection of basis functions at default quadrature points.
virtual std::vector< Eigen::MatrixXd > ComputePolynomialsDerivativeValues(const VEM_PCC_3D_ReferenceElement_Data &reference_element_data, const VEM_PCC_3D_LocalSpace_Data &localSpace, const Eigen::MatrixXd &points) const =0
Compute values of the derivatives of the polynomial basis at given points.
virtual Eigen::MatrixXd ComputePolynomialsValues(const VEM_PCC_3D_ReferenceElement_Data &reference_element_data, const VEM_PCC_3D_LocalSpace_Data &localSpace, const Eigen::MatrixXd &points) const =0
Compute values of the polynomial basis at given points.
virtual Eigen::MatrixXd EdgeDOFsCoordinates(const Polydim::VEM::PCC::VEM_PCC_3D_LocalSpace_Data &localSpace, const unsigned int edge_local_index) const =0
virtual VEM_PCC_3D_LocalSpace_Data CreateLocalSpace(const VEM_PCC_2D_ReferenceElement_Data &reference_element_data_2D, const VEM_PCC_3D_ReferenceElement_Data &reference_element_data_3D, const VEM_PCC_3D_Polyhedron_Geometry &polyhedron) const =0
Compute data of VEM space on a polygon.
Definition VEM_PCC_3D_LocalSpace_Data.hpp:53
Definition VEM_PCC_3D_LocalSpace_Data.hpp:27
ProjectionTypes
Definition VEM_PCC_Utilities.hpp:28
Definition FEM_MCC_2D_LocalSpace.cpp:17
Definition I_VEM_PCC_2D_ReferenceElement.hpp:26
Definition I_VEM_PCC_3D_ReferenceElement.hpp:25