NeoPZ
|
Implements two equations where the second one requires the solution of the first. More...
#include <pzcoupledtransportdarcy.h>
Public Member Functions | |
virtual TPZBndCond * | CreateBC (TPZMaterial *mat, int id, int typ, TPZFMatrix< STATE > &val1, TPZFMatrix< STATE > &val2) override |
Creates an object TPZBndCond derived of TPZMaterial. More... | |
TPZCoupledTransportDarcyBC * | CreateBC2 (int id) |
void | UpdateConvectionDir (TPZFMatrix< STATE > &dsol) |
void | UpdateConvectionDirInterface (TPZFMatrix< STATE > &dsolL, TPZFMatrix< STATE > &dsolR) |
virtual int | HasForcingFunction () override |
Directive that gives true if the material has a forcing function. More... | |
TPZMatPoisson3d * | GetCurrentMaterial () const |
TPZMatPoisson3d * | GetMaterial (int eq) |
TPZCoupledTransportDarcy (int nummat, int nummat0, int nummat1, int dim) | |
virtual | ~TPZCoupledTransportDarcy () |
TPZCoupledTransportDarcy (TPZCoupledTransportDarcy ©) | |
virtual TPZMaterial * | NewMaterial () override |
To create another material of the same type. More... | |
virtual int | Dimension () const override |
Returns the integrable dimension of the material. More... | |
virtual int | NStateVariables () const override |
Returns the number of state variables associated with the material. More... | |
void | SetAlpha (REAL alpha) |
virtual void | Print (std::ostream &out) override |
Prints out the data associated with the material. More... | |
virtual std::string | Name () override |
Returns the name of the material. More... | |
virtual void | Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override |
It computes a contribution to the stiffness matrix and load vector at one integration point. More... | |
virtual void | ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
It computes a contribution to the stiffness matrix and load vector at one BC integration point. More... | |
virtual void | Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef) override |
It computes a contribution to the residual vector at one integration point. More... | |
virtual void | ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
It computes a contribution to the stiffness matrix and load vector at one BC integration point. More... | |
virtual int | VariableIndex (const std::string &name) override |
virtual int | NSolutionVariables (int var) override |
Returns the number of variables associated with the variable indexed by var. More... | |
virtual int | NFluxes () override |
Returns the number of components which form the flux function. More... | |
virtual void | SolutionDisc (TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, int var, TPZVec< STATE > &Solout) |
Returns the solution associated with the var index based on the finite element approximation. More... | |
virtual void | Flux (TPZVec< REAL > &x, TPZVec< STATE > &Sol, TPZFMatrix< STATE > &DSol, TPZFMatrix< REAL > &axes, TPZVec< STATE > &flux) override |
Compute the value of the flux function to be used by ZZ error estimator. More... | |
void | Errors (TPZVec< REAL > &x, TPZVec< STATE > &u, TPZFMatrix< STATE > &dudx, TPZFMatrix< REAL > &axes, TPZVec< STATE > &flux, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &values) override |
Computes the error due to the difference between the interpolated flux and the flux computed based on the derivative of the solution. More... | |
virtual void | ContributeInterface (TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override |
It computes a contribution to stiffness matrix and load vector at one integration point. More... | |
virtual void | ContributeBCInterface (TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
It computes a contribution to stiffness matrix and load vector at one BC integration point. More... | |
virtual void | ContributeInterface (TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, REAL weight, TPZFMatrix< STATE > &ef) override |
It computes a contribution to residual vector at one integration point. More... | |
virtual void | ContributeBCInterface (TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
It computes a contribution to residual vector at one BC integration point. More... | |
void | InterfaceErrors (TPZVec< REAL > &, TPZVec< STATE > &leftu, TPZFMatrix< STATE > &leftdudx, TPZVec< STATE > &rightu, TPZFMatrix< STATE > &rightdudx, TPZVec< STATE > &, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &values, TPZVec< REAL > normal, REAL elsize) |
virtual int | IsInterfaceConservative () override |
Dicontinuous galerkin materials implement contribution of discontinuous elements and interfaces. More... | |
virtual int | ClassId () const override |
Unique identifier for serialization purposes. More... | |
Public Member Functions inherited from TPZDiscontinuousGalerkin | |
TPZDiscontinuousGalerkin () | |
Simple constructor. More... | |
TPZDiscontinuousGalerkin (int nummat) | |
Constructor with the index of the material object within the vector. More... | |
TPZDiscontinuousGalerkin (const TPZDiscontinuousGalerkin ©) | |
Copy constructor. More... | |
virtual | ~TPZDiscontinuousGalerkin () |
Destructor. More... | |
virtual void | FillDataRequirementsInterface (TPZMaterialData &data) override |
Fill material data parameter with necessary requirements for the ContributeInterface method. More... | |
virtual int | GetIntegrationOrder (TPZVec< int > &porder_left, TPZVec< int > &porder_right) const |
return the integration order as a function of interpolation orders of the left and right elements More... | |
virtual void | InterfaceJump (TPZVec< REAL > &x, TPZSolVec &leftu, TPZSolVec &rightu, TPZSolVec &jump) |
Computes interface jump = leftu - rightu. More... | |
virtual void | BCInterfaceJump (TPZVec< REAL > &x, TPZSolVec &leftu, TPZBndCond &bc, TPZSolVec &jump) |
Computes interface jump from element to Dirichlet boundary condition. It has to reimplemented. More... | |
virtual void | ContributeInterfaceErrors (TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, REAL weight, TPZVec< STATE > &nkL, TPZVec< STATE > &nkR, int &errorid) |
virtual void | ContributeInterfaceBCErrors (TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZVec< STATE > &nk, TPZBndCond &bc, int &errorid) |
virtual void | Errors (TPZMaterialData &data, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &errors) override |
virtual void | Errors (TPZVec< TPZMaterialData > &data, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &errors) override |
virtual void | Contribute (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override |
It computes a contribution to the stiffness matrix and load vector at one integration point to multiphysics simulation. More... | |
virtual void | Contribute (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ef) override |
It computes a contribution to the stiffness matrix and load vector at one integration point to multiphysics simulation. More... | |
virtual void | ContributeBC (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
It computes a contribution to the stiffness matrix and load vector at one BC integration point to multiphysics simulation. More... | |
virtual void | ContributeBC (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
It computes a contribution to the stiffness matrix and load vector at one BC integration point to multiphysics simulation. More... | |
virtual void | ContributeInterface (TPZVec< TPZMaterialData > &datavec, TPZVec< TPZMaterialData > &dataleftvec, TPZVec< TPZMaterialData > &datarightvec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) |
virtual void | ContributeInterface (TPZMaterialData &data, TPZVec< TPZMaterialData > &dataleft, TPZVec< TPZMaterialData > &dataright, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) |
Computes a contribution to the stiffness matrix and load vector at one integration point to multiphysics simulation. More... | |
virtual void | ContributeInterface (TPZMaterialData &data, TPZVec< TPZMaterialData > &dataleft, TPZVec< TPZMaterialData > &dataright, REAL weight, TPZFMatrix< STATE > &ef) |
Computes a contribution to residual vector at one integration point. More... | |
virtual void | ContributeBCInterface (TPZMaterialData &data, TPZVec< TPZMaterialData > &dataleft, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) |
It computes a contribution to stiffness matrix and load vector at one BC integration point to multiphysics simulation. More... | |
void | SolutionDisc (TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, int var, TPZVec< STATE > &Solout) |
Returns the solution associated with the var index based on the finite element approximation. More... | |
void | Write (TPZStream &buf, int withclassid) const override |
Saves the element data to a stream. More... | |
void | Read (TPZStream &buf, void *context) override |
Reads the element data from a stream. More... | |
Public Member Functions inherited from TPZMaterial | |
TPZMaterial (int id) | |
Creates a material object and inserts it in the vector of material pointers of the mesh. More... | |
TPZMaterial () | |
Default constructor. More... | |
TPZMaterial (const TPZMaterial &mat) | |
Creates a material object based on the referred object and inserts it in the vector of material pointers of the mesh. More... | |
TPZMaterial & | operator= (const TPZMaterial ©) |
operator = More... | |
virtual | ~TPZMaterial () |
Default destructor. More... | |
virtual void | FillDataRequirements (TPZMaterialData &data) |
Fill material data parameter with necessary requirements for the. More... | |
virtual void | FillDataRequirements (TPZVec< TPZMaterialData > &datavec) |
Fill material data parameter with necessary requirements for the Contribute method. Here, in base class, all requirements are considered as necessary. Each derived class may optimize performance by selecting only the necessary data. More... | |
virtual void | FillBoundaryConditionDataRequirement (int type, TPZMaterialData &data) |
This method defines which parameters need to be initialized in order to compute the contribution of the boundary condition. More... | |
virtual void | FillBoundaryConditionDataRequirement (int type, TPZVec< TPZMaterialData > &datavec) |
This method defines which parameters need to be initialized in order to compute the contribution of the boundary condition. More... | |
virtual void | FillDataRequirementsInterface (TPZMaterialData &data, TPZVec< TPZMaterialData > &datavec_left, TPZVec< TPZMaterialData > &datavec_right) |
This method defines which parameters need to be initialized in order to compute the contribution of interface elements. More... | |
int | Id () const |
void | SetId (int id) |
int | NumLoadCases () |
returns the number of load cases for this material object More... | |
virtual int | MinimumNumberofLoadCases () |
returns the minimum number of load cases for this material More... | |
void | SetNumLoadCases (int numloadcases) |
changes the number of load cases for this material More... | |
void | SetPostProcessIndex (int index) |
indicates which variable should be post processed More... | |
void | SetForcingFunction (TPZAutoPointer< TPZFunction< STATE > > fp) |
Sets a procedure as source function for the material. More... | |
void | SetForcingFunction (void(*fp)(const TPZVec< REAL > &loc, TPZVec< STATE > &result), int porder) |
void | SetForcingFunction (void(*fp)(const TPZVec< REAL > &loc, TPZVec< STATE > &result, TPZFMatrix< STATE > &gradu), int porder) |
TPZAutoPointer< TPZFunction< STATE > > & | ForcingFunction () |
Returns a procedure as source function for the material. More... | |
void | SetForcingFunctionExact (TPZAutoPointer< TPZFunction< STATE > > fp) |
Sets a procedure as exact solution for the problem. More... | |
TPZAutoPointer< TPZFunction< STATE > > & | ForcingFunctionExact () |
Returns a procedure as exact solution for the problem. More... | |
void | SetTimeDependentForcingFunction (TPZAutoPointer< TPZFunction< STATE > > fp) |
Sets a procedure as time dependent source function for the material. More... | |
TPZAutoPointer< TPZFunction< STATE > > & | TimeDependentForcingFunction () |
Returns a procedure as time dependent source function for the material. More... | |
void | SetTimeDependentFunctionExact (TPZAutoPointer< TPZFunction< STATE > > fp) |
Sets a procedure as time dependent exact solution for the problem. More... | |
TPZAutoPointer< TPZFunction< STATE > > & | TimedependentFunctionExact () |
Returns a procedure as time dependent exact solution for the problem. More... | |
void | SetBCForcingFunction (TPZAutoPointer< TPZFunction< STATE > > fp) |
Sets a procedure as variable boundary condition. More... | |
TPZAutoPointer< TPZFunction< STATE > > & | BCForcingFunction () |
Returns a procedure as variable boundary condition. More... | |
void | SetTimedependentBCForcingFunction (TPZAutoPointer< TPZFunction< STATE > > fp) |
Sets a procedure as time variable boundary condition. More... | |
TPZAutoPointer< TPZFunction< STATE > > & | TimedependentBCForcingFunction () |
Returns a procedure as time variable boundary condition. More... | |
virtual int | HasForcingFunctionExact () |
Directive that gives true if the material has a function exact. More... | |
virtual int | HasBCForcingFunction () |
Directive that gives true if the material has a bc forcing function exact. More... | |
virtual int | HasTimedependentFunctionExact () |
Directive that gives true if the material has a time dependent function exact. More... | |
virtual int | HasTimedependentForcingFunction () |
Directive that gives true if the material has a time dependent forcing function. More... | |
virtual int | HasTimedependentBCForcingFunction () |
Directive that gives true if the material has a time dependent bc forcing function. More... | |
virtual int | IntegrationRuleOrder (int elPMaxOrder) const |
Gets the order of the integration rule necessary to integrate an element with polinomial order p. More... | |
virtual int | IntegrationRuleOrder (TPZVec< int > &elPMaxOrder) const |
Gets the order of the integration rule necessary to integrate an element multiphysic. More... | |
virtual void | ErrorsHdiv (TPZMaterialData &data, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &values) |
virtual int | NEvalErrors () |
Returns the number of norm errors. Default is 3: energy, L2 and H1. More... | |
virtual void | SetData (std::istream &data) |
Reads data of the material from a istream (file data) More... | |
virtual void | Clone (std::map< int, TPZMaterial * > &matvec) |
Creates a copy of the material object and put it in the vector which is passed on. More... | |
virtual int | FluxType () |
To return a numerical flux type to apply over the interfaces of the elements. More... | |
virtual void | ContributeErrors (TPZMaterialData &data, REAL weight, TPZVec< REAL > &nk, int &errorid) |
virtual REAL | ComputeSquareResidual (TPZVec< REAL > &X, TPZVec< STATE > &sol, TPZFMatrix< STATE > &dsol) |
Computes square of residual of the differential equation at one integration point. More... | |
virtual int | PushMemItem (int sourceIndex=-1) |
Pushes a new entry in the context of materials with memory, returning its index at the internal storage stack. More... | |
virtual void | FreeMemItem (int index) |
Frees an entry in the material with memory internal history storage. More... | |
void | SetLinearContext (bool IsLinear) |
Sets fLinearContext attribute. More... | |
bool | GetLinearContext () const |
Returns fLinearContext attribute. More... | |
int | ClassId () const override |
Unique identifier for serialization purposes. More... | |
void | Write (TPZStream &buf, int withclassid) const override |
Saves the element data to a stream. More... | |
void | Read (TPZStream &buf, void *context) override |
Reads the element data from a stream. More... | |
virtual void | Solution (TPZMaterialData &data, int var, TPZVec< STATE > &Solout) |
Returns the solution associated with the var index based on the finite element approximation. More... | |
virtual void | Solution (TPZVec< TPZMaterialData > &datavec, int var, TPZVec< STATE > &Solout) |
Returns the solution associated with the var index based on the finite element approximation. More... | |
virtual void | Solution (TPZMaterialData &data, TPZVec< TPZMaterialData > &dataleftvec, TPZVec< TPZMaterialData > &datarightvec, int var, TPZVec< STATE > &Solout) |
Returns the solution associated with the var index based on the finite element approximation around one interface element. More... | |
virtual void | Solution (TPZMaterialData &data, TPZVec< TPZMaterialData > &dataleftvec, TPZVec< TPZMaterialData > &datarightvec, int var, TPZVec< STATE > &Solout, TPZCompEl *left, TPZCompEl *ritgh) |
Returns the solution associated with the var index based on the finite element approximation around one interface element. More... | |
Public Member Functions inherited from TPZSavable | |
TPZSavable () | |
virtual | ~TPZSavable () |
virtual std::list< std::map< std::string, uint64_t > > | VersionHistory () const |
virtual std::pair< std::string, uint64_t > | Version () const |
virtual bool | Compare (TPZSavable *copy, bool override=false) |
Compares the object for identity with the object pointed to, eventually copy the object. More... | |
virtual bool | Compare (TPZSavable *copy, bool override=false) const |
Compares the object for identity with the object pointed to, eventually copy the object. More... | |
Public Member Functions inherited from TPZRegisterClassId | |
template<typename T > | |
TPZRegisterClassId (int(T::*)() const) | |
TPZRegisterClassId ()=default | |
Static Public Member Functions | |
static void | SetCurrentMaterial (const int i) |
static int | CurrentEquation () |
Static Public Member Functions inherited from TPZSavable | |
static std::set< TPZRestoreClassBase * > & | RestoreClassSet () |
This static function guarantees that the gMap object is available when needed. More... | |
static std::map< int, TPZRestore_t > & | ClassIdMap () |
This static function guarantees that the gMap object is available when needed. More... | |
static std::pair< std::string, uint64_t > | NeoPZVersion () |
static void | Register (TPZRestoreClassBase *restore) |
static void | RegisterClassId (int classid, TPZRestore_t fun) |
static TPZSavable * | CreateInstance (const int &classId) |
Protected Member Functions | |
virtual void | Solution (TPZVec< STATE > &Sol, TPZFMatrix< STATE > &DSol, TPZFMatrix< REAL > &axes, int var, TPZVec< STATE > &Solout) override |
Protected Member Functions inherited from TPZMaterial |
Protected Attributes | |
REAL | fAlpha |
In second equation: . Here alpha is stored. More... | |
Two instances of TPZMatPoisson3d | |
TPZMaterial * | fMaterialRefs [2] |
TPZMatPoisson3d * | fMaterials [2] |
Protected Attributes inherited from TPZMaterial | |
TPZAutoPointer< TPZFunction< STATE > > | fForcingFunction |
Pointer to forcing function, it is the right member at differential equation. More... | |
TPZAutoPointer< TPZFunction< STATE > > | fForcingFunctionExact |
Pointer to exact solution function, needed to calculate exact error. More... | |
TPZAutoPointer< TPZFunction< STATE > > | fTimeDependentForcingFunction |
Pointer to time dependent forcing function, it is the right member at differential equation. More... | |
TPZAutoPointer< TPZFunction< STATE > > | fTimedependentFunctionExact |
Pointer to time dependent exact solution function, needed to calculate exact error. More... | |
TPZAutoPointer< TPZFunction< STATE > > | fBCForcingFunction |
Pointer to bc forcing function, it is a variable boundary condition at differential equation. More... | |
TPZAutoPointer< TPZFunction< STATE > > | fTimedependentBCForcingFunction |
Pointer to time dependent bc forcing function, it is a variable boundary condition at differential equation. More... | |
bool | fLinearContext |
Defines whether the equation context is linear solver or non linear. More... | |
int | fNumLoadCases |
Defines the number of load cases generated by this material. More... | |
int | fPostProcIndex |
indicates which solution should be used for post processing More... | |
Static Protected Attributes | |
static int | gCurrentEq |
Additional Inherited Members | |
Static Public Attributes inherited from TPZMaterial | |
static REAL | gBigNumber |
Big number to penalization method, used for Dirichlet conditions. More... | |
Implements two equations where the second one requires the solution of the first.
First equation is
Second equation is
where and are constants and
Both equations are implemented by TPZMatPoisson3d material.
This material has two instances of TPZMatPoisson3d. In a first moment it behaves like first equation.
Once the problem is solved, it behaves like the second equation.
In the latter case beta value is set when Contribute is called by processing the solution of the previous equation.
Definition at line 29 of file pzcoupledtransportdarcy.h.
TPZCoupledTransportDarcy::TPZCoupledTransportDarcy | ( | int | nummat, |
int | nummat0, | ||
int | nummat1, | ||
int | dim | ||
) |
Definition at line 26 of file pzcoupledtransportdarcy.cpp.
References fMaterialRefs, and fMaterials.
Referenced by GetMaterial(), and NewMaterial().
|
virtual |
Definition at line 39 of file pzcoupledtransportdarcy.cpp.
Referenced by GetMaterial().
|
inline |
Definition at line 100 of file pzcoupledtransportdarcy.h.
References fMaterialRefs, and fMaterials.
|
overridevirtual |
Unique identifier for serialization purposes.
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 163 of file pzcoupledtransportdarcy.cpp.
References TPZDiscontinuousGalerkin::ClassId(), and Hash().
Referenced by IsInterfaceConservative().
|
overridevirtual |
It computes a contribution to the stiffness matrix and load vector at one integration point.
data | [in] stores all input data |
weight | [in] is the weight of the integration rule |
ek | [out] is the stiffness matrix |
ef | [out] is the load vector |
Implements TPZDiscontinuousGalerkin.
Definition at line 77 of file pzcoupledtransportdarcy.cpp.
References TPZMatPoisson3d::Contribute(), DebugStop, TPZMaterialData::dsol, GetCurrentMaterial(), TPZVec< T >::size(), and UpdateConvectionDir().
Referenced by Name().
|
inlineoverridevirtual |
It computes a contribution to the residual vector at one integration point.
data | [in] stores all input data |
weight | [in] is the weight of the integration rule |
ef | [out] is the residual vector |
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 135 of file pzcoupledtransportdarcy.h.
References TPZDiscontinuousGalerkin::Contribute().
|
overridevirtual |
It computes a contribution to the stiffness matrix and load vector at one BC integration point.
data | [in] stores all input data |
weight | [in] is the weight of the integration rule |
ek | [out] is the stiffness matrix |
ef | [out] is the load vector |
bc | [in] is the boundary condition material |
Implements TPZDiscontinuousGalerkin.
Definition at line 89 of file pzcoupledtransportdarcy.cpp.
References TPZMatPoisson3d::ContributeBC(), and GetCurrentMaterial().
Referenced by Name().
|
inlineoverridevirtual |
It computes a contribution to the stiffness matrix and load vector at one BC integration point.
data | [in] stores all input data |
weight | [in] is the weight of the integration rule |
ef | [out] is the load vector |
bc | [in] is the boundary condition material |
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 141 of file pzcoupledtransportdarcy.h.
References TPZDiscontinuousGalerkin::ContributeBC(), NSolutionVariables(), and VariableIndex().
|
overridevirtual |
It computes a contribution to stiffness matrix and load vector at one BC integration point.
data | [in] |
dataleft | [in] |
weight | [in] |
ek | [out] is the stiffness matrix |
ef | [out] is the load vector |
bc | [in] is the boundary condition object |
Implements TPZDiscontinuousGalerkin.
Definition at line 64 of file pzcoupledtransportdarcy.cpp.
References TPZMatPoisson3d::ContributeBCInterface(), DebugStop, TPZMaterialData::dsol, GetCurrentMaterial(), TPZVec< T >::size(), and UpdateConvectionDir().
Referenced by SolutionDisc().
|
inlineoverridevirtual |
It computes a contribution to residual vector at one BC integration point.
data | [in] |
dataleft | [in] |
weight | [in] |
ef | [out] is the load vector |
bc | [in] is the boundary condition object |
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 193 of file pzcoupledtransportdarcy.h.
References TPZDiscontinuousGalerkin::ContributeBCInterface(), and InterfaceErrors().
|
overridevirtual |
It computes a contribution to stiffness matrix and load vector at one integration point.
data | [in] |
dataleft | [in] |
dataright | [in] |
weight | [in] |
ek | [out] is the stiffness matrix |
ef | [out] is the load vector |
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 52 of file pzcoupledtransportdarcy.cpp.
References TPZMatPoisson3d::ContributeInterface(), DebugStop, TPZMaterialData::dsol, GetCurrentMaterial(), TPZVec< T >::size(), and UpdateConvectionDirInterface().
Referenced by SolutionDisc().
|
inlineoverridevirtual |
It computes a contribution to residual vector at one integration point.
data | [in] |
dataleft | [in] |
dataright | [in] |
weight | [in] |
ef | [out] is the load vector |
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 186 of file pzcoupledtransportdarcy.h.
References TPZDiscontinuousGalerkin::ContributeInterface().
|
inlineoverridevirtual |
Creates an object TPZBndCond derived of TPZMaterial.
Reimplemented from TPZMaterial.
Definition at line 46 of file pzcoupledtransportdarcy.h.
References CreateBC2(), CurrentEquation(), PZError, SetCurrentMaterial(), UpdateConvectionDir(), and UpdateConvectionDirInterface().
TPZCoupledTransportDarcyBC * TPZCoupledTransportDarcy::CreateBC2 | ( | int | id | ) |
Definition at line 127 of file pzcoupledtransportdarcy.cpp.
Referenced by CreateBC().
|
static |
Definition at line 24 of file pzcoupledtransportdarcy.cpp.
References gCurrentEq.
Referenced by CreateBC(), TPZCoupledTransportDarcyBC::GetCurrentMaterial(), UpdateConvectionDir(), and UpdateConvectionDirInterface().
|
inlineoverridevirtual |
Returns the integrable dimension of the material.
Implements TPZMaterial.
Definition at line 112 of file pzcoupledtransportdarcy.h.
References TPZMatPoisson3d::Dimension(), GetCurrentMaterial(), NStateVariables(), Print(), and SetAlpha().
Referenced by UpdateConvectionDir().
|
overridevirtual |
Computes the error due to the difference between the interpolated flux
and the flux computed based on the derivative of the solution.
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 120 of file pzcoupledtransportdarcy.cpp.
References TPZMatPoisson3d::Errors(), and GetCurrentMaterial().
Referenced by SolutionDisc().
|
overridevirtual |
Compute the value of the flux function to be used by ZZ error estimator.
Reimplemented from TPZMaterial.
Definition at line 116 of file pzcoupledtransportdarcy.cpp.
Referenced by SolutionDisc().
|
inline |
Definition at line 63 of file pzcoupledtransportdarcy.h.
References gCurrentEq, and PZError.
Referenced by Contribute(), ContributeBC(), ContributeBCInterface(), ContributeInterface(), Dimension(), Errors(), HasForcingFunction(), NSolutionVariables(), NStateVariables(), Solution(), and VariableIndex().
|
inline |
Definition at line 80 of file pzcoupledtransportdarcy.h.
References PZError, TPZCoupledTransportDarcy(), and ~TPZCoupledTransportDarcy().
Referenced by UpdateConvectionDir().
|
inlineoverridevirtual |
Directive that gives true if the material has a forcing function.
Reimplemented from TPZMaterial.
Definition at line 61 of file pzcoupledtransportdarcy.h.
References GetCurrentMaterial(), and TPZMaterial::HasForcingFunction().
void TPZCoupledTransportDarcy::InterfaceErrors | ( | TPZVec< REAL > & | , |
TPZVec< STATE > & | leftu, | ||
TPZFMatrix< STATE > & | leftdudx, | ||
TPZVec< STATE > & | rightu, | ||
TPZFMatrix< STATE > & | rightdudx, | ||
TPZVec< STATE > & | , | ||
TPZVec< STATE > & | u_exact, | ||
TPZFMatrix< STATE > & | du_exact, | ||
TPZVec< REAL > & | values, | ||
TPZVec< REAL > | normal, | ||
REAL | elsize | ||
) |
Referenced by ContributeBCInterface().
|
inlineoverridevirtual |
Dicontinuous galerkin materials implement contribution of discontinuous elements and interfaces.
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 208 of file pzcoupledtransportdarcy.h.
References ClassId().
|
inlineoverridevirtual |
Returns the name of the material.
Reimplemented from TPZDiscontinuousGalerkin.
Definition at line 122 of file pzcoupledtransportdarcy.h.
References bc, Contribute(), and ContributeBC().
Referenced by Print().
|
inlineoverridevirtual |
To create another material of the same type.
Reimplemented from TPZMaterial.
Definition at line 108 of file pzcoupledtransportdarcy.h.
References TPZCoupledTransportDarcy().
|
inlineoverridevirtual |
Returns the number of components which form the flux function.
Reimplemented from TPZMaterial.
Definition at line 153 of file pzcoupledtransportdarcy.h.
References Solution().
|
overridevirtual |
Returns the number of variables associated with the variable indexed by var.
var | Index variable into the solution, is obtained by calling VariableIndex |
Reimplemented from TPZMaterial.
Definition at line 101 of file pzcoupledtransportdarcy.cpp.
References GetCurrentMaterial(), and TPZMatPoisson3d::NSolutionVariables().
Referenced by ContributeBC().
|
overridevirtual |
Returns the number of state variables associated with the material.
Implements TPZMaterial.
Definition at line 42 of file pzcoupledtransportdarcy.cpp.
References GetCurrentMaterial(), and TPZMatPoisson3d::NStateVariables().
Referenced by Dimension().
|
overridevirtual |
Prints out the data associated with the material.
Reimplemented from TPZMaterial.
Definition at line 46 of file pzcoupledtransportdarcy.cpp.
References Name(), and TPZMaterial::Print().
Referenced by Dimension().
void TPZCoupledTransportDarcy::SetAlpha | ( | REAL | alpha | ) |
Definition at line 35 of file pzcoupledtransportdarcy.cpp.
References fAlpha.
Referenced by Dimension().
|
static |
Definition at line 19 of file pzcoupledtransportdarcy.cpp.
References gCurrentEq, and PZError.
Referenced by CreateBC().
|
overrideprotectedvirtual |
Reimplemented from TPZMaterial.
Definition at line 105 of file pzcoupledtransportdarcy.cpp.
References TPZMaterialData::axes, TPZMaterialData::dsol, GetCurrentMaterial(), TPZManVector< T, NumExtAlloc >::Resize(), TPZMaterialData::sol, and TPZMatPoisson3d::Solution().
Referenced by NFluxes().
|
inlinevirtual |
Returns the solution associated with the var index based on the finite element approximation.
Definition at line 162 of file pzcoupledtransportdarcy.h.
References ContributeBCInterface(), ContributeInterface(), Errors(), Flux(), TPZDiscontinuousGalerkin::SolutionDisc(), and rdt::values.
void TPZCoupledTransportDarcy::UpdateConvectionDir | ( | TPZFMatrix< STATE > & | dsol | ) |
Definition at line 131 of file pzcoupledtransportdarcy.cpp.
References CurrentEquation(), Dimension(), fAlpha, GetMaterial(), TPZMatPoisson3d::GetParameters(), and TPZMatPoisson3d::SetParameters().
Referenced by Contribute(), ContributeBCInterface(), CreateBC(), TPZCoupledTransportDarcyBC::UpdateConvectionDir(), TPZCoupledTransportDarcyBC::UpdateConvectionDirInterface(), and UpdateConvectionDirInterface().
void TPZCoupledTransportDarcy::UpdateConvectionDirInterface | ( | TPZFMatrix< STATE > & | dsolL, |
TPZFMatrix< STATE > & | dsolR | ||
) |
Definition at line 152 of file pzcoupledtransportdarcy.cpp.
References TPZMatrix< TVar >::Cols(), CurrentEquation(), TPZMatrix< TVar >::Rows(), and UpdateConvectionDir().
Referenced by ContributeInterface(), and CreateBC().
|
overridevirtual |
returns the variable index associated with the name
Reimplemented from TPZMaterial.
Definition at line 97 of file pzcoupledtransportdarcy.cpp.
References GetCurrentMaterial(), and TPZMatPoisson3d::VariableIndex().
Referenced by ContributeBC().
|
protected |
In second equation: . Here alpha is stored.
Definition at line 34 of file pzcoupledtransportdarcy.h.
Referenced by SetAlpha(), and UpdateConvectionDir().
|
protected |
Definition at line 38 of file pzcoupledtransportdarcy.h.
Referenced by TPZCoupledTransportDarcy().
|
protected |
Definition at line 39 of file pzcoupledtransportdarcy.h.
Referenced by TPZCoupledTransportDarcy().
|
staticprotected |
Definition at line 42 of file pzcoupledtransportdarcy.h.
Referenced by CurrentEquation(), GetCurrentMaterial(), and SetCurrentMaterial().