pygeon.discretizations.vem.vec_hdiv module
Module for the discretizations of the H(div) space.
- class pygeon.discretizations.vem.vec_hdiv.VecVRT0(keyword='unitary_data')[source]
Bases:
VecDiscretizationVecVRT0 is a tensor-valued discretization class for the virtual Raviart-Thomas RT0 element.
- poly_order = 1
Polynomial degree of the basis functions
- tensor_order = 2
Matrix-valued discretization
- __init__(keyword='unitary_data')[source]
Initialize the vector virtual RT0 discretization class. The base discretization class is pg.VRT0.
We are considering the following structure of the stress tensor in 2D:
\[\begin{split}\sigma = \begin{bmatrix} \sigma_{xx} & \sigma_{xy} \\ \sigma_{yx} & \sigma_{yy} \end{bmatrix}\end{split}\]which is represented in the code unrolled row-wise as a vector of length 4:
\[\sigma = [\sigma_{xx}, \sigma_{xy}, \sigma_{yx}, \sigma_{yy}]\]While in 3D the stress tensor can be written as:
\[\begin{split}\sigma = \begin{bmatrix} \sigma_{xx} & \sigma_{xy} & \sigma_{xz} \\ \sigma_{yx} & \sigma_{yy} & \sigma_{yz} \\ \sigma_{zx} & \sigma_{zy} & \sigma_{zz} \end{bmatrix}\end{split}\]where its vectorized structure of length 9 is given by:
\[\sigma = [\sigma_{xx}, \sigma_{xy}, \sigma_{xz}, \sigma_{yx}, \sigma_{yy}, \sigma_{yz}, \sigma_{zx}, \sigma_{zy}, \sigma_{zz}]\]- Parameters:
keyword (str) – The keyword for the vector discretization class. Default is pg.UNITARY_DATA.
- Returns:
None