PolyDiM
C++ library for POLYtopal DIscretization Methods
Loading...
Searching...
No Matches
VEM_MCC_2D_LocalSpace_Data.hpp
Go to the documentation of this file.
1// _LICENSE_HEADER_
2//
3// Copyright (C) 2019 - 2025.
4// Terms register on the GPL-3.0 license.
5//
6// This file can be redistributed and/or modified under the license terms.
7//
8// See top level LICENSE file for more details.
9//
10// This file can be used citing references in CITATION.cff file.
11
12#ifndef __VEM_MCC_2D_LocalSpace_Data_HPP
13#define __VEM_MCC_2D_LocalSpace_Data_HPP
14
15#include "Eigen/Eigen"
16#include "QuadratureData.hpp"
17#include "VEM_Quadrature_2D.hpp"
18
19namespace Polydim
20{
21namespace VEM
22{
23namespace MCC
24{
26{
29
30 Eigen::MatrixXd Vertices;
31 Eigen::Vector3d Centroid;
32 double Measure;
33 double Diameter;
34 std::vector<Eigen::Matrix3d> TriangulationVertices;
35 Eigen::VectorXd EdgesLength;
36 std::vector<bool> EdgesDirection;
37 Eigen::MatrixXd EdgesTangent;
38 Eigen::MatrixXd EdgesNormal;
39};
40
42{
43 unsigned int Order;
44
45 unsigned int Dimension;
46
48
50
53 unsigned int NumBasisFunctions;
54
57
58 Eigen::MatrixXd VanderInternal;
59 Eigen::MatrixXd VanderInternalKp1;
60
61 std::vector<Eigen::MatrixXd> FacesVanderInternal;
62
63 Eigen::VectorXd EdgeBasisCoefficients;
64
65 Eigen::MatrixXd Pi0k;
66
67 Eigen::MatrixXd Wmatrix;
68
69 double Diameter;
70 double Measure;
71 Eigen::Vector3d Centroid;
72
73 Eigen::MatrixXd Hmatrix;
74
75 Eigen::MatrixXd VanderBoundary;
76 Eigen::MatrixXd VanderBoundaryKp1;
77
78 unsigned int Nk;
79 unsigned int NkNabla;
80
81 Eigen::MatrixXd TkNabla;
82 Eigen::MatrixXd TkBigOPlus;
83 Eigen::MatrixXd GkVanderInternal;
85
86 Eigen::MatrixXd QmatrixKp1;
87 Eigen::MatrixXd QmatrixInvKp1;
88 Eigen::MatrixXd QmatrixTkNablaInv;
89 Eigen::MatrixXd QmatrixTkNabla;
90
91 Eigen::MatrixXd TkNablaDof;
92
93 Eigen::MatrixXd Bmatrix;
94 Eigen::MatrixXd Dmatrix;
95 Eigen::MatrixXd Gmatrix;
96
97 Eigen::MatrixXd Vmatrix;
98
99 std::vector<Eigen::MatrixXd> VanderBasisFunctionValuesOnFace;
100};
101
103{
104 unsigned int Order;
105 unsigned int Dimension;
106
107 unsigned int Nk;
108 unsigned int Nkm1;
109
110 unsigned int NumBasisFunctions;
111
112 double Diameter;
113 Eigen::Vector3d Centroid;
114
116
117 Eigen::MatrixXd VanderInternal;
118 Eigen::MatrixXd Qmatrix;
119 Eigen::MatrixXd Hmatrix;
120};
121
122} // namespace MCC
123} // namespace VEM
124} // namespace Polydim
125
126#endif
Definition FEM_MCC_2D_LocalSpace.cpp:17
Definition QuadratureData.hpp:22
Definition VEM_MCC_2D_LocalSpace_Data.hpp:26
std::vector< Eigen::Matrix3d > TriangulationVertices
Definition VEM_MCC_2D_LocalSpace_Data.hpp:34
double Diameter
Definition VEM_MCC_2D_LocalSpace_Data.hpp:33
double Tolerance2D
Definition VEM_MCC_2D_LocalSpace_Data.hpp:28
double Tolerance1D
Definition VEM_MCC_2D_LocalSpace_Data.hpp:27
Eigen::Vector3d Centroid
Definition VEM_MCC_2D_LocalSpace_Data.hpp:31
Eigen::VectorXd EdgesLength
Definition VEM_MCC_2D_LocalSpace_Data.hpp:35
Eigen::MatrixXd EdgesNormal
Definition VEM_MCC_2D_LocalSpace_Data.hpp:38
double Measure
Definition VEM_MCC_2D_LocalSpace_Data.hpp:32
Eigen::MatrixXd Vertices
Definition VEM_MCC_2D_LocalSpace_Data.hpp:30
Eigen::MatrixXd EdgesTangent
Definition VEM_MCC_2D_LocalSpace_Data.hpp:37
std::vector< bool > EdgesDirection
Definition VEM_MCC_2D_LocalSpace_Data.hpp:36
Definition VEM_MCC_2D_LocalSpace_Data.hpp:103
unsigned int Nkm1
Definition VEM_MCC_2D_LocalSpace_Data.hpp:108
Eigen::Vector3d Centroid
Definition VEM_MCC_2D_LocalSpace_Data.hpp:113
unsigned int Order
Definition VEM_MCC_2D_LocalSpace_Data.hpp:104
Eigen::MatrixXd Qmatrix
Definition VEM_MCC_2D_LocalSpace_Data.hpp:118
unsigned int NumBasisFunctions
Definition VEM_MCC_2D_LocalSpace_Data.hpp:110
Gedim::Quadrature::QuadratureData InternalQuadrature
Definition VEM_MCC_2D_LocalSpace_Data.hpp:115
Eigen::MatrixXd Hmatrix
Definition VEM_MCC_2D_LocalSpace_Data.hpp:119
unsigned int Dimension
Definition VEM_MCC_2D_LocalSpace_Data.hpp:105
double Diameter
Definition VEM_MCC_2D_LocalSpace_Data.hpp:112
Eigen::MatrixXd VanderInternal
Definition VEM_MCC_2D_LocalSpace_Data.hpp:117
unsigned int Nk
Definition VEM_MCC_2D_LocalSpace_Data.hpp:107
Definition VEM_MCC_2D_LocalSpace_Data.hpp:42
Eigen::MatrixXd VanderInternal
Definition VEM_MCC_2D_LocalSpace_Data.hpp:58
Eigen::MatrixXd QmatrixInvKp1
Definition VEM_MCC_2D_LocalSpace_Data.hpp:87
Eigen::MatrixXd VanderBoundaryKp1
Definition VEM_MCC_2D_LocalSpace_Data.hpp:76
double Measure
Definition VEM_MCC_2D_LocalSpace_Data.hpp:70
unsigned int Dimension
Definition VEM_MCC_2D_LocalSpace_Data.hpp:45
unsigned int NumNablaInternalBasisFunctions
Definition VEM_MCC_2D_LocalSpace_Data.hpp:49
unsigned int NumBasisFunctions
Definition VEM_MCC_2D_LocalSpace_Data.hpp:53
Eigen::MatrixXd Bmatrix
Definition VEM_MCC_2D_LocalSpace_Data.hpp:93
Eigen::MatrixXd TkBigOPlus
Definition VEM_MCC_2D_LocalSpace_Data.hpp:82
Eigen::MatrixXd Dmatrix
Definition VEM_MCC_2D_LocalSpace_Data.hpp:94
unsigned int NumBigOPlusInternalBasisFunctions
Definition VEM_MCC_2D_LocalSpace_Data.hpp:51
Eigen::MatrixXd Wmatrix
Definition VEM_MCC_2D_LocalSpace_Data.hpp:67
Eigen::Vector3d Centroid
Definition VEM_MCC_2D_LocalSpace_Data.hpp:71
Eigen::MatrixXd Gmatrix
Definition VEM_MCC_2D_LocalSpace_Data.hpp:95
unsigned int Nk
Definition VEM_MCC_2D_LocalSpace_Data.hpp:78
unsigned int Order
Definition VEM_MCC_2D_LocalSpace_Data.hpp:43
Eigen::VectorXd EdgeBasisCoefficients
Definition VEM_MCC_2D_LocalSpace_Data.hpp:63
Eigen::MatrixXd QmatrixTkNabla
Definition VEM_MCC_2D_LocalSpace_Data.hpp:89
Eigen::MatrixXd GkVanderBoundaryTimesNormal
Definition VEM_MCC_2D_LocalSpace_Data.hpp:84
Eigen::MatrixXd TkNablaDof
Definition VEM_MCC_2D_LocalSpace_Data.hpp:91
std::vector< Eigen::MatrixXd > FacesVanderInternal
Definition VEM_MCC_2D_LocalSpace_Data.hpp:61
double Diameter
Definition VEM_MCC_2D_LocalSpace_Data.hpp:69
Eigen::MatrixXd QmatrixTkNablaInv
Definition VEM_MCC_2D_LocalSpace_Data.hpp:88
Eigen::MatrixXd QmatrixKp1
Definition VEM_MCC_2D_LocalSpace_Data.hpp:86
Gedim::Quadrature::QuadratureData InternalQuadrature
Definition VEM_MCC_2D_LocalSpace_Data.hpp:55
Eigen::MatrixXd TkNabla
Definition VEM_MCC_2D_LocalSpace_Data.hpp:81
std::vector< Eigen::MatrixXd > VanderBasisFunctionValuesOnFace
Definition VEM_MCC_2D_LocalSpace_Data.hpp:99
Eigen::MatrixXd VanderInternalKp1
Definition VEM_MCC_2D_LocalSpace_Data.hpp:59
unsigned int NumInternalBasisFunctions
Definition VEM_MCC_2D_LocalSpace_Data.hpp:52
Polydim::VEM::Quadrature::VEM_Quadrature_2D::Edges_QuadratureData BoundaryQuadrature
Definition VEM_MCC_2D_LocalSpace_Data.hpp:56
Eigen::MatrixXd VanderBoundary
Definition VEM_MCC_2D_LocalSpace_Data.hpp:75
Eigen::MatrixXd GkVanderInternal
Definition VEM_MCC_2D_LocalSpace_Data.hpp:83
Eigen::MatrixXd Pi0k
Definition VEM_MCC_2D_LocalSpace_Data.hpp:65
unsigned int NumBoundaryBasisFunctions
Definition VEM_MCC_2D_LocalSpace_Data.hpp:47
unsigned int NkNabla
Definition VEM_MCC_2D_LocalSpace_Data.hpp:79
Eigen::MatrixXd Vmatrix
Definition VEM_MCC_2D_LocalSpace_Data.hpp:97
Eigen::MatrixXd Hmatrix
Definition VEM_MCC_2D_LocalSpace_Data.hpp:73