PISM, A Parallel Ice Sheet Model 2.2.0-cb3567278 committed by Constantine Khrulev on 2025-03-05
Loading...
Searching...
No Matches
Namespaces | Classes | Enumerations | Functions | Variables
pism::fem Namespace Reference

Namespaces

namespace  linear
 1D (linear) elements
 
namespace  p1
 P1 element information.
 
namespace  q0
 Q0 element information.
 
namespace  q1
 Q1 element information.
 
namespace  q13d
 Q1 element information.
 

Classes

class  DirichletData
 
class  DirichletData_Scalar
 
class  DirichletData_Vector
 
class  Element
 The mapping from global to local degrees of freedom. More...
 
class  Element2
 
class  Element3
 
class  ElementIterator
 Manages iterating over element indices. More...
 
class  Gaussian2
 
struct  Germ
 Struct for gathering the value and derivative of a function at a point. More...
 
class  P1Element2
 P1 element embedded in Q1Element2. More...
 
class  P1Quadrature3
 
class  Q13DQuadrature1
 
class  Q13DQuadrature64
 
class  Q13DQuadrature8
 
class  Q1Element2
 Q1 element with sides parallel to X and Y axes. More...
 
class  Q1Element3
 3D Q1 element More...
 
class  Q1Element3Face
 
class  Q1Quadrature1
 The 1-point Gaussian quadrature on the square [-1,1]*[-1,1]. More...
 
class  Q1Quadrature16
 The 16-point Gaussian quadrature on the square [-1,1]*[-1,1]. More...
 
class  Q1Quadrature4
 The 4-point Gaussian quadrature on the square [-1,1]*[-1,1]. More...
 
class  Q1Quadrature9
 The 9-point Gaussian quadrature on the square [-1,1]*[-1,1]. More...
 
class  Q1QuadratureN
 
struct  QuadPoint
 
class  Quadrature
 Numerical integration of finite element functions. More...
 

Enumerations

enum  ElementType {
  ELEMENT_Q = -1 , ELEMENT_P0 = 0 , ELEMENT_P1 = 1 , ELEMENT_P2 = 2 ,
  ELEMENT_P3 = 3 , ELEMENT_EXTERIOR
}
 

Functions

static double det (const double a[3][3])
 Determinant of a 3x3 matrix.
 
static Vector3 cross (const Vector3 &a, const Vector3 &b)
 Cross product of two 3D vectors.
 
static Vector3 row (const double A[3][3], size_t k)
 
static Vector3 column (const double A[3][3], size_t k)
 
static double dot (const Vector3 &v, const Germ &a)
 
static void invert (const double A[3][3], double result[3][3])
 Invert a 3x3 matrix.
 
static Germ multiply (const double A[3][3], const Germ &v)
 Compute derivatives with respect to x,y using J^{-1} and derivatives with respect to xi, eta.
 
static void set_to_identity (double A[3][3])
 
ElementType element_type (const int node_type[q1::n_chi])
 
static void tensor_product_quadrature (unsigned int n, const double *points1, const double *weights1, std::vector< QuadPoint > &points, std::vector< double > &weights)
 

Variables

const unsigned int MAX_QUADRATURE_SIZE = 9