MFEM
v4.5.2
Finite element discretization library

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...
#include <coefficient.hpp>
Public Member Functions  
Coefficient ()  
virtual void  SetTime (double t) 
Set the time for time dependent coefficients. More...  
double  GetTime () 
Get the time for time dependent coefficients. More...  
virtual double  Eval (ElementTransformation &T, const IntegrationPoint &ip)=0 
Evaluate the coefficient in the element described by T at the point ip. More...  
double  Eval (ElementTransformation &T, const IntegrationPoint &ip, double t) 
Evaluate the coefficient in the element described by T at the point ip at time t. More...  
virtual void  Project (QuadratureFunction &qf) 
Fill the QuadratureFunction qf by evaluating the coefficient at the quadrature points. More...  
virtual  ~Coefficient () 
Protected Attributes  
double  time 
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.
Definition at line 41 of file coefficient.hpp.

inline 
Definition at line 47 of file coefficient.hpp.

inlinevirtual 
Definition at line 79 of file coefficient.hpp.

pure virtual 
Evaluate the coefficient in the element described by T at the point ip.
Implemented in mfem::QuadratureFunctionCoefficient, mfem::DeterminantCoefficient, mfem::VectorRotProductCoefficient, mfem::InnerProductCoefficient, mfem::PowerCoefficient, mfem::RatioCoefficient, mfem::ProductCoefficient, mfem::SumCoefficient, mfem::ExtrudeCoefficient, mfem::DivergenceGridFunctionCoefficient, mfem::RestrictedCoefficient, mfem::DeltaCoefficient, mfem::TransformedCoefficient, mfem::GridFunctionCoefficient, mfem::FunctionCoefficient, mfem::electromagnetics::JouleHeatingCoefficient, mfem::PWCoefficient, Combo_Level_Set_Coefficient, mfem::NormalGradComponentCoeff, mfem::PProductCoefficient, Dist_Level_Set_Coefficient, mfem::NormalGradCoeff, mfem::PWConstCoefficient, mfem::GradComponentCoeff, mfem::ConstantCoefficient, mfem::electromagnetics::ScaledGFCoefficient, mfem::electromagnetics::MeshDependentCoefficient, and mfem::ShiftedFunctionCoefficient.

inline 
Evaluate the coefficient in the element described by T at the point ip at time t.
Definition at line 68 of file coefficient.hpp.

inline 
Get the time for time dependent coefficients.
Definition at line 53 of file coefficient.hpp.

virtual 
Fill the QuadratureFunction qf by evaluating the coefficient at the quadrature points.
Reimplemented in mfem::QuadratureFunctionCoefficient, mfem::GridFunctionCoefficient, and mfem::ConstantCoefficient.
Definition at line 51 of file coefficient.cpp.

inlinevirtual 
Set the time for time dependent coefficients.
Reimplemented in mfem::DeterminantCoefficient, mfem::VectorRotProductCoefficient, mfem::InnerProductCoefficient, mfem::PowerCoefficient, mfem::RatioCoefficient, mfem::ProductCoefficient, mfem::SumCoefficient, mfem::RestrictedCoefficient, mfem::DeltaCoefficient, mfem::TransformedCoefficient, and mfem::PWCoefficient.
Definition at line 50 of file coefficient.hpp.

protected 
Definition at line 44 of file coefficient.hpp.