NeoPZ
|
#include <TPZMixedDarcyFlow.h>
Public Member Functions | |
TPZMixedDarcyFlow () | |
default constructor More... | |
~TPZMixedDarcyFlow () | |
default desconstructor More... | |
TPZMixedDarcyFlow (int mat_id, int dim) | |
constructor based on material id and dimension More... | |
TPZMixedDarcyFlow (const TPZMixedDarcyFlow &other) | |
constructor based on object copy More... | |
TPZMaterial * | NewMaterial () override |
return a material object from a this object More... | |
TPZMixedDarcyFlow & | operator= (const TPZMixedDarcyFlow &other) |
assignment operator More... | |
int | Dimension () const override |
return the euclidean dimension of the weak statement More... | |
void | SetDimension (int dim) |
Sets material dimension. More... | |
virtual int | NStateVariables () const override |
return the number of state variables associated with each trial function More... | |
void | Print (std::ostream &out) override |
print all material information More... | |
std::string | Name () override |
print material name More... | |
void | FillDataRequirements (TPZVec< TPZMaterialData > &datavec) override |
fill requirements for volumetric contribute methods multiphsycis mesh More... | |
void | FillBoundaryConditionDataRequirement (int type, TPZVec< TPZMaterialData > &datavec) override |
fill requirements for boundary contribute methods multiphsycis mesh More... | |
virtual int | ClassId () const override |
unique class identifier More... | |
virtual void | Write (TPZStream &buf, int withclassid) const override |
write class in disk More... | |
void | Read (TPZStream &buf, void *context) override |
write class from disk More... | |
void | ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
Boundary contribute without jacobian matrix. More... | |
void | ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
Boundary contribute. More... | |
void | Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override |
Volumetric contribute with jacobian matrix. More... | |
void | Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef) override |
Volumetric contribute. More... | |
void | Contribute (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override |
Volumetric contribute with jacobian matrix. More... | |
void | Contribute (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ef) override |
Volumetric contribute without jacobian matrix. More... | |
void | ContributeBC (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
Boundary contribute without jacobian matrix. More... | |
void | ContributeBC (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override |
Boundary contribute. More... | |
int | VariableIndex (const std::string &name) override |
Variable index based on variable naming. More... | |
int | NSolutionVariables (int var) override |
size of the current variable (1 -> scalar, 3-> vector, 9 -> Tensor ) More... | |
void | Solution (TPZVec< TPZMaterialData > &datavec, int var, TPZVec< STATE > &Solout) override |
Postprocess required variables multiphysics. More... | |
void | SetPermeability (REAL kappa) |
:: JV document me please More... | |
void | SetPermeability (TPZFNMatrix< 9, REAL > &kappa) |
:: JV document me please More... | |
void | SetDimensionalFactor (REAL d) |
:: JV document me please 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 | 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 | FillDataRequirementsInterface (TPZMaterialData &data) |
This method defines which parameters need to be initialized in order to compute the contribution of interface elements. 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) |
virtual int | NFluxes () |
Returns the number of components which form the flux function. More... | |
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... | |
virtual TPZBndCond * | CreateBC (TPZMaterial *reference, int id, int typ, TPZFMatrix< STATE > &val1, TPZFMatrix< STATE > &val2) |
Creates an object TPZBndCond derived of TPZMaterial. 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 | HasForcingFunction () |
Directive that gives true if the material has a forcing function. 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 | Errors (TPZMaterialData &data, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &errors) |
virtual void | Errors (TPZVec< TPZMaterialData > &data, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &errors) |
virtual void | Errors (TPZVec< REAL > &x, TPZVec< STATE > &sol, TPZFMatrix< STATE > &dsol, TPZFMatrix< REAL > &axes, TPZVec< STATE > &flux, TPZVec< STATE > &uexact, TPZFMatrix< STATE > &duexact, TPZVec< REAL > &val) |
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 | 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 (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... | |
virtual void | Flux (TPZVec< REAL > &x, TPZVec< STATE > &Sol, TPZFMatrix< STATE > &DSol, TPZFMatrix< REAL > &axes, TPZVec< STATE > &flux) |
Computes the value of the flux function to be used by ZZ error estimator. 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 | |
Private Attributes | |
TPZFNMatrix< 9, REAL > | m_kappa |
Absolute permeability. More... | |
TPZFNMatrix< 9, REAL > | m_kappa_inv |
Inver of absolute permeability. More... | |
REAL | m_d |
Dimensional factor. More... | |
int | m_dim |
Material dimension. More... | |
Additional Inherited Members | |
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) |
Static Public Attributes inherited from TPZMaterial | |
static REAL | gBigNumber |
Big number to penalization method, used for Dirichlet conditions. More... | |
Protected Member Functions inherited from TPZMaterial | |
virtual void | Solution (TPZVec< STATE > &Sol, TPZFMatrix< STATE > &DSol, TPZFMatrix< REAL > &axes, int var, TPZVec< STATE > &Solout) |
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... | |
Definition at line 17 of file TPZMixedDarcyFlow.h.
TPZMixedDarcyFlow::TPZMixedDarcyFlow | ( | ) |
default constructor
Definition at line 10 of file TPZMixedDarcyFlow.cpp.
References m_d, m_dim, m_kappa, m_kappa_inv, and TPZFMatrix< TVar >::Resize().
Referenced by NewMaterial().
TPZMixedDarcyFlow::~TPZMixedDarcyFlow | ( | ) |
default desconstructor
Definition at line 19 of file TPZMixedDarcyFlow.cpp.
TPZMixedDarcyFlow::TPZMixedDarcyFlow | ( | int | mat_id, |
int | dim | ||
) |
constructor based on material id and dimension
Definition at line 23 of file TPZMixedDarcyFlow.cpp.
References m_d, m_dim, m_kappa, m_kappa_inv, and TPZFMatrix< TVar >::Resize().
TPZMixedDarcyFlow::TPZMixedDarcyFlow | ( | const TPZMixedDarcyFlow & | other | ) |
constructor based on object copy
Definition at line 31 of file TPZMixedDarcyFlow.cpp.
References m_d, m_dim, m_kappa, and m_kappa_inv.
|
overridevirtual |
unique class identifier
Implements TPZSavable.
Definition at line 90 of file TPZMixedDarcyFlow.cpp.
References TPZMaterial::ClassId(), and Hash().
Referenced by SetDimension().
|
inlineoverridevirtual |
Volumetric contribute with jacobian matrix.
Implements TPZMaterial.
Definition at line 94 of file TPZMixedDarcyFlow.h.
References DebugStop.
Referenced by Contribute().
|
inlineoverridevirtual |
Volumetric contribute.
Reimplemented from TPZMaterial.
Definition at line 99 of file TPZMixedDarcyFlow.h.
References bc, Contribute(), ContributeBC(), DebugStop, NSolutionVariables(), Solution(), and VariableIndex().
|
overridevirtual |
Volumetric contribute with jacobian matrix.
Reimplemented from TPZMaterial.
Definition at line 102 of file TPZMixedDarcyFlow.cpp.
References TPZFunction< TVar >::Execute(), TPZMaterial::fForcingFunction, m_kappa_inv, TPZVec< T >::NElements(), Norm(), test::res, TPZMatrix< TVar >::Rows(), and val().
|
overridevirtual |
Volumetric contribute without jacobian matrix.
Reimplemented from TPZMaterial.
Definition at line 215 of file TPZMixedDarcyFlow.cpp.
References Contribute(), and TPZMatrix< TVar >::Rows().
|
inlineoverridevirtual |
Boundary contribute without jacobian matrix.
Reimplemented from TPZMaterial.
Definition at line 84 of file TPZMixedDarcyFlow.h.
References DebugStop.
Referenced by Contribute(), and ContributeBC().
|
inlineoverridevirtual |
Boundary contribute.
Implements TPZMaterial.
Definition at line 89 of file TPZMixedDarcyFlow.h.
References DebugStop.
|
overridevirtual |
Boundary contribute without jacobian matrix.
Reimplemented from TPZMaterial.
Definition at line 220 of file TPZMixedDarcyFlow.cpp.
References ContributeBC(), and TPZMatrix< TVar >::Rows().
|
overridevirtual |
Boundary contribute.
Reimplemented from TPZMaterial.
Definition at line 225 of file TPZMixedDarcyFlow.cpp.
References DebugStop, TPZMaterial::gBigNumber, Norm(), TPZMatrix< TVar >::Rows(), TPZVec< T >::size(), TPZBndCond::Type(), and TPZBndCond::Val2().
|
overridevirtual |
return the euclidean dimension of the weak statement
Implements TPZMaterial.
Definition at line 55 of file TPZMixedDarcyFlow.cpp.
References m_dim.
Referenced by NSolutionVariables(), and Solution().
|
overridevirtual |
fill requirements for boundary contribute methods multiphsycis mesh
Reimplemented from TPZMaterial.
Definition at line 82 of file TPZMixedDarcyFlow.cpp.
References TPZVec< T >::size().
Referenced by SetDimension().
|
overridevirtual |
fill requirements for volumetric contribute methods multiphsycis mesh
Reimplemented from TPZMaterial.
Definition at line 74 of file TPZMixedDarcyFlow.cpp.
References TPZVec< T >::size().
Referenced by SetDimension().
|
overridevirtual |
print material name
Reimplemented from TPZMaterial.
Definition at line 70 of file TPZMixedDarcyFlow.cpp.
Referenced by SetDimension().
|
overridevirtual |
return a material object from a this object
Reimplemented from TPZMaterial.
Definition at line 39 of file TPZMixedDarcyFlow.cpp.
References TPZMixedDarcyFlow().
|
overridevirtual |
size of the current variable (1 -> scalar, 3-> vector, 9 -> Tensor )
Reimplemented from TPZMaterial.
Definition at line 312 of file TPZMixedDarcyFlow.cpp.
References Dimension(), and TPZMaterial::NSolutionVariables().
Referenced by Contribute(), and Solution().
|
overridevirtual |
return the number of state variables associated with each trial function
Implements TPZMaterial.
Definition at line 59 of file TPZMixedDarcyFlow.cpp.
Referenced by SetDimension().
TPZMixedDarcyFlow & TPZMixedDarcyFlow::operator= | ( | const TPZMixedDarcyFlow & | other | ) |
assignment operator
Definition at line 43 of file TPZMixedDarcyFlow.cpp.
References m_d, m_dim, m_kappa, m_kappa_inv, and TPZMaterial::operator=().
|
overridevirtual |
print all material information
Reimplemented from TPZMaterial.
Definition at line 63 of file TPZMixedDarcyFlow.cpp.
References m_d, m_dim, m_kappa, m_kappa_inv, and TPZMatrix< TVar >::Print().
Referenced by SetDimension().
|
overridevirtual |
write class from disk
Reimplemented from TPZSavable.
Definition at line 98 of file TPZMixedDarcyFlow.cpp.
References DebugStop.
Referenced by SetDimension().
|
inline |
Sets material dimension.
Definition at line 57 of file TPZMixedDarcyFlow.h.
References ClassId(), FillBoundaryConditionDataRequirement(), FillDataRequirements(), Name(), NStateVariables(), Print(), Read(), and Write().
|
inline |
:: JV document me please
Definition at line 147 of file TPZMixedDarcyFlow.h.
|
inline |
:: JV document me please
Definition at line 125 of file TPZMixedDarcyFlow.h.
References m_kappa, m_kappa_inv, TPZMatrix< TVar >::Rows(), and TPZFMatrix< TVar >::Zero().
|
inline |
:: JV document me please
Definition at line 136 of file TPZMixedDarcyFlow.h.
References TPZMatrix< TVar >::Cols(), DebugStop, ELU, TPZMatrix< TVar >::Inverse(), and TPZMatrix< TVar >::Rows().
|
overridevirtual |
Postprocess required variables multiphysics.
Reimplemented from TPZMaterial.
Definition at line 321 of file TPZMixedDarcyFlow.cpp.
References DebugStop, Dimension(), m_kappa, Norm(), NSolutionVariables(), and TPZVec< T >::Resize().
Referenced by Contribute().
|
overridevirtual |
Variable index based on variable naming.
Reimplemented from TPZMaterial.
Definition at line 304 of file TPZMixedDarcyFlow.cpp.
References TPZMaterial::VariableIndex().
Referenced by Contribute().
|
overridevirtual |
write class in disk
Reimplemented from TPZSavable.
Definition at line 94 of file TPZMixedDarcyFlow.cpp.
References DebugStop.
Referenced by SetDimension().
|
private |
Dimensional factor.
Definition at line 28 of file TPZMixedDarcyFlow.h.
Referenced by operator=(), Print(), and TPZMixedDarcyFlow().
|
private |
Material dimension.
Definition at line 31 of file TPZMixedDarcyFlow.h.
Referenced by Dimension(), operator=(), Print(), and TPZMixedDarcyFlow().
|
private |
Absolute permeability.
Definition at line 22 of file TPZMixedDarcyFlow.h.
Referenced by operator=(), Print(), SetPermeability(), Solution(), and TPZMixedDarcyFlow().
|
private |
Inver of absolute permeability.
Definition at line 25 of file TPZMixedDarcyFlow.h.
Referenced by Contribute(), operator=(), Print(), SetPermeability(), and TPZMixedDarcyFlow().