MFEM  v4.5.1
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Classes | Namespaces | Typedefs | Enumerations | Functions
coefficient.hpp File Reference

Go to the source code of this file.

Classes

class  mfem::Coefficient
 Base class Coefficients that optionally depend on space and time. These are used by the BilinearFormIntegrator, LinearFormIntegrator, and NonlinearFormIntegrator classes to represent the physical coefficients in the PDEs that are being discretized. This class can also be used in a more general way to represent functions that don't necessarily belong to a FE space, e.g., to project onto GridFunctions to use as initial conditions, exact solutions, etc. See, e.g., ex4 or ex22 for these uses. More...
 
class  mfem::ConstantCoefficient
 A coefficient that is constant across space and time. More...
 
class  mfem::PWConstCoefficient
 A piecewise constant coefficient with the constants keyed off the element attribute numbers. More...
 
class  mfem::PWCoefficient
 A piecewise coefficient with the pieces keyed off the element attribute numbers. More...
 
class  mfem::FunctionCoefficient
 A general function coefficient. More...
 
class  mfem::GridFunctionCoefficient
 Coefficient defined by a GridFunction. This coefficient is mesh dependent. More...
 
class  mfem::TransformedCoefficient
 A coefficient that depends on 1 or 2 parent coefficients and a transformation rule represented by a C-function. More...
 
class  mfem::DeltaCoefficient
 Delta function coefficient optionally multiplied by a weight coefficient and a scaled time dependent C-function. More...
 
class  mfem::RestrictedCoefficient
 Derived coefficient that takes the value of the parent coefficient for the active attributes and is zero otherwise. More...
 
class  mfem::VectorCoefficient
 Base class for vector Coefficients that optionally depend on time and space. More...
 
class  mfem::VectorConstantCoefficient
 Vector coefficient that is constant in space and time. More...
 
class  mfem::PWVectorCoefficient
 A piecewise vector-valued coefficient with the pieces keyed off the element attribute numbers. More...
 
class  mfem::VectorFunctionCoefficient
 A general vector function coefficient. More...
 
class  mfem::VectorArrayCoefficient
 Vector coefficient defined by an array of scalar coefficients. Coefficients that are not set will evaluate to zero in the vector. This object takes ownership of the array of coefficients inside it and deletes them at object destruction. More...
 
class  mfem::VectorGridFunctionCoefficient
 Vector coefficient defined by a vector GridFunction. More...
 
class  mfem::GradientGridFunctionCoefficient
 Vector coefficient defined as the Gradient of a scalar GridFunction. More...
 
class  mfem::CurlGridFunctionCoefficient
 Vector coefficient defined as the Curl of a vector GridFunction. More...
 
class  mfem::DivergenceGridFunctionCoefficient
 Scalar coefficient defined as the Divergence of a vector GridFunction. More...
 
class  mfem::VectorDeltaCoefficient
 Vector coefficient defined by a scalar DeltaCoefficient and a constant vector direction. More...
 
class  mfem::VectorRestrictedCoefficient
 Derived vector coefficient that has the value of the parent vector where it is active and is zero otherwise. More...
 
class  mfem::MatrixCoefficient
 Base class for Matrix Coefficients that optionally depend on time and space. More...
 
class  mfem::MatrixConstantCoefficient
 A matrix coefficient that is constant in space and time. More...
 
class  mfem::PWMatrixCoefficient
 A piecewise matrix-valued coefficient with the pieces keyed off the element attribute numbers. More...
 
class  mfem::MatrixFunctionCoefficient
 A matrix coefficient with an optional scalar coefficient multiplier q. The matrix function can either be represented by a std function or a constant matrix provided when constructing this object. More...
 
class  mfem::MatrixArrayCoefficient
 Matrix coefficient defined by a matrix of scalar coefficients. Coefficients that are not set will evaluate to zero in the vector. The coefficient is stored as a flat Array with indexing (i,j) -> i*width+j. More...
 
class  mfem::MatrixRestrictedCoefficient
 Derived matrix coefficient that has the value of the parent matrix coefficient where it is active and is zero otherwise. More...
 
class  mfem::SumCoefficient
 Scalar coefficient defined as the linear combination of two scalar coefficients or a scalar and a scalar coefficient. More...
 
class  mfem::SymmetricMatrixCoefficient
 Base class for symmetric matrix coefficients that optionally depend on time and space. More...
 
class  mfem::SymmetricMatrixConstantCoefficient
 A matrix coefficient that is constant in space and time. More...
 
class  mfem::SymmetricMatrixFunctionCoefficient
 A matrix coefficient with an optional scalar coefficient multiplier q. The matrix function can either be represented by a std function or a constant matrix provided when constructing this object. More...
 
class  mfem::ProductCoefficient
 Scalar coefficient defined as the product of two scalar coefficients or a scalar and a scalar coefficient. More...
 
class  mfem::RatioCoefficient
 Scalar coefficient defined as the ratio of two scalars where one or both scalars are scalar coefficients. More...
 
class  mfem::PowerCoefficient
 Scalar coefficient defined as a scalar raised to a power. More...
 
class  mfem::InnerProductCoefficient
 Scalar coefficient defined as the inner product of two vector coefficients. More...
 
class  mfem::VectorRotProductCoefficient
 Scalar coefficient defined as a cross product of two vectors in the xy-plane. More...
 
class  mfem::DeterminantCoefficient
 Scalar coefficient defined as the determinant of a matrix coefficient. More...
 
class  mfem::VectorSumCoefficient
 Vector coefficient defined as the linear combination of two vectors. More...
 
class  mfem::ScalarVectorProductCoefficient
 Vector coefficient defined as a product of scalar and vector coefficients. More...
 
class  mfem::NormalizedVectorCoefficient
 Vector coefficient defined as a normalized vector field (returns v/|v|) More...
 
class  mfem::VectorCrossProductCoefficient
 Vector coefficient defined as a cross product of two vectors. More...
 
class  mfem::MatrixVectorProductCoefficient
 Vector coefficient defined as a product of a matrix coefficient and a vector coefficient. More...
 
class  mfem::IdentityMatrixCoefficient
 Constant matrix coefficient defined as the identity of dimension d. More...
 
class  mfem::MatrixSumCoefficient
 Matrix coefficient defined as the linear combination of two matrices. More...
 
class  mfem::MatrixProductCoefficient
 Matrix coefficient defined as the product of two matrices. More...
 
class  mfem::ScalarMatrixProductCoefficient
 Matrix coefficient defined as a product of a scalar coefficient and a matrix coefficient. More...
 
class  mfem::TransposeMatrixCoefficient
 Matrix coefficient defined as the transpose a matrix coefficient. More...
 
class  mfem::InverseMatrixCoefficient
 Matrix coefficient defined as the inverse a matrix coefficient. More...
 
class  mfem::OuterProductCoefficient
 Matrix coefficient defined as the outer product of two vector coefficients. More...
 
class  mfem::CrossCrossCoefficient
 Matrix coefficient defined as -a k x k x, for a vector k and scalar a. More...
 
class  mfem::VectorQuadratureFunctionCoefficient
 Vector quadrature function coefficient which requires that the quadrature rules used for this vector coefficient be the same as those that live within the supplied QuadratureFunction. More...
 
class  mfem::QuadratureFunctionCoefficient
 Quadrature function coefficient which requires that the quadrature rules used for this coefficient be the same as those that live within the supplied QuadratureFunction. More...
 
class  mfem::CoefficientVector
 Class to represent a coefficient evaluated at quadrature points. More...
 

Namespaces

 mfem
 

Typedefs

typedef VectorCoefficient mfem::DiagonalMatrixCoefficient
 
typedef
MatrixVectorProductCoefficient 
mfem::MatVecCoefficient
 Convenient alias for the MatrixVectorProductCoefficient. More...
 

Enumerations

enum  mfem::CoefficientStorage : int { mfem::CoefficientStorage::FULL = 0, mfem::CoefficientStorage::CONSTANTS = 1 << 0, mfem::CoefficientStorage::SYMMETRIC = 1 << 1, mfem::CoefficientStorage::COMPRESSED = CONSTANTS | SYMMETRIC }
 Flags that determine what storage optimizations to use in CoefficientVector. More...
 

Functions

CoefficientStorage mfem::operator| (CoefficientStorage a, CoefficientStorage b)
 
int mfem::operator& (CoefficientStorage a, CoefficientStorage b)
 
double mfem::ComputeLpNorm (double p, Coefficient &coeff, Mesh &mesh, const IntegrationRule *irs[])
 Compute the Lp norm of a function f. \( \| f \|_{Lp} = ( \int_\Omega | f |^p d\Omega)^{1/p} \). More...
 
double mfem::ComputeLpNorm (double p, VectorCoefficient &coeff, Mesh &mesh, const IntegrationRule *irs[])
 Compute the Lp norm of a vector function f = {f_i}_i=1...N. \( \| f \|_{Lp} = ( \sum_i \| f_i \|_{Lp}^p )^{1/p} \). More...
 
double mfem::ComputeGlobalLpNorm (double p, Coefficient &coeff, ParMesh &pmesh, const IntegrationRule *irs[])
 Compute the global Lp norm of a function f. \( \| f \|_{Lp} = ( \int_\Omega | f |^p d\Omega)^{1/p} \). More...
 
double mfem::ComputeGlobalLpNorm (double p, VectorCoefficient &coeff, ParMesh &pmesh, const IntegrationRule *irs[])
 Compute the global Lp norm of a vector function f = {f_i}_i=1...N. \( \| f \|_{Lp} = ( \sum_i \| f_i \|_{Lp}^p )^{1/p} \). More...