|
PISM, A Parallel Ice Sheet Model 2.2.2-d6b3a29ca committed by Constantine Khrulev on 2025-03-28
|
P1 element embedded in Q1Element2. More...
#include <Element.hh>
Inheritance diagram for pism::fem::P1Element2:Public Member Functions | |
| P1Element2 (const Grid &grid, const Quadrature &quadrature, int type) | |
Public Member Functions inherited from pism::fem::Element2 | |
| void | reset (int i, int j) |
Initialize the Element to element (i, j) for the purposes of inserting into global residual and Jacobian arrays. | |
| void | local_to_global (unsigned int k, int &i, int &j) const |
Convert a local degree of freedom index k to a global degree of freedom index (i,j). | |
| Vector2d | normal (unsigned int side) const |
| unsigned int | n_sides () const |
| double | side_length (unsigned int side) const |
| template<typename T > | |
| void | evaluate (const T *x, T *vals, T *dx, T *dy) |
| Given nodal values, compute the values and partial derivatives at the quadrature points. | |
| void | nodal_values (const array::Scalar &x_global, int *result) const |
| Get nodal values of an integer mask. | |
| template<typename T > | |
| void | nodal_values (T const *const *x_global, T *result) const |
Extract nodal values for the element (i,j) from global array x_global into the element-local array result. | |
| template<typename T > | |
| void | add_contribution (const T *local, T **y_global) const |
Add the values of element-local contributions y to the global vector y_global. | |
| template<typename T > | |
| void | evaluate (const T *x, T *result) const |
| Given nodal values, compute the values at quadrature points. | |
| void | add_contribution (const double *K, Mat J) const |
| Add Jacobian contributions. | |
| void | mark_row_invalid (unsigned int k) |
Mark that the row corresponding to local degree of freedom k should not be updated when inserting into the global residual or Jacobian arrays. | |
| void | mark_col_invalid (unsigned int k) |
Mark that the column corresponding to local degree of freedom k should not be updated when inserting into the global Jacobian arrays. | |
Public Member Functions inherited from pism::fem::Element | |
| ~Element ()=default | |
| int | n_chi () const |
| const Germ & | chi (unsigned int q, unsigned int k) const |
| unsigned int | n_pts () const |
| Number of quadrature points. | |
| double | weight (unsigned int q) const |
Weight of the quadrature point q | |
| template<typename T > | |
| void | evaluate (const T *x, T *result) const |
| Given nodal values, compute the values at quadrature points. | |
Additional Inherited Members | |
Protected Types inherited from pism::fem::Element | |
| typedef Germ(* | ShapeFunction) (unsigned int k, const QuadPoint &p) |
Protected Member Functions inherited from pism::fem::Element2 | |
| Element2 (const Grid &grid, int Nq, int n_chi, int block_size) | |
| Element2 (const DMDALocalInfo &grid_info, int Nq, int n_chi, int block_size) | |
Protected Member Functions inherited from pism::fem::Element | |
| Element (const Grid &grid, int Nq, int n_chi, int block_size) | |
| Element (const DMDALocalInfo &grid_info, int Nq, int n_chi, int block_size) | |
| void | add_contribution (const double *K, Mat J) const |
| Add Jacobian contributions. | |
| void | mark_row_invalid (unsigned int k) |
Mark that the row corresponding to local degree of freedom k should not be updated when inserting into the global residual or Jacobian arrays. | |
| void | mark_col_invalid (unsigned int k) |
Mark that the column corresponding to local degree of freedom k should not be updated when inserting into the global Jacobian arrays. | |
| void | initialize (const double J[3][3], ShapeFunction f, unsigned int n_chi, const std::vector< QuadPoint > &points, const std::vector< double > &W) |
| Initialize shape function values and quadrature weights of a 2D physical element. | |
Protected Attributes inherited from pism::fem::Element2 | |
| std::vector< Vector2d > | m_normals |
| std::vector< double > | m_side_lengths |
Protected Attributes inherited from pism::fem::Element | |
| DMDALocalInfo | m_grid |
| std::vector< int > | m_i_offset |
| std::vector< int > | m_j_offset |
| const unsigned int | m_n_chi |
| int | m_i |
| Indices of the current element. | |
| int | m_j |
| const unsigned int | m_Nq |
| Number of quadrature points. | |
| const int | m_block_size |
| std::vector< Germ > | m_germs |
| std::vector< MatStencil > | m_row |
| Stencils for updating entries of the Jacobian matrix. | |
| std::vector< MatStencil > | m_col |
| std::vector< double > | m_weights |
| Quadrature weights for a particular physical element. | |
Static Protected Attributes inherited from pism::fem::Element | |
| static const int | m_invalid_dof = -1073741824 |
P1 element embedded in Q1Element2.
Definition at line 273 of file Element.hh.