NeoPZ
|
This abstract class defines the behaviour which each derived class needs to implement. More...
#include <TPZMaterial.h>
Public Member Functions | |
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) |
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... | |
virtual std::string | Name () |
Returns the name of the material. More... | |
virtual int | Dimension () const =0 |
Returns the integrable dimension of the material. More... | |
int | Id () const |
void | SetId (int id) |
virtual int | NStateVariables () const =0 |
Returns the number of state variables associated with the material. More... | |
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 void | Print (std::ostream &out=std::cout) |
Prints out the data associated with the material. 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 TPZMaterial * | NewMaterial () |
To create another material of the same type. 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... | |
Contribute methods | |
virtual void | Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef)=0 |
It computes a contribution to the stiffness matrix and load vector at one integration point. More... | |
virtual void | Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef) |
It computes a contribution to the residual vector at one integration point. More... | |
virtual void | Contribute (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) |
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) |
It computes a contribution to the stiffness matrix and load vector at one integration point to multiphysics simulation. More... | |
virtual void | ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc)=0 |
It computes a contribution to the stiffness matrix and load vector at one BC integration point. More... | |
virtual void | ContributeBC (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) |
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 > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) |
It computes a contribution to the stiffness matrix and load vector at one BC integration point to multiphysics simulation. More... | |
virtual void | ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) |
It computes a contribution to the stiffness matrix and load vector at one BC integration point. More... | |
Save and Load methods | |
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... | |
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 Attributes | |
static REAL | gBigNumber |
Big number to penalization method, used for Dirichlet conditions. More... | |
Protected Attributes | |
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... | |
Private Attributes | |
int | fId |
Post processing methods | |
virtual int | VariableIndex (const std::string &name) |
Returns the variable index associated with the name. More... | |
virtual int | NSolutionVariables (int var) |
Returns the number of variables associated with the variable indexed by var. 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... | |
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... | |
virtual void | Solution (TPZVec< STATE > &Sol, TPZFMatrix< STATE > &DSol, TPZFMatrix< REAL > &axes, int var, TPZVec< STATE > &Solout) |
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) |
This abstract class defines the behaviour which each derived class needs to implement.
Classes derived from the TPZMaterial class implement the weak statement of the differential equation within the PZ environment
It is noteworthy to observe that this definition does not depend on the definition of the interpolation space
TPZMaterial objects also need to implement the interface for post processing the results
Definition at line 39 of file TPZMaterial.h.
TPZMaterial::TPZMaterial | ( | int | id | ) |
Creates a material object and inserts it in the vector of material pointers of the mesh.
Upon return vectorindex contains the index of the material object within the vector
Definition at line 37 of file TPZMaterial.cpp.
References fForcingFunction, fLinearContext, and SetId().
TPZMaterial::TPZMaterial | ( | ) |
Default constructor.
Definition at line 31 of file TPZMaterial.cpp.
References fForcingFunction, fId, and fLinearContext.
TPZMaterial::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.
Upon return vectorindex contains the index of the material object within the vector
Definition at line 49 of file TPZMaterial.cpp.
References fBCForcingFunction, fForcingFunction, fForcingFunctionExact, fId, fLinearContext, fNumLoadCases, fPostProcIndex, fTimedependentBCForcingFunction, fTimeDependentForcingFunction, and fTimedependentFunctionExact.
|
virtual |
|
inline |
Returns a procedure as variable boundary condition.
Definition at line 453 of file TPZMaterial.h.
References fBCForcingFunction.
|
overridevirtual |
Unique identifier for serialization purposes.
Implements TPZSavable.
Reimplemented in TPZMatLaplacian, TPZVecL2, TPZPostProcMat, TPZNullMaterial, TPZReynoldsFlow, TPZMatWithMem< TPZFMatrix< STATE >, TPZElasticity3D >, TPZMatWithMem< TMEM >, TPZMatWithMem< TPZFMatrix< REAL >, TPZElasticity3D >, and TPZPorousElasticity.
Definition at line 382 of file TPZMaterial.cpp.
References Hash().
Referenced by TPZLinearConvection::ClassId(), TPZEuler::ClassId(), TPZMatElasticity2D::ClassId(), TPZMixedDarcyFlow::ClassId(), TPZLinearConvecDiff::ClassId(), TPZPrimalPoisson::ClassId(), TPZDualPoisson::ClassId(), TPZMultCamada::ClassId(), TPZSpaceTimeRichardsEq::ClassId(), TPZMaterialTest3D::ClassId(), TPZMatPlaca2::ClassId(), TPZPlaca::ClassId(), TPZReynoldsFlow::ClassId(), TPZMatHyperElastic::ClassId(), TPZMat2dLin::ClassId(), TPZMat1dLin::ClassId(), TPZIncNavierStokesKEps::ClassId(), TPZNullMaterial::ClassId(), TPZVecL2::ClassId(), TPZDiscontinuousGalerkin::ClassId(), TPZElasticity3D::ClassId(), TPZSwelling::ClassId(), TPZMatMixedPoisson3D::ClassId(), and GetLinearContext().
|
virtual |
Creates a copy of the material object and put it in the vector which is passed on.
Reimplemented in TPZBndCond, and TPZBndCondWithMem< TMEM >.
Definition at line 338 of file TPZMaterial.cpp.
References Id(), and NewMaterial().
Referenced by TPZBndCondWithMem< TMEM >::Clone(), TPZBndCond::Clone(), NEvalErrors(), and TPZNonLinMultGridAnalysis::UniformlyRefineMesh().
|
inlinevirtual |
Computes square of residual of the differential equation at one integration point.
X | is the point coordinate (x,y,z) |
sol | is the solution vector |
dsol | is the solution derivative with respect to x,y,z as computed in TPZShapeDisc::Shape2DFull |
Reimplemented in TPZMatPoisson3d, and TPZMatLaplacian.
Definition at line 551 of file TPZMaterial.h.
References PZError.
Referenced by TPZCompElDisc::EvaluateSquareResidual2D().
|
pure virtual |
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 |
Implemented in TPZEulerConsLaw, TPZBndCond, TPZMatMixedPoisson3D, TPZMatElasticity2D, TPZMatPoisson3d, TPZMixedElasticityMaterial, TPZMatLaplacian, TPZConservationLaw, TPZSwelling, TPZEulerEquation, TPZMatConvectionProblem, TPZVecL2, TPZCoupledTransportDarcy, TPZLagrangeMultiplier, TPZNullMaterial, TPZElasticity3D, TPZBndCondWithMem< TMEM >, TPZPostProcMat, TPZElasticityAxiMaterial, TPZElasticityMaterial, TPZDualPoisson, TPZMixedDarcyFlow, TPZCoupledTransportDarcyBC, TPZIncNavierStokesKEps, TPZPrimalPoisson, TPZTracerFlow, TPZMultiphase, TPZMat1dLin, TPZThermicElast3D, TPZHybridPoisson, TPZL2Projection, TPZMatDualHybridPoisson, TPZViscoelastic, TPZMat2dLin, TPZPorousElasticity, TPZMatPoisson3dReferred, TPZSpaceTimeRichardsEq, TPZReynoldsFlow, TPZElasticityHybridMaterial, TPZNonLinBiharmonic, TPZNLMat1d, TPZLinearConvecDiff, TPZConsLawTest, TPZEuler, TPZMatHyperElastic, TPZDiscontinuousGalerkin, TPZBiharmonic, TPZNonLinearPoisson3d, TPZMatPlaca2, TPZMaterialTest3D, TPZMatOrthotropic, TPZMaterialTest, TPZBurger, TPZPlaca, TPZBCTension, TPZLinearConvection, TPZElast3Dnlinear, TPZMatHybrid, and TPZMultCamada.
Referenced by TPZInterpolationSpace::CalcResidual(), TPZMultiphysicsCompEl< TGeometry >::CalcResidual(), TPZAgglomerateElement::CalcStiff(), TPZInterpolationSpace::CalcStiff(), TPZMultiphysicsCompEl< TGeometry >::CalcStiff(), TPZSBFemVolume::ComputeKMatrices(), TPZMultCamada::Contribute(), TPZMatHybrid::Contribute(), TPZLinearConvection::Contribute(), TPZPlaca::Contribute(), TPZDiscontinuousGalerkin::Contribute(), TPZMaterialTest3D::Contribute(), TPZMatHyperElastic::Contribute(), TPZMaterialTest::Contribute(), TPZMatOrthotropic::Contribute(), TPZMatPlaca2::Contribute(), TPZEuler::Contribute(), TPZMat2dLin::Contribute(), TPZMat1dLin::Contribute(), TPZElasticity3D::Contribute(), TPZMatPorous< T, TMEM >::Contribute(), Contribute(), and Flux().
|
virtual |
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 in TPZBndCond, TPZEulerConsLaw, TPZMixedElasticityMaterial, TPZMatElasticity2D, TPZMatPoisson3d, TPZMatLaplacian, TPZConservationLaw, TPZVecL2, TPZSwelling, TPZEulerEquation, TPZLagrangeMultiplier, TPZNullMaterial, TPZCoupledTransportDarcy, TPZElasticity3D, TPZElasticityMaterial, TPZPostProcMat, TPZBndCondWithMem< TMEM >, TPZDualPoisson, TPZMixedDarcyFlow, TPZCoupledTransportDarcyBC, TPZIncNavierStokesKEps, TPZPrimalPoisson, TPZMat1dLin, TPZMatPoisson3dReferred, TPZBCTension, TPZThermicElast3D, TPZHybridPoisson, TPZL2Projection, TPZDiscontinuousGalerkin, TPZMat2dLin, TPZPorousElasticity, TPZNonLinBiharmonic, TPZNonLinearPoisson3d, TPZBurger, TPZMatPlaca2, TPZEuler, TPZMatOrthotropic, TPZMaterialTest, TPZConsLawTest, TPZBiharmonic, TPZMatHyperElastic, TPZMaterialTest3D, TPZPlaca, TPZLinearConvection, TPZMatHybrid, TPZMultCamada, and TPZElast3Dnlinear.
Definition at line 296 of file TPZMaterial.cpp.
References Contribute(), and TPZMatrix< TVar >::Rows().
|
virtual |
It computes a contribution to the stiffness matrix and load vector at one integration point to multiphysics simulation.
datavec | [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 |
Reimplemented in TPZBndCond, TPZMatPoisson3d, TPZMixedElasticityMaterial, TPZMatLaplacian, TPZMatMixedPoisson3D, TPZMixedPoisson, TPZVecL2, TPZLagrangeMultiplier, TPZDualPoisson, TPZNullMaterial, TPZBndCondWithMem< TMEM >, TPZElasticityMaterial, TPZMixedDarcyFlow, TPZMixedPoissonParabolic, TPZPrimalPoisson, TPZTracerFlow, TPZMultiphase, TPZDiscontinuousGalerkin, and TPZElasticity2DHybrid.
Definition at line 306 of file TPZMaterial.cpp.
References Contribute(), DebugStop, and TPZVec< T >::size().
|
inlinevirtual |
It computes a contribution to the stiffness matrix and load vector at one integration point to multiphysics simulation.
datavec | [in] stores all input data |
weight | [in] is the weight of the integration rule |
ef | [out] is the load vector |
Reimplemented in TPZVecL2, TPZDualPoisson, TPZNullMaterial, TPZBndCondWithMem< TMEM >, TPZMixedPoissonParabolic, TPZMixedDarcyFlow, TPZPrimalPoisson, TPZTracerFlow, TPZMultiphase, and TPZDiscontinuousGalerkin.
Definition at line 304 of file TPZMaterial.h.
References bc, Contribute(), ContributeBC(), and TPZMatrix< TVar >::Rows().
|
pure virtual |
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 |
Implemented in TPZEulerConsLaw, TPZBndCond, TPZMatMixedPoisson3D, TPZMatPoisson3d, TPZMixedElasticityMaterial, TPZConservationLaw, TPZMatElasticity2D, TPZMatLaplacian, TPZSwelling, TPZVecL2, TPZEulerEquation, TPZMatConvectionProblem, TPZElasticityMaterial, TPZElasticity3D, TPZLagrangeMultiplier, TPZCoupledTransportDarcy, TPZNullMaterial, TPZPostProcMat, TPZL2Projection, TPZBndCondWithMem< TMEM >, TPZDualPoisson, TPZElasticityAxiMaterial, TPZCoupledTransportDarcyBC, TPZIncNavierStokesKEps, TPZPrimalPoisson, TPZMatElastoPlastic2D< T, TMEM >, TPZMat1dLin, TPZMultiphase, TPZTracerFlow, TPZMixedDarcyFlow, TPZReynoldsFlow, TPZMatDualHybridPoisson, TPZMat2dLin, TPZBurger, TPZSpaceTimeRichardsEq, TPZPorousElasticity, TPZNonLinBiharmonic, TPZDiscontinuousGalerkin, TPZMatPoisson3dReferred, TPZConsLawTest, TPZNonLinearPoisson3d, TPZNLMat1d, TPZEuler, TPZBiharmonic, TPZMatHyperElastic, TPZLinearConvecDiff, TPZElasticity2DHybrid, TPZMatPlaca2, TPZMatOrthotropic, TPZMaterialTest, TPZMaterialTest3D, TPZPlaca, TPZLinearConvection, TPZElast3Dnlinear, TPZMatHybrid, and TPZMultCamada.
Referenced by TPZBCTension::Contribute(), Contribute(), TPZBndCond::Contribute(), TPZMultCamada::ContributeBC(), TPZMatHybrid::ContributeBC(), TPZLinearConvection::ContributeBC(), TPZPlaca::ContributeBC(), TPZMaterialTest3D::ContributeBC(), TPZMatHyperElastic::ContributeBC(), TPZMatOrthotropic::ContributeBC(), TPZMatPlaca2::ContributeBC(), TPZMaterialTest::ContributeBC(), TPZEuler::ContributeBC(), TPZNLMat1d::ContributeBC(), TPZDiscontinuousGalerkin::ContributeBC(), TPZMat2dLin::ContributeBC(), TPZMat1dLin::ContributeBC(), TPZIncNavierStokesKEps::ContributeBC(), TPZMatElastoPlastic< T, TMEM >::ContributeBC(), TPZElasticity3D::ContributeBC(), TPZMatPorous< T, TMEM >::ContributeBC(), TPZSwelling::ContributeBC(), and ContributeBC().
|
inlinevirtual |
It computes a contribution to the stiffness matrix and load vector at one BC integration point to multiphysics simulation.
datavec | [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 |
Reimplemented in TPZDualPoisson, TPZMixedDarcyFlow, TPZPrimalPoisson, TPZMultiphase, and TPZDiscontinuousGalerkin.
Definition at line 331 of file TPZMaterial.h.
References ContributeBC(), and TPZMatrix< TVar >::Rows().
|
virtual |
It computes a contribution to the stiffness matrix and load vector at one BC integration point to multiphysics simulation.
datavec | [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 |
Reimplemented in TPZMatMixedPoisson3D, TPZMixedElasticityMaterial, TPZMatLaplacian, TPZMatPoisson3d, TPZVecL2, TPZMixedPoisson, TPZLagrangeMultiplier, TPZElasticityMaterial, TPZDualPoisson, TPZNullMaterial, TPZMixedDarcyFlow, TPZMixedPoissonParabolic, TPZPrimalPoisson, TPZTracerFlow, TPZMultiphase, and TPZDiscontinuousGalerkin.
Definition at line 326 of file TPZMaterial.cpp.
References ContributeBC(), DebugStop, and TPZVec< T >::size().
|
virtual |
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 in TPZBndCond, TPZEulerConsLaw, TPZMatPoisson3d, TPZMixedElasticityMaterial, TPZConservationLaw, TPZMatElasticity2D, TPZVecL2, TPZSwelling, TPZElasticityMaterial, TPZLagrangeMultiplier, TPZCoupledTransportDarcy, TPZElasticity3D, TPZNullMaterial, TPZL2Projection, TPZBndCondWithMem< TMEM >, TPZCoupledTransportDarcyBC, TPZIncNavierStokesKEps, TPZMatElastoPlastic2D< T, TMEM >, TPZDualPoisson, TPZMat1dLin, TPZPrimalPoisson, TPZBurger, TPZMatPoisson3dReferred, TPZMixedDarcyFlow, TPZDiscontinuousGalerkin, TPZMat2dLin, TPZNonLinBiharmonic, TPZPorousElasticity, TPZConsLawTest, TPZBiharmonic, TPZNonLinearPoisson3d, TPZNLMat1d, TPZEuler, TPZMatPlaca2, TPZMaterialTest, TPZMatOrthotropic, TPZMatHyperElastic, TPZMaterialTest3D, TPZPlaca, TPZLinearConvection, TPZMatHybrid, and TPZMultCamada.
Definition at line 301 of file TPZMaterial.cpp.
References ContributeBC(), and TPZMatrix< TVar >::Rows().
|
inlinevirtual |
Reimplemented in TPZBndCond, and TPZBiharmonicEstimator.
Definition at line 538 of file TPZMaterial.h.
References PZError.
Referenced by TPZInterpolationSpace::ComputeError().
|
virtual |
Creates an object TPZBndCond derived of TPZMaterial.
Reimplemented in TPZCoupledTransportDarcy.
Definition at line 282 of file TPZMaterial.cpp.
Referenced by Hdiv2dPaper201504::CMeshFlux(), hdivCurvedJCompAppMath::CMeshFlux(), Hdiv3dPaper201504::CMeshFlux(), Hdiv2dPaper201504::CMeshH1(), hdivCurvedJCompAppMath::CMeshH1(), Hdiv3dPaper201504::CMeshH1(), Hdiv2dPaper201504::CMeshMixed(), hdivCurvedJCompAppMath::CMeshMixed(), Hdiv3dPaper201504::CMeshMixed(), TPZMHMeshControl::CriaMalhaTemporaria(), Flux(), insert_elasticity(), InsertElasticity(), Input::InsertElasticityCubo(), InsertElasticityCubo(), TPZMHMixedHybridMeshControl::InsertPeriferalHdivMaterialObjects(), TPZMHMixedMeshControl::InsertPeriferalHdivMaterialObjects(), TPZMHMixedHybridMeshControl::InsertPeriferalMaterialObjects(), InsertViscoElasticity(), InsertViscoElasticityCubo(), TPZParSkylineStructMatrix::main(), TPBSpStructMatrix::main(), TPZSymetricSpStructMatrix::main(), TPZSpStructMatrix::main(), TPZFrontStructMatrix< front >::main(), TPZParFrontStructMatrix< front >::main(), TPZSubCompMesh::main(), MalhaComp(), TPZMat2dLin::OutflowFlux(), PYBIND11_MODULE(), and TPZReadMeshHR::ReadBCs().
|
pure virtual |
Returns the integrable dimension of the material.
Implemented in TPZBndCond, TPZMixedElasticityMaterial, TPZMatPoisson3d, TPZMatLaplacian, TPZEulerEquation, TPZSwelling, TPZCoupledTransportDarcy, TPZL2Projection, TPZMatElasticity2D, TPZConservationLaw, TPZElasticityAxiMaterial, TPZMatMixedPoisson3D, TPZMultCamada, TPZElasticityMaterial, TPZMatConvectionProblem, TPZPostProcMat, TPZMultiphase, TPZCoupledTransportDarcyBC, TPZElasticity3D, TPZLagrangeMultiplier, TPZIncNavierStokesKEps, TPZTracerFlow, TPZMatPorous< T, TMEM >, TPZMat1dLin, TPZMatDualHybridPoisson, TPZDualPoisson, TPZNullMaterial, TPZMatElastoPlastic< T, TMEM >, TPZPrimalPoisson, TPZMixedDarcyFlow, TPZVecL2, TPZMatElastoPlastic2D< T, TMEM >, TPZSpaceTimeRichardsEq, TPZLinearConvecDiff, TPZElasticityHybridMaterial, TPZMatHyperElastic, TPZReynoldsFlow, TPZPorousElasticity, TPZMatPlaca2, TPZNonLinBiharmonic, TPZEuler, TPZMat2dLin, TPZBiharmonic, TPZMaterialTest3D, TPZPlaca, TPZNLMat1d, and TPZLinearConvection.
Referenced by TPZCompMesh::BuildTransferMatrix(), TPZCompMesh::BuildTransferMatrixDesc(), TPZInterfaceElement::ComputeNormal(), TPZMulticamadaOrthotropic::ComputeSolution(), TPZInterpolationSpace::CreateInterfaces(), TPZAgglomerateElement::CreateMidSideConnect(), TPZMHMixedMeshControl::CreatePressureMHMMesh(), TPZMHMixedMeshControl::CreateRotationMesh(), TPZAgglomerateElement::Dimension(), TPZBndCond::Dimension(), TPZCompElDisc::Divide(), TPZDXGraphMesh::DrawMesh(), TPZDXGraphMesh::DrawSolution(), TPZAnalysis::IdentifyPostProcessingMatIds(), TPZMHMixedMeshControl::InsertPeriferalMaterialObjects(), TPZInterfaceElement::main(), TPZFlowCompMesh::MaxVelocityOfMesh(), Name(), TPZAnalysis::PostProcessErrorSerial(), TPZEulerAnalysis::PrepareDXMesh(), TPZCompMesh::ProjectSolution(), TPZMultiphysicsElement::RemoveInterfaces(), TPZInterpolationSpace::RemoveInterfaces(), TPZPostProcMat::SetPostProcessVarIndexList(), TPZSBFemVolume::Shape(), TPZNonLinMultGridAnalysis::SmoothingSolution2(), and TPZNonLinMultGridAnalysis::TwoGridAlgorithm().
|
inlinevirtual |
Reimplemented in TPZDiscontinuousGalerkin.
Definition at line 496 of file TPZMaterial.h.
References TPZMaterialData::axes, TPZMaterialData::dsol, Flux(), TPZMaterialData::sol, and TPZMaterialData::x.
Referenced by TPZDiscontinuousGalerkin::Errors(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), and TPZSBFemVolume::EvaluateError().
|
inlinevirtual |
Reimplemented in TPZMixedElasticityMaterial, TPZMatPoisson3d, TPZDiscontinuousGalerkin, TPZMixedPoisson, and TPZDualPoisson.
Definition at line 502 of file TPZMaterial.h.
References DebugStop.
|
inlinevirtual |
Computes the error due to the difference between the interpolated flux
and the flux computed based on the derivative of the solution.
Reimplemented in TPZBndCond, TPZMatMixedPoisson3D, TPZMixedElasticityMaterial, TPZMatPoisson3d, TPZMatLaplacian, TPZMatElasticity2D, TPZDiscontinuousGalerkin, TPZElasticityMaterial, TPZElasticity3D, TPZMatConvectionProblem, TPZCoupledTransportDarcy, TPZDualPoisson, TPZL2Projection, TPZElasticityAxiMaterial, TPZPrimalPoisson, TPZIncNavierStokesKEps, TPZCoupledTransportDarcyBC, TPZMat1dLin, TPZBiharmonicEstimator, TPZBiharmonic, TPZNonLinBiharmonic, TPZMatHyperElastic, TPZConsLawTest, TPZMatDualHybridPoisson, TPZMatOrthotropic, TPZMaterialTest, TPZMaterialTest3D, TPZMat2dLin, TPZMatHybrid, TPZMatPlaca2, TPZPlaca, and TPZLinearConvecDiff.
Definition at line 511 of file TPZMaterial.h.
References PZError.
|
inlinevirtual |
Reimplemented in TPZMatMixedPoisson3D, TPZMatPoisson3d, TPZMatLaplacian, TPZVecL2, and TPZNullMaterial.
Definition at line 518 of file TPZMaterial.h.
References PZError.
Referenced by TPZInterpolationSpace::EvaluateError().
|
inlinevirtual |
This method defines which parameters need to be initialized in order to compute the contribution of the boundary condition.
Reimplemented in TPZMatElastoPlastic< T, TMEM >, TPZMixedElasticityMaterial, TPZMatElasticity2D, TPZElasticity3D, TPZElasticityMaterial, TPZMatPoisson3d, TPZMatLaplacian, TPZMatElastoPlastic2D< T, TMEM >, TPZDualPoisson, TPZPrimalPoisson, TPZMixedPoissonParabolic, and TPZPorousElasticity.
Definition at line 120 of file TPZMaterial.h.
References TPZMaterialData::fNeedsSol.
Referenced by TPZBndCond::FillDataRequirements().
|
inlinevirtual |
This method defines which parameters need to be initialized in order to compute the contribution of the boundary condition.
Reimplemented in TPZMatMixedPoisson3D, TPZMixedPoisson, TPZMultiphase, TPZDualPoisson, TPZPrimalPoisson, TPZMixedPoissonParabolic, TPZMixedDarcyFlow, and TPZTracerFlow.
Definition at line 130 of file TPZMaterial.h.
References TPZVec< T >::size().
|
virtual |
Fill material data parameter with necessary requirements for the.
Reimplemented in TPZBndCond, TPZMatElastoPlastic< T, TMEM >, TPZMixedElasticityMaterial, TPZMatElasticity2D, TPZElasticity3D, TPZPostProcMat, TPZMatPorous< T, TMEM >, TPZElasticityMaterial, TPZMatPoisson3d, TPZMatLaplacian, TPZViscoelastic, TPZDualPoisson, TPZPrimalPoisson, TPZPorousElasticity, and TPZElast3Dnlinear.
Definition at line 81 of file TPZMaterial.cpp.
References TPZMaterialData::fNeedsNeighborCenter, TPZMaterialData::fNeedsNeighborSol, TPZMaterialData::fNeedsNormal, and TPZMaterialData::SetAllRequirements().
Referenced by TPZElast3Dnlinear::FillDataRequirements(), TPZViscoelastic::FillDataRequirements(), TPZPostProcMat::FillDataRequirements(), TPZElasticity3D::FillDataRequirements(), TPZMatPoisson3d::FillDataRequirements(), TPZSBFemVolume::InitMaterialData(), TPZReducedSpace::InitMaterialData(), TPZInterpolationSpace::InitMaterialData(), TPZMultiphysicsInterfaceElement::InitMaterialData(), TPZMultiphysicsCompEl< TGeometry >::InitMaterialData(), TPZMultiphysicsInterfaceElement::Print(), and TPZMultiphysicsCompEl< TGeometry >::Solution().
|
virtual |
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.
Reimplemented in TPZBndCond, TPZMatMixedPoisson3D, TPZMatPoisson3d, TPZMixedElasticityMaterial, TPZMixedPoisson, TPZMultiphase, TPZDualPoisson, TPZPrimalPoisson, TPZMixedDarcyFlow, TPZMixedPoissonParabolic, and TPZTracerFlow.
Definition at line 90 of file TPZMaterial.cpp.
References TPZVec< T >::size().
|
inlinevirtual |
This method defines which parameters need to be initialized in order to compute the contribution of interface elements.
Reimplemented in TPZMatLaplacian, TPZLagrangeMultiplier, TPZTracerFlow, TPZHybridPoisson, and TPZDiscontinuousGalerkin.
Definition at line 143 of file TPZMaterial.h.
References TPZMaterialData::fNeedsNormal.
Referenced by TPZMultiphysicsInterfaceElement::ComputeRequiredData(), and TPZMultiphysicsInterfaceElement::InitMaterialData().
|
inlinevirtual |
This method defines which parameters need to be initialized in order to compute the contribution of interface elements.
Reimplemented in TPZBndCond, TPZLagrangeMultiplier, and TPZTracerFlow.
Definition at line 149 of file TPZMaterial.h.
References TPZMaterialData::SetAllRequirements(), and TPZVec< T >::size().
|
inlinevirtual |
Computes the value of the flux function to be used by ZZ error estimator.
Reimplemented in TPZMixedElasticityMaterial, TPZBndCond, TPZMatPoisson3d, TPZMatLaplacian, TPZElasticityMaterial, TPZElasticity3D, TPZCoupledTransportDarcy, TPZElasticityAxiMaterial, TPZMat1dLin, TPZNonLinBiharmonic, TPZMatHyperElastic, TPZConsLawTest, TPZBiharmonic, TPZEuler, TPZMatDualHybridPoisson, TPZMatOrthotropic, TPZMaterialTest, TPZMaterialTest3D, TPZMat2dLin, TPZCoupledTransportDarcyBC, TPZLinearConvection, TPZMatHybrid, TPZMatPlaca2, and TPZPlaca.
Definition at line 255 of file TPZMaterial.h.
References Contribute(), and CreateBC().
Referenced by TPZEulerEquation::ContributeBCInterface(), TPZEulerEquation::ContributeInterface(), Errors(), and TPZInterpolationSpace::ProjectFlux().
|
inlinevirtual |
To return a numerical flux type to apply over the interfaces of the elements.
Definition at line 536 of file TPZMaterial.h.
|
inline |
Returns a procedure as source function for the material.
Definition at line 397 of file TPZMaterial.h.
References fForcingFunction.
Referenced by TPZMixedElasticityMaterial::Contribute(), TPZElasticity2DHybrid::ContributeBC(), TPZLinearConvecDiff::ContributeBC(), TPZMatDualHybridPoisson::ContributeBC(), TPZPrimalPoisson::ContributeBC(), TPZMixedPoissonParabolic::ContributeBC(), TPZNullMaterial::ContributeBC(), TPZElasticity3D::ContributeBC(), TPZDualPoisson::ContributeBC(), TPZVecL2::ContributeBC(), TPZMixedPoisson::ContributeBC(), TPZMatLaplacian::ContributeBC(), TPZMatElasticity2D::ContributeBC(), TPZMixedElasticityMaterial::ContributeBC(), TPZMatMixedPoisson3D::ContributeBC(), TPZMatPoisson3d::ContributeBC(), TPZMatLaplacian::ContributeBCHDiv(), TPZMatPoisson3d::ContributeBCHDiv(), and TPZMatLaplacian::ContributeBCInterface().
|
inline |
Returns a procedure as exact solution for the problem.
Definition at line 411 of file TPZMaterial.h.
References fForcingFunctionExact.
|
inlinevirtual |
Frees an entry in the material with memory internal history storage.
Reimplemented in TPZMatWithMem< TPZFMatrix< STATE >, TPZElasticity3D >, TPZMatWithMem< TMEM >, TPZMatWithMem< TPZFMatrix< REAL >, TPZElasticity3D >, and TPZBndCondWithMem< TMEM >.
Definition at line 564 of file TPZMaterial.h.
References SetLinearContext().
|
inline |
Returns fLinearContext attribute.
Definition at line 570 of file TPZMaterial.h.
References ClassId(), fLinearContext, GFORCINGVEC, Read(), and Write().
|
inlinevirtual |
Directive that gives true if the material has a bc forcing function exact.
Definition at line 478 of file TPZMaterial.h.
|
inlinevirtual |
Directive that gives true if the material has a forcing function.
Reimplemented in TPZCoupledTransportDarcy, and TPZCoupledTransportDarcyBC.
Definition at line 472 of file TPZMaterial.h.
Referenced by TPZInterfaceElement::CalcResidual(), TPZInterfaceElement::ComputeErrorFace(), TPZMatDualHybridPoisson::Contribute(), TPZL2Projection::Contribute(), TPZPrimalPoisson::Contribute(), TPZDualPoisson::Contribute(), TPZMixedElasticityMaterial::Contribute(), TPZMatElasticity2D::Contribute(), TPZElasticity2DHybrid::ContributeBC(), TPZLinearConvecDiff::ContributeBC(), TPZMatDualHybridPoisson::ContributeBC(), TPZPrimalPoisson::ContributeBC(), TPZMixedPoissonParabolic::ContributeBC(), TPZNullMaterial::ContributeBC(), TPZElasticity3D::ContributeBC(), TPZDualPoisson::ContributeBC(), TPZVecL2::ContributeBC(), TPZMixedPoisson::ContributeBC(), TPZMatLaplacian::ContributeBC(), TPZMatElasticity2D::ContributeBC(), TPZMixedElasticityMaterial::ContributeBC(), TPZMatMixedPoisson3D::ContributeBC(), TPZMatPoisson3d::ContributeBC(), TPZMatLaplacian::ContributeBCHDiv(), TPZMatPoisson3d::ContributeBCHDiv(), TPZMatLaplacian::ContributeBCInterface(), TPZMatElasticity2D::ContributeVec(), TPZL2Projection::ContributeVecShape(), TPZMixedElasticityMaterial::Errors(), TPZCompElDisc::EvaluateSquareResidual2D(), TPZCoupledTransportDarcyBC::HasForcingFunction(), TPZCoupledTransportDarcy::HasForcingFunction(), TPZInterfaceElement::IntegrateInterface(), and TPZBndCond::Print().
|
inlinevirtual |
Directive that gives true if the material has a function exact.
Definition at line 475 of file TPZMaterial.h.
Referenced by TPZPrimalPoisson::Solution(), and TPZDualPoisson::Solution().
|
inlinevirtual |
Directive that gives true if the material has a time dependent bc forcing function.
Definition at line 487 of file TPZMaterial.h.
References IntegrationRuleOrder().
|
inlinevirtual |
Directive that gives true if the material has a time dependent forcing function.
Definition at line 484 of file TPZMaterial.h.
|
inlinevirtual |
Directive that gives true if the material has a time dependent function exact.
Definition at line 481 of file TPZMaterial.h.
|
inline |
Definition at line 170 of file TPZMaterial.h.
References fId.
Referenced by TPZMulticamadaOrthotropic::AddPlacaOrtho(), TPZMHMixedHybridMeshControl::ApplyNeighbourBoundaryCondition(), TPZFrontStructMatrix< front >::Assemble(), TPZBuildMultiphysicsMesh::BuildHybridMesh(), TPZInterpolationSpace::CalcStiff(), TPZInterfaceElement::CalcStiff(), TPZGradientReconstruction::ChangeMaterialIdIntoCompElement(), TPZBndCondWithMem< TMEM >::Clone(), TPZBndCond::Clone(), Clone(), TPZFlowCompMesh::CollectFluidMaterials(), TPZMulticamadaOrthotropic::ComputeSolution(), TPZGradientReconstruction::TPZGradientData::CreateGhostsNeighbors(), TPZReducedSpace::CreateGraphicalElement(), TPZAgglomerateElement::CreateGraphicalElement(), TPZMultiphysicsInterfaceElement::CreateGraphicalElement(), TPZMultiphysicsCompEl< TGeometry >::CreateGraphicalElement(), TPZCompElDisc::CreateGraphicalElement(), TPZMultiphysicsElement::CreateInterface(), TPZInterpolationSpace::CreateInterface(), TPZCompMesh::DeltaX(), TPZAnalysisError::EvaluateError(), TPZCompMesh::EvaluateError(), TPZPoroElastoPlasticAnalysis::FindPorousMaterials(), TPZParFrontStructMatrix< front >::GlobalAssemble(), TPZAnalysisError::HPAdapt(), TPZCreateApproximationSpace::Hybridize(), TPZElastoPlasticAnalysis::IdentifyEquationsToZero(), TPZAnalysis::IdentifyPostProcessingMatIds(), TPZAgglomerateElement::InitializeElement(), TPZCompMesh::InsertMaterialObject(), TPZCompEl::IntegrateSolution(), TPZCompMesh::LesserEdgeOfMesh(), TPZCompMesh::MaximumRadiusOfMesh(), TPZSubCompMesh::NeedsComputing(), TPZMaterialTest3D::NewMaterial(), TPZPairStructMatrix::ThreadData::NextElement(), TPZStructMatrixCS::ThreadData::NextElement(), TPZAnalysis::PostProcess(), TPZEulerAnalysis::PrepareDXMesh(), TPZNLMat1d::Print(), TPZCoupledTransportDarcyBC::Print(), TPZInterpolatedElement::Print(), TPZCompEl::Print(), TPZMultiphysicsCompEl< TGeometry >::Print(), TPZBndCond::Print(), TPZGradientReconstruction::ProjectionL2GradientReconstructed(), PYBIND11_MODULE(), TPZNonLinMultGridAnalysis::ResetReference(), TPZStructMatrixGCTP::Serial_Assemble(), TPZStructMatrixGC::Serial_Assemble(), TPZStructMatrixCS::Serial_Assemble(), TPZStructMatrixOT::Serial_Assemble(), TPZNonLinMultGridAnalysis::SetReference(), TPZNonLinMultGridAnalysis::SmoothingSolution2(), Solution(), TPZPairStructMatrix::TPZPairStructMatrix(), TPZSubCompMesh::TransferElementFrom(), TPZNonLinMultGridAnalysis::TwoGridAlgorithm(), TPZCompElDisc::Write(), and TPZPostProcMat::~TPZPostProcMat().
|
virtual |
Gets the order of the integration rule necessary to integrate an element with polinomial order p.
Get the order of the integration rule necessary to integrate an element with polinomial order p
Reimplemented in TPZMatMixedPoisson3D, TPZElasticity3D, and TPZL2Projection.
Definition at line 349 of file TPZMaterial.cpp.
References fForcingFunction, and TPZFunction< TVar >::PolynomialOrder().
Referenced by TPZInterpolationSpace::AdjustIntegrationRule(), TPZInterfaceElement::CalcResidual(), TPZMultiphysicsCompEl< TGeometry >::CalcResidual(), TPZMultiphysicsCompEl< TGeometry >::CalcStiff(), TPZInterfaceElement::ComputeErrorFace(), TPZCompElDisc::EvaluateSquareResidual2D(), HasTimedependentBCForcingFunction(), TPZMultiphysicsCompEl< TGeometry >::InitializeIntegrationRule(), TPZInterfaceElement::IntegrateInterface(), TPZMultiphysicsCompEl< TGeometry >::IntegrateSolution(), TPZL2Projection::IntegrationRuleOrder(), and TPZCompElHDiv< TSHAPE >::TPZCompElHDiv().
|
virtual |
Gets the order of the integration rule necessary to integrate an element multiphysic.
Reimplemented in TPZMatMixedPoisson3D.
Definition at line 364 of file TPZMaterial.cpp.
References fForcingFunction, TPZFunction< TVar >::PolynomialOrder(), and TPZVec< T >::size().
|
inlinevirtual |
returns the minimum number of load cases for this material
Reimplemented in TPZBndCond.
Definition at line 192 of file TPZMaterial.h.
Referenced by TPZAnalysis::ComputeNumberofLoadCases().
|
inlinevirtual |
Returns the name of the material.
Reimplemented in TPZMatPoisson3d, TPZMatLaplacian, TPZMixedElasticityMaterial, TPZConservationLaw, TPZEulerEquation, TPZSwelling, TPZCoupledTransportDarcy, TPZEulerConsLaw, TPZElasticity3D, TPZElasticityAxiMaterial, TPZMatElasticity2D, TPZMixedPoissonParabolic, TPZElasticityMaterial, TPZMatMixedPoisson3D, TPZMixedPoisson, TPZLagrangeMultiplier, TPZMatConvectionProblem, TPZPostProcMat, TPZMat1dLin, TPZMultiphase, TPZDualPoisson, TPZMatDualHybridPoisson, TPZMixedDarcyFlow, TPZMat2dLin, TPZPrimalPoisson, TPZTracerFlow, TPZLinearConvecDiff, TPZConsLawTest, TPZNullMaterial, TPZMatElastoPlastic< T, TMEM >, TPZElasticityHybridMaterial, TPZMatHyperElastic, TPZNonLinBiharmonic, TPZVecL2, TPZMatPorous< T, TMEM >, TPZBiharmonic, TPZMatElastoPlastic2D< T, TMEM >, TPZMatPlaca2, TPZMaterialTest3D, TPZBndCondWithMem< TMEM >, TPZMatOrthotropic, TPZMaterialTest, TPZMatWithMem< TPZFMatrix< STATE >, TPZElasticity3D >, TPZMatWithMem< TMEM >, TPZMatWithMem< TPZFMatrix< REAL >, TPZElasticity3D >, TPZPorousElasticity, TPZPlaca, TPZHybridPoisson, TPZMatHybrid, TPZDiscontinuousGalerkin, and TPZNLMat1d.
Definition at line 165 of file TPZMaterial.h.
References Dimension().
Referenced by TPZInterpolatedElement::CompareElement().
|
inlinevirtual |
Returns the number of norm errors. Default is 3: energy, L2 and H1.
Reimplemented in TPZMatPoisson3d, TPZMatLaplacian, TPZBndCond, TPZElasticityMaterial, TPZMixedPoisson, TPZElasticity3D, TPZDualPoisson, TPZPrimalPoisson, TPZMatPorous< T, TMEM >, TPZMatElastoPlastic< T, TMEM >, TPZMatDualHybridPoisson, TPZMixedElasticityMaterial, TPZCoupledTransportDarcyBC, TPZLinearConvecDiff, TPZBiharmonicEstimator, TPZNonLinBiharmonic, and TPZBiharmonic.
Definition at line 524 of file TPZMaterial.h.
References Clone(), NewMaterial(), and SetData().
Referenced by TPZL2Projection::Errors(), TPZMatMixedPoisson3D::Errors(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZSBFemVolume::EvaluateError(), and TPZBndCond::NEvalErrors().
|
virtual |
To create another material of the same type.
Reimplemented in TPZElasticity3D, TPZVecL2, TPZMatElastoPlastic< T, TMEM >, TPZMatPorous< T, TMEM >, TPZMatElastoPlastic2D< T, TMEM >, TPZL2Projection, TPZMatPoisson3d, TPZEulerEquation, TPZCoupledTransportDarcy, TPZMatLaplacian, TPZMat2dLin, TPZReynoldsFlow, TPZMixedElasticityMaterial, TPZEuler, TPZMatMixedPoisson3D, TPZMatElasticity2D, TPZLinearConvection, TPZMaterialTest3D, TPZMixedPoisson, TPZTracerFlow, TPZElast3Dnlinear, TPZLagrangeMultiplier, TPZMatDualHybridPoisson, TPZElasticityAxiMaterial, TPZMat1dLin, TPZEulerConsLaw, TPZMixedDarcyFlow, TPZDualPoisson, TPZNullMaterial, TPZMatPoisson3dReferred, TPZLinearConvecDiff, TPZPrimalPoisson, TPZElasticityMaterial, TPZElasticity2DHybrid, and TPZElasticityHybridMaterial.
Definition at line 291 of file TPZMaterial.cpp.
References PZError.
Referenced by Clone(), and NEvalErrors().
|
inlinevirtual |
Returns the number of components which form the flux function.
Reimplemented in TPZMatPoisson3d, TPZBndCond, TPZMatLaplacian, TPZMixedElasticityMaterial, TPZElasticity3D, TPZConservationLaw, TPZCoupledTransportDarcy, TPZEulerConsLaw, TPZElasticityAxiMaterial, TPZElasticityMaterial, TPZNonLinBiharmonic, TPZMatHyperElastic, TPZMatDualHybridPoisson, TPZMatPorous< T, TMEM >, TPZConsLawTest, TPZMat2dLin, TPZBiharmonic, TPZMatElastoPlastic< T, TMEM >, TPZMaterialTest, TPZNullMaterial, TPZCoupledTransportDarcyBC, TPZMatOrthotropic, TPZMat1dLin, TPZMatPlaca2, TPZVecL2, TPZMaterialTest3D, TPZPlaca, TPZMatHybrid, TPZLinearConvecDiff, TPZEuler, TPZBCTension, and TPZLinearConvection.
Definition at line 183 of file TPZMaterial.h.
Referenced by TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZBCTension::NFluxes(), TPZBndCond::NFluxes(), and TPZInterpolationSpace::ProjectFlux().
|
virtual |
Returns the number of variables associated with the variable indexed by var.
var | Index variable into the solution, is obtained by calling VariableIndex |
Reimplemented in TPZMatMixedPoisson3D, TPZSwelling, TPZMatPoisson3d, TPZMatLaplacian, TPZMatElasticity2D, TPZElasticityMaterial, TPZMatConvectionProblem, TPZMixedPoisson, TPZConservationLaw, TPZElasticity3D, TPZCoupledTransportDarcy, TPZDualPoisson, TPZEulerEquation, TPZL2Projection, TPZMultiphase, TPZElasticityAxiMaterial, TPZPrimalPoisson, TPZEulerConsLaw, TPZMixedDarcyFlow, TPZMat2dLin, TPZPostProcMat, TPZNullMaterial, TPZNonLinBiharmonic, TPZMatPlaca2, TPZMatHyperElastic, TPZTracerFlow, TPZVecL2, TPZMatDualHybridPoisson, TPZPorousElasticity, TPZConsLawTest, TPZBiharmonic, TPZEuler, TPZMatPorous< T, TMEM >, TPZViscoelastic, TPZPlaca, TPZIncNavierStokesKEps, TPZMaterialTest, TPZMatOrthotropic, TPZMixedElasticityMaterial, TPZMatElastoPlastic< T, TMEM >, TPZLinearConvection, TPZMaterialTest3D, TPZMatHybrid, TPZLinearConvecDiff, and TPZMultCamada.
Definition at line 176 of file TPZMaterial.cpp.
References DebugStop, NStateVariables(), and PZError.
Referenced by TPZCompElPostProc< TCOMPEL >::CalcResidual(), TPZInterpolatedElement::CompareElement(), TPZDXGraphMesh::DrawSolution(), TPZInterfaceElement::Integrate(), TPZCompMesh::Integrate(), TPZInterfaceElement::IntegrateInterface(), TPZMultiphysicsCompEl< TGeometry >::IntegrateSolution(), TPZInterpolationSpace::IntegrateSolution(), TPZCompEl::IntegrateSolution(), TPZInterpolatedElement::MeanSolution(), TPZMatHybrid::NSolutionVariables(), TPZLinearConvecDiff::NSolutionVariables(), TPZMultCamada::NSolutionVariables(), TPZMaterialTest3D::NSolutionVariables(), TPZLinearConvection::NSolutionVariables(), TPZMixedElasticityMaterial::NSolutionVariables(), TPZMaterialTest::NSolutionVariables(), TPZPlaca::NSolutionVariables(), TPZEuler::NSolutionVariables(), TPZBiharmonic::NSolutionVariables(), TPZMatDualHybridPoisson::NSolutionVariables(), TPZMatHyperElastic::NSolutionVariables(), TPZVecL2::NSolutionVariables(), TPZTracerFlow::NSolutionVariables(), TPZMatPlaca2::NSolutionVariables(), TPZNonLinBiharmonic::NSolutionVariables(), TPZNullMaterial::NSolutionVariables(), TPZMat2dLin::NSolutionVariables(), TPZMixedDarcyFlow::NSolutionVariables(), TPZPrimalPoisson::NSolutionVariables(), TPZElasticityAxiMaterial::NSolutionVariables(), TPZMultiphase::NSolutionVariables(), TPZL2Projection::NSolutionVariables(), TPZDualPoisson::NSolutionVariables(), TPZElasticity3D::NSolutionVariables(), TPZMatConvectionProblem::NSolutionVariables(), TPZElasticityMaterial::NSolutionVariables(), TPZMatElasticity2D::NSolutionVariables(), TPZMatLaplacian::NSolutionVariables(), TPZMatPoisson3d::NSolutionVariables(), TPZSwelling::NSolutionVariables(), TPZMatMixedPoisson3D::NSolutionVariables(), TPZCompEl::PrintSolution(), TPZCompEl::PrintTitle(), SetPostProcessIndex(), TPZPostProcMat::SetPostProcessVarIndexList(), TPZAnalysis::ShowShape(), TPZInterpolationSpace::Solution(), and TPZMeshSolution::TPZMeshSolution().
|
pure virtual |
Returns the number of state variables associated with the material.
Implemented in TPZLagrangeMultiplier, TPZBndCond, TPZMixedElasticityMaterial, TPZMatPoisson3d, TPZConservationLaw, TPZMatLaplacian, TPZSwelling, TPZEulerEquation, TPZCoupledTransportDarcy, TPZL2Projection, TPZMatMixedPoisson3D, TPZMatElasticity2D, TPZElasticityAxiMaterial, TPZMatConvectionProblem, TPZMixedPoisson, TPZElasticityMaterial, TPZMultCamada, TPZPostProcMat, TPZCoupledTransportDarcyBC, TPZEulerConsLaw, TPZMultiphase, TPZElasticity3D, TPZTracerFlow, TPZIncNavierStokesKEps, TPZMatPorous< T, TMEM >, TPZNullMaterial, TPZVecL2, TPZDualPoisson, TPZMatDualHybridPoisson, TPZMixedDarcyFlow, TPZMatElastoPlastic< T, TMEM >, TPZPrimalPoisson, TPZMat1dLin, TPZMatElastoPlastic2D< T, TMEM >, TPZSpaceTimeRichardsEq, TPZLinearConvecDiff, TPZMatPoisson3dReferred, TPZConsLawTest, TPZReynoldsFlow, TPZElasticityHybridMaterial, TPZMatHyperElastic, TPZPorousElasticity, TPZNonLinBiharmonic, TPZEuler, TPZBiharmonic, TPZMatOrthotropic, TPZMaterialTest3D, TPZBCTension, TPZMatPlaca2, TPZMaterialTest, TPZMat2dLin, TPZNLMat1d, TPZPlaca, TPZMatHybrid, and TPZLinearConvection.
Referenced by TPZPoroElastoPlasticAnalysis::AcceptSolution(), TPZInterpolatedElement::AdjustPreferredSideOrder(), TPZInterpolationSpace::BuildTransferMatrix(), TPZInterpolatedElement::BuildTransferMatrix(), TPZCompMesh::BuildTransferMatrix(), TPZCompMesh::BuildTransferMatrixDesc(), TPZInterpolatedElement::CalcIntegral(), TPZAgglomerateElement::CalcStiff(), TPZSubCompMesh::CalcStiff(), TPZInterpolatedElement::CheckElementConsistency(), TPZSBFemVolume::ComputeKMatrices(), TPZReducedSpace::ComputeSolution(), TPZInterpolatedElement::ComputeSolution(), TPZSBFemVolume::ComputeSolution(), TPZCompElDisc::ComputeSolution(), TPZCompElHDiv< TSHAPE >::ComputeSolutionHDiv(), TPZCompElHDivPressure< TSHAPE >::ComputeSolutionPressureHDiv(), TPZCompElDisc::CreateMidSideConnect(), TPZAgglomerateElement::CreateMidSideConnect(), TPZInterpolatedElement::CreateMidSideConnect(), TPZMGAnalysis::ElementError(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZSBFemVolume::EvaluateError(), TPZInterfaceElement::EvaluateInterfaceJump(), TPZSubCompMesh::InitializeEF(), TPZInterfaceElement::InitializeElementMatrix(), TPZMultiphysicsInterfaceElement::InitializeElementMatrix(), TPZInterpolationSpace::InitializeElementMatrix(), TPZMultiphysicsCompEl< TGeometry >::InitializeElementMatrix(), TPZSBFemVolume::InitMaterialData(), TPZInterpolationSpace::InitMaterialData(), TPZMHMixedMeshControl::InsertPeriferalMaterialObjects(), TPZInterpolationSpace::InterpolateSolution(), main(), NSolutionVariables(), TPZBCTension::NStateVariables(), TPZBndCond::NStateVariables(), TPZAgglomerateElement::ProjectSolution(), TPZCompElDisc::SetDegree(), TPZCompElDisc::SetExternalShapeFunction(), SetId(), TPZCompElHDivBound2< TSHAPE >::SetSideOrder(), TPZIntelGen< TSHAPE >::SetSideOrder(), TPZCompElHDivPressureBound< TSHAPE >::SetSideOrder(), TPZCompElHDiv< TSHAPE >::SetSideOrder(), TPZSBFemVolume::Shape(), TPZAnalysis::ShowShape(), and TPZCompElDisc::SolutionX().
|
inline |
returns the number of load cases for this material object
Definition at line 186 of file TPZMaterial.h.
References fNumLoadCases.
Referenced by TPZAgglomerateElement::CalcStiff(), TPZSubCompMesh::CalcStiff(), TPZElasticity2DHybrid::ContributeBC(), TPZElasticityMaterial::ContributeBC(), TPZMixedElasticityMaterial::ContributeBC(), TPZSubCompMesh::InitializeEF(), TPZInterfaceElement::InitializeElementMatrix(), TPZReducedSpace::InitializeElementMatrix(), TPZMultiphysicsInterfaceElement::InitializeElementMatrix(), TPZInterpolationSpace::InitializeElementMatrix(), TPZCompElLagrange::InitializeElementMatrix(), TPZMultiphysicsCompEl< TGeometry >::InitializeElementMatrix(), and TPZGradientReconstruction::ProjectionL2GradientReconstructed().
TPZMaterial & TPZMaterial::operator= | ( | const TPZMaterial & | copy | ) |
operator =
Definition at line 62 of file TPZMaterial.cpp.
References fBCForcingFunction, fForcingFunction, fForcingFunctionExact, fId, fLinearContext, fNumLoadCases, fPostProcIndex, fTimedependentBCForcingFunction, fTimeDependentForcingFunction, and fTimedependentFunctionExact.
Referenced by TPZNullMaterial::operator=(), TPZMat1dLin::operator=(), TPZTracerFlow::operator=(), TPZLagrangeMultiplier::operator=(), TPZDualPoisson::operator=(), TPZMixedDarcyFlow::operator=(), TPZMatConvectionProblem::operator=(), TPZMatElasticity2D::operator=(), TPZMatMixedPoisson3D::operator=(), TPZMatLaplacian::operator=(), and TPZMatPoisson3d::operator=().
|
virtual |
Prints out the data associated with the material.
Reimplemented in TPZBndCond, TPZMatPoisson3d, TPZMatLaplacian, TPZMatMixedPoisson3D, TPZMixedElasticityMaterial, TPZConservationLaw, TPZEulerEquation, TPZSwelling, TPZCoupledTransportDarcy, TPZEulerConsLaw, TPZElasticityAxiMaterial, TPZMatElasticity2D, TPZMixedPoissonParabolic, TPZCoupledTransportDarcyBC, TPZElasticityMaterial, TPZElasticity3D, TPZPostProcMat, TPZNullMaterial, TPZMixedPoisson, TPZTracerFlow, TPZVecL2, TPZMatConvectionProblem, TPZEuler, TPZIncNavierStokesKEps, TPZMultiphase, TPZMatElastoPlastic< T, TMEM >, TPZMatDualHybridPoisson, TPZMat1dLin, TPZDualPoisson, TPZLinearConvection, TPZMixedDarcyFlow, TPZPrimalPoisson, TPZMatElastoPlastic2D< T, TMEM >, TPZLinearConvecDiff, TPZConsLawTest, TPZMatWithMem< TPZFMatrix< STATE >, TPZElasticity3D >, TPZMatWithMem< TMEM >, TPZMatWithMem< TPZFMatrix< REAL >, TPZElasticity3D >, TPZMatHyperElastic, TPZBndCondWithMem< TMEM >, TPZNonLinBiharmonic, TPZBiharmonic, TPZMatPlaca2, TPZMaterialTest3D, TPZMatOrthotropic, TPZMat2dLin, TPZMaterialTest, TPZNLMat1d, TPZPlaca, TPZPorousElasticity, TPZHybridPoisson, and TPZMatHybrid.
Definition at line 103 of file TPZMaterial.cpp.
References fForcingFunction, fForcingFunctionExact, fId, fLinearContext, fNumLoadCases, fTimeDependentForcingFunction, fTimedependentFunctionExact, gBigNumber, and TPZFunction< TVar >::Print().
Referenced by TPZHybridPoisson::Print(), TPZMatOrthotropic::Print(), TPZMaterialTest3D::Print(), TPZBiharmonic::Print(), TPZNonLinBiharmonic::Print(), TPZMatHyperElastic::Print(), TPZConsLawTest::Print(), TPZLinearConvecDiff::Print(), TPZPrimalPoisson::Print(), TPZDualPoisson::Print(), TPZLinearConvection::Print(), TPZMatDualHybridPoisson::Print(), TPZMultiphase::Print(), TPZIncNavierStokesKEps::Print(), TPZEuler::Print(), TPZMatConvectionProblem::Print(), TPZVecL2::Print(), TPZTracerFlow::Print(), TPZNullMaterial::Print(), TPZPostProcMat::Print(), TPZElasticity3D::Print(), TPZElasticityAxiMaterial::Print(), TPZMatElasticity2D::Print(), TPZEulerConsLaw::Print(), TPZCoupledTransportDarcy::Print(), TPZSwelling::Print(), TPZEulerEquation::Print(), TPZConservationLaw::Print(), TPZMatMixedPoisson3D::Print(), TPZMatLaplacian::Print(), TPZMatPoisson3d::Print(), TPZCompMesh::Print(), and SetPostProcessIndex().
|
inlinevirtual |
Pushes a new entry in the context of materials with memory, returning its index at the internal storage stack.
To be implemented only in the proper materials.
Reimplemented in TPZMatWithMem< TPZFMatrix< STATE >, TPZElasticity3D >, TPZMatWithMem< TMEM >, TPZMatWithMem< TPZFMatrix< REAL >, TPZElasticity3D >, and TPZBndCondWithMem< TMEM >.
Definition at line 561 of file TPZMaterial.h.
|
overridevirtual |
Reads the element data from a stream.
Reimplemented from TPZSavable.
Reimplemented in TPZMatLaplacian, TPZVecL2, TPZPostProcMat, TPZNullMaterial, TPZReynoldsFlow, TPZPorousElasticity, TPZMatWithMem< TPZFMatrix< STATE >, TPZElasticity3D >, TPZMatWithMem< TMEM >, and TPZMatWithMem< TPZFMatrix< REAL >, TPZElasticity3D >.
Definition at line 402 of file TPZMaterial.cpp.
References fBCForcingFunction, fForcingFunction, fForcingFunctionExact, fId, fLinearContext, fNumLoadCases, fPostProcIndex, fTimedependentBCForcingFunction, fTimeDependentForcingFunction, fTimedependentFunctionExact, gBigNumber, TPZPersistenceManager::GetAutoPointer(), and TPZStream::Read().
Referenced by GetLinearContext(), TPZMaterialTest3D::Read(), TPZMat2dLin::Read(), TPZNullMaterial::Read(), TPZElasticityAxiMaterial::Read(), TPZVecL2::Read(), TPZElasticityMaterial::Read(), TPZConservationLaw::Read(), TPZMatElasticity2D::Read(), TPZDiscontinuousGalerkin::Read(), TPZElasticity3D::Read(), and TPZMixedElasticityMaterial::Read().
|
inline |
Sets a procedure as variable boundary condition.
fp | pointer of exact solution function |
Definition at line 447 of file TPZMaterial.h.
Referenced by TPZBndCond::SetBCForcingFunction().
|
virtual |
Reads data of the material from a istream (file data)
Reimplemented in TPZEuler, and TPZLinearConvection.
Definition at line 286 of file TPZMaterial.cpp.
Referenced by NEvalErrors(), and TPZEuler::SetData().
|
inline |
Sets a procedure as source function for the material.
fp | pointer of the forces function |
Definition at line 368 of file TPZMaterial.h.
Referenced by Hdiv2dPaper201504::CMeshH1(), hdivCurvedJCompAppMath::CMeshH1(), Hdiv3dPaper201504::CMeshH1(), Hdiv2dPaper201504::CMeshMixed(), hdivCurvedJCompAppMath::CMeshMixed(), Hdiv3dPaper201504::CMeshMixed(), TCedricTest::GenerateCompMesh(), TPZSubCompMesh::main(), MalhaComp(), TPZGradientReconstruction::ProjectionL2GradientReconstructed(), TPZBndCond::SetForcingFunction(), TPZNonLinMultGridAnalysis::SmoothingSolution(), and TPZNonLinMultGridAnalysis::SmoothingSolution2().
|
inline |
Definition at line 372 of file TPZMaterial.h.
References porder, and TPZDummyFunction< TVar >::SetPolynomialOrder().
|
inline |
Definition at line 384 of file TPZMaterial.h.
References porder, and TPZDummyFunction< TVar >::SetPolynomialOrder().
|
inline |
Sets a procedure as exact solution for the problem.
fp | pointer of exact solution function |
Definition at line 405 of file TPZMaterial.h.
Referenced by Hdiv2dPaper201504::CMeshH1(), hdivCurvedJCompAppMath::CMeshH1(), Hdiv3dPaper201504::CMeshH1(), Hdiv2dPaper201504::CMeshMixed(), hdivCurvedJCompAppMath::CMeshMixed(), Hdiv3dPaper201504::CMeshMixed(), MalhaComp(), and TPZBndCond::SetForcingFunctionExact().
|
inline |
Definition at line 171 of file TPZMaterial.h.
References NStateVariables().
Referenced by PYBIND11_MODULE(), TPZCoupledTransportDarcyBC::TPZCoupledTransportDarcyBC(), and TPZMaterial().
void TPZMaterial::SetLinearContext | ( | bool | IsLinear | ) |
Sets fLinearContext attribute.
Definition at line 77 of file TPZMaterial.cpp.
References fLinearContext.
Referenced by FreeMemItem().
|
inline |
changes the number of load cases for this material
Definition at line 198 of file TPZMaterial.h.
References DebugStop.
Referenced by TPZAnalysis::ComputeNumberofLoadCases().
|
inline |
indicates which variable should be post processed
Definition at line 209 of file TPZMaterial.h.
References DebugStop, NSolutionVariables(), Print(), Solution(), and VariableIndex().
|
inline |
Sets a procedure as time variable boundary condition.
fp | pointer of exact solution function |
Definition at line 461 of file TPZMaterial.h.
Referenced by TPZBndCond::SetTimedependentBCForcingFunction().
|
inline |
Sets a procedure as time dependent source function for the material.
fp | pointer of the function |
Definition at line 419 of file TPZMaterial.h.
Referenced by TPZBndCond::SetTimeDependentForcingFunction().
|
inline |
Sets a procedure as time dependent exact solution for the problem.
fp | pointer of the function |
Definition at line 433 of file TPZMaterial.h.
Referenced by TPZBndCond::SetTimeDependentFunctionExact().
|
virtual |
Returns the solution associated with the var index based on the finite element approximation.
Reimplemented in TPZMatMixedPoisson3D, TPZSwelling, TPZMixedElasticityMaterial, TPZMatPoisson3d, TPZMatLaplacian, TPZMatElasticity2D, TPZElasticityMaterial, TPZConservationLaw, TPZMatConvectionProblem, TPZElasticity3D, TPZDualPoisson, TPZL2Projection, TPZEulerConsLaw, TPZElasticityAxiMaterial, TPZPrimalPoisson, TPZPostProcMat, TPZMat2dLin, TPZMatPlaca2, TPZMatHyperElastic, TPZNullMaterial, TPZThermicElast3D, TPZMatDualHybridPoisson, TPZConsLawTest, TPZPorousElasticity, TPZVecL2, TPZViscoelastic, TPZEuler, TPZIncNavierStokesKEps, TPZMaterialTest, TPZPlaca, TPZMatOrthotropic, TPZMaterialTest3D, TPZLinearConvection, TPZMatHybrid, TPZMultCamada, TPZLinearConvecDiff, TPZNLMat1d, and TPZMultPlaca.
Definition at line 200 of file TPZMaterial.cpp.
References TPZMaterialData::axes, DebugStop, TPZMaterialData::dsol, TPZVec< T >::size(), and TPZMaterialData::sol.
Referenced by TPZCompElPostProc< TCOMPEL >::CalcResidual(), TPZMultiphysicsCompEl< TGeometry >::IntegrateSolution(), TPZInterpolationSpace::IntegrateSolution(), SetPostProcessIndex(), TPZNLMat1d::Solution(), TPZMatHybrid::Solution(), TPZLinearConvecDiff::Solution(), TPZMultCamada::Solution(), TPZLinearConvection::Solution(), TPZMaterialTest3D::Solution(), TPZPlaca::Solution(), TPZMaterialTest::Solution(), TPZEuler::Solution(), TPZIncNavierStokesKEps::Solution(), TPZMatHyperElastic::Solution(), TPZMatDualHybridPoisson::Solution(), TPZMatPlaca2::Solution(), TPZMat2dLin::Solution(), TPZVecL2::Solution(), TPZNullMaterial::Solution(), TPZCompElHDivPressure< TSHAPE >::Solution(), TPZElasticityAxiMaterial::Solution(), TPZEulerConsLaw::Solution(), TPZMultiphase::Solution(), TPZEulerEquation::Solution(), TPZL2Projection::Solution(), TPZElasticity3D::Solution(), TPZMultiphysicsCompEl< TGeometry >::Solution(), TPZConservationLaw::Solution(), TPZElasticityMaterial::Solution(), TPZMatLaplacian::Solution(), TPZInterpolationSpace::Solution(), TPZCompElHDiv< TSHAPE >::Solution(), Solution(), TPZMultiphysicsInterfaceElement::Solution(), TPZMatPoisson3d::Solution(), TPZMixedElasticityMaterial::Solution(), TPZSwelling::Solution(), TPZMatMixedPoisson3D::Solution(), and TPZSBFemVolume::Solution().
|
virtual |
Returns the solution associated with the var index based on the finite element approximation.
Reimplemented in TPZMatMixedPoisson3D, TPZMixedElasticityMaterial, TPZMatPoisson3d, TPZMatLaplacian, TPZMixedPoisson, TPZDualPoisson, TPZMultiphase, TPZPrimalPoisson, TPZMixedDarcyFlow, TPZNullMaterial, and TPZVecL2.
Definition at line 208 of file TPZMaterial.cpp.
References DebugStop, TPZMaterialData::EEmpty, TPZVec< T >::size(), and Solution().
|
virtual |
Returns the solution associated with the var index based on the finite element approximation around one interface element.
Reimplemented in TPZNullMaterial, and TPZVecL2.
Definition at line 226 of file TPZMaterial.cpp.
References Solution().
|
virtual |
Returns the solution associated with the var index based on the finite element approximation around one interface element.
Reimplemented in TPZMatElasticity2D, TPZMultiphase, TPZNullMaterial, TPZVecL2, and TPZPorousElasticity.
Definition at line 231 of file TPZMaterial.cpp.
References Solution().
|
protectedvirtual |
Reimplemented in TPZMatMixedPoisson3D, TPZSwelling, TPZMatPoisson3d, TPZMatLaplacian, TPZConservationLaw, TPZCoupledTransportDarcy, TPZElasticity3D, TPZL2Projection, TPZEulerEquation, TPZEulerConsLaw, TPZNullMaterial, TPZVecL2, TPZMat2dLin, TPZNonLinBiharmonic, TPZMatHyperElastic, TPZMatPlaca2, TPZBiharmonic, TPZThermicElast3D, TPZConsLawTest, TPZEuler, TPZMaterialTest, TPZIncNavierStokesKEps, TPZPlaca, TPZMatOrthotropic, TPZMaterialTest3D, TPZLinearConvection, TPZMatHybrid, TPZMultCamada, and TPZMultPlaca.
Definition at line 236 of file TPZMaterial.cpp.
References DebugStop, TPZVec< T >::Fill(), Id(), PZError, TPZVec< T >::Resize(), TPZVec< T >::resize(), TPZMatrix< TVar >::Rows(), and TPZVec< T >::size().
|
inline |
Returns a procedure as time variable boundary condition.
Definition at line 467 of file TPZMaterial.h.
References fTimedependentBCForcingFunction.
|
inline |
Returns a procedure as time dependent source function for the material.
Definition at line 425 of file TPZMaterial.h.
References fTimeDependentForcingFunction.
|
inline |
Returns a procedure as time dependent exact solution for the problem.
Definition at line 439 of file TPZMaterial.h.
References fTimedependentFunctionExact.
|
virtual |
Returns the variable index associated with the name.
Reimplemented in TPZMatMixedPoisson3D, TPZSwelling, TPZMatPoisson3d, TPZMatLaplacian, TPZMatElasticity2D, TPZElasticityMaterial, TPZMatConvectionProblem, TPZMixedPoisson, TPZConservationLaw, TPZElasticity3D, TPZCoupledTransportDarcy, TPZDualPoisson, TPZEulerEquation, TPZL2Projection, TPZMultiphase, TPZElasticityAxiMaterial, TPZPrimalPoisson, TPZEulerConsLaw, TPZMixedDarcyFlow, TPZMat2dLin, TPZNonLinBiharmonic, TPZPostProcMat, TPZMatHyperElastic, TPZNullMaterial, TPZMatDualHybridPoisson, TPZTracerFlow, TPZMatPlaca2, TPZConsLawTest, TPZVecL2, TPZPorousElasticity, TPZBiharmonic, TPZEuler, TPZPlaca, TPZViscoelastic, TPZMatPorous< T, TMEM >, TPZMaterialTest, TPZMatOrthotropic, TPZMixedElasticityMaterial, TPZMatElastoPlastic< T, TMEM >, TPZLinearConvection, TPZMaterialTest3D, TPZMatHybrid, TPZLinearConvecDiff, and TPZMultCamada.
Definition at line 141 of file TPZMaterial.cpp.
References LOGPZ_ERROR.
Referenced by TPZMultiphysicsInterfaceElement::CreateGraphicalElement(), TPZVTKGraphMesh::DrawSolution(), TPZMVGraphMesh::DrawSolution(), TPZV3DGraphMesh::DrawSolution(), TPZDXGraphMesh::DrawSolution(), TPZPlacaOrthotropic::GradTensor(), TPZPlacaOrthotropic::IdentifyCompEl(), TPZCompMesh::Integrate(), TPZCompEl::IntegrateSolution(), TPZCompEl::PrintSolution(), TPZCompEl::PrintTitle(), SetPostProcessIndex(), TPZPostProcMat::SetPostProcessVarIndexList(), TPZAnalysis::ShowShape(), TPZPlacaOrthotropic::Tensor(), TPZMeshSolution::TPZMeshSolution(), TPZPlacaOrthotropic::TPZPlacaOrthotropic(), TPZMatHybrid::VariableIndex(), TPZLinearConvecDiff::VariableIndex(), TPZMultCamada::VariableIndex(), TPZMaterialTest3D::VariableIndex(), TPZLinearConvection::VariableIndex(), TPZMixedElasticityMaterial::VariableIndex(), TPZMaterialTest::VariableIndex(), TPZPlaca::VariableIndex(), TPZEuler::VariableIndex(), TPZVecL2::VariableIndex(), TPZMatPlaca2::VariableIndex(), TPZTracerFlow::VariableIndex(), TPZMatDualHybridPoisson::VariableIndex(), TPZMatHyperElastic::VariableIndex(), TPZNullMaterial::VariableIndex(), TPZMat2dLin::VariableIndex(), TPZMixedDarcyFlow::VariableIndex(), TPZEulerConsLaw::VariableIndex(), TPZPrimalPoisson::VariableIndex(), TPZElasticityAxiMaterial::VariableIndex(), TPZMultiphase::VariableIndex(), TPZL2Projection::VariableIndex(), TPZEulerEquation::VariableIndex(), TPZDualPoisson::VariableIndex(), TPZElasticity3D::VariableIndex(), TPZMatConvectionProblem::VariableIndex(), TPZElasticityMaterial::VariableIndex(), TPZMatElasticity2D::VariableIndex(), TPZMatLaplacian::VariableIndex(), TPZMatPoisson3d::VariableIndex(), TPZSwelling::VariableIndex(), and TPZMatMixedPoisson3D::VariableIndex().
|
overridevirtual |
Saves the element data to a stream.
Reimplemented from TPZSavable.
Reimplemented in TPZMatLaplacian, TPZVecL2, TPZPostProcMat, TPZNullMaterial, TPZReynoldsFlow, TPZPorousElasticity, TPZMatWithMem< TPZFMatrix< STATE >, TPZElasticity3D >, TPZMatWithMem< TMEM >, and TPZMatWithMem< TPZFMatrix< REAL >, TPZElasticity3D >.
Definition at line 387 of file TPZMaterial.cpp.
References fBCForcingFunction, fForcingFunction, fForcingFunctionExact, fId, fLinearContext, fNumLoadCases, fPostProcIndex, fTimedependentBCForcingFunction, fTimeDependentForcingFunction, fTimedependentFunctionExact, gBigNumber, TPZStream::Write(), and TPZPersistenceManager::WritePointer().
Referenced by GetLinearContext(), TPZMaterialTest3D::Write(), TPZMat2dLin::Write(), TPZNullMaterial::Write(), TPZElasticityAxiMaterial::Write(), TPZVecL2::Write(), TPZElasticityMaterial::Write(), TPZConservationLaw::Write(), TPZMatElasticity2D::Write(), TPZDiscontinuousGalerkin::Write(), TPZElasticity3D::Write(), and TPZMixedElasticityMaterial::Write().
|
protected |
Pointer to bc forcing function, it is a variable boundary condition at differential equation.
Definition at line 59 of file TPZMaterial.h.
Referenced by TPZMultiphase::ApplyPN(), BCForcingFunction(), operator=(), Read(), TPZBndCond::TPZBndCond(), TPZMaterial(), and Write().
|
protected |
Pointer to forcing function, it is the right member at differential equation.
Definition at line 47 of file TPZMaterial.h.
Referenced by TPZMatLaplacian::ComputeSquareResidual(), TPZMatPoisson3d::ComputeSquareResidual(), TPZMatHybrid::Contribute(), TPZPlaca::Contribute(), TPZMaterialTest::Contribute(), TPZMatOrthotropic::Contribute(), TPZMaterialTest3D::Contribute(), TPZMatPlaca2::Contribute(), TPZElasticity2DHybrid::Contribute(), TPZNonLinearPoisson3d::Contribute(), TPZBiharmonic::Contribute(), TPZMatHyperElastic::Contribute(), TPZConsLawTest::Contribute(), TPZLinearConvecDiff::Contribute(), TPZElasticityHybridMaterial::Contribute(), TPZNonLinBiharmonic::Contribute(), TPZMatDualHybridPoisson::Contribute(), TPZL2Projection::Contribute(), TPZMatElastoPlastic2D< T, TMEM >::Contribute(), TPZPrimalPoisson::Contribute(), TPZElasticityMaterial::Contribute(), TPZMixedPoissonParabolic::Contribute(), TPZMixedDarcyFlow::Contribute(), TPZElasticityAxiMaterial::Contribute(), TPZMatElastoPlastic< T, TMEM >::Contribute(), TPZElasticity3D::Contribute(), TPZMatPorous< T, TMEM >::Contribute(), TPZDualPoisson::Contribute(), TPZVecL2::Contribute(), TPZMatConvectionProblem::Contribute(), TPZMixedPoisson::Contribute(), TPZMatMixedPoisson3D::Contribute(), TPZMatLaplacian::Contribute(), TPZMixedElasticityMaterial::Contribute(), TPZMatPoisson3d::Contribute(), TPZMatElasticity2D::Contribute(), TPZEulerConsLaw::Contribute(), TPZEulerConsLaw::ContributeBCInterface(), TPZBiharmonicEstimator::ContributeErrorsDual(), TPZBurger::ContributeGradStab(), TPZMatLaplacian::ContributeHDiv(), TPZMatPoisson3d::ContributeHDiv(), TPZConsLawTest::ContributeInterface(), TPZBurger::ContributeSUPG(), TPZMatElasticity2D::ContributeVec(), TPZL2Projection::ContributeVecShape(), TPZElasticityMaterial::ContributeVecShape(), TPZElasticity3D::ContributeVecShape(), TPZElast3Dnlinear::ContributeVecShapeAux(), TPZMatMixedPoisson3D::ContributeWithoutSecondIntegration(), TPZMixedElasticityMaterial::Errors(), ForcingFunction(), TPZMatMixedPoisson3D::IntegrationRuleOrder(), IntegrationRuleOrder(), TPZMatPoisson3d::LocalNeumanContribute(), operator=(), Print(), Read(), TPZMatMixedPoisson3D::Solution(), TPZBndCond::TPZBndCond(), TPZMaterial(), and Write().
|
protected |
Pointer to exact solution function, needed to calculate exact error.
Definition at line 50 of file TPZMaterial.h.
Referenced by ForcingFunctionExact(), operator=(), Print(), Read(), TPZMatDualHybridPoisson::Solution(), TPZPrimalPoisson::Solution(), TPZDualPoisson::Solution(), TPZMixedPoisson::Solution(), TPZMatConvectionProblem::Solution(), TPZMatLaplacian::Solution(), TPZMatPoisson3d::Solution(), TPZMatMixedPoisson3D::Solution(), TPZBndCond::TPZBndCond(), TPZMaterial(), and Write().
|
private |
Definition at line 42 of file TPZMaterial.h.
Referenced by Id(), operator=(), Print(), Read(), SetData(), TPZMaterial(), Write(), and ~TPZMaterial().
|
protected |
Defines whether the equation context is linear solver or non linear.
Definition at line 70 of file TPZMaterial.h.
Referenced by TPZBndCond::FillDataRequirements(), TPZDiscontinuousGalerkin::FillDataRequirementsInterface(), TPZTracerFlow::FillDataRequirementsInterface(), GetLinearContext(), operator=(), Print(), Read(), SetLinearContext(), TPZMaterial(), and Write().
|
protected |
Defines the number of load cases generated by this material.
The number of load cases will determine the number of columns of the right hand side vector this variable defaults to one
Definition at line 76 of file TPZMaterial.h.
Referenced by TPZElast3Dnlinear::Contribute(), TPZElast3Dnlinear::ContributeBC(), TPZElasticity2DHybrid::ContributeBC(), TPZElasticityMaterial::ContributeBC(), TPZMixedElasticityMaterial::ContributeBC(), TPZElasticity3D::ContributeVecShapeBC(), TPZElasticityMaterial::ContributeVecShapeBC(), TPZElast3Dnlinear::ContributeVecShapeBCAux(), NumLoadCases(), operator=(), Print(), Read(), TPZMaterial(), and Write().
|
protected |
indicates which solution should be used for post processing
Definition at line 79 of file TPZMaterial.h.
Referenced by operator=(), TPZElasticityMaterial::Read(), TPZMixedElasticityMaterial::Read(), Read(), TPZElasticityMaterial::Solution(), TPZMixedElasticityMaterial::Solution(), TPZElasticityMaterial::TPZElasticityMaterial(), TPZMaterial(), TPZMixedElasticityMaterial::TPZMixedElasticityMaterial(), TPZElasticityMaterial::Write(), TPZMixedElasticityMaterial::Write(), and Write().
|
protected |
Pointer to time dependent bc forcing function, it is a variable boundary condition at differential equation.
Definition at line 62 of file TPZMaterial.h.
Referenced by operator=(), Read(), TimedependentBCForcingFunction(), TPZBndCond::TPZBndCond(), TPZMaterial(), and Write().
|
protected |
Pointer to time dependent forcing function, it is the right member at differential equation.
Definition at line 53 of file TPZMaterial.h.
Referenced by operator=(), Print(), Read(), TimeDependentForcingFunction(), TPZBndCond::TPZBndCond(), TPZMaterial(), and Write().
|
protected |
Pointer to time dependent exact solution function, needed to calculate exact error.
Definition at line 56 of file TPZMaterial.h.
Referenced by operator=(), Print(), Read(), TPZMultiphase::Solution(), TimedependentFunctionExact(), TPZBndCond::TPZBndCond(), TPZMaterial(), and Write().
|
static |
Big number to penalization method, used for Dirichlet conditions.
Definition at line 83 of file TPZMaterial.h.
Referenced by TPZMultiphase::ApplyQnD(), TPZMultiphase::ApplyUxD(), TPZMultiphase::ApplyUyD(), TPZMatPoisson3d::BCInterfaceJump(), TPZMatHybrid::ContributeBC(), TPZLinearConvection::ContributeBC(), TPZPlaca::ContributeBC(), TPZMaterialTest3D::ContributeBC(), TPZMaterialTest::ContributeBC(), TPZMatPlaca2::ContributeBC(), TPZElasticity2DHybrid::ContributeBC(), TPZLinearConvecDiff::ContributeBC(), TPZNonLinearPoisson3d::ContributeBC(), TPZConsLawTest::ContributeBC(), TPZSpaceTimeRichardsEq::ContributeBC(), TPZBurger::ContributeBC(), TPZMatDualHybridPoisson::ContributeBC(), TPZPrimalPoisson::ContributeBC(), TPZElasticityAxiMaterial::ContributeBC(), TPZMatElastoPlastic2D< T, TMEM >::ContributeBC(), TPZMixedDarcyFlow::ContributeBC(), TPZMixedPoissonParabolic::ContributeBC(), TPZL2Projection::ContributeBC(), TPZNullMaterial::ContributeBC(), TPZDualPoisson::ContributeBC(), TPZElasticityMaterial::ContributeBC(), TPZVecL2::ContributeBC(), TPZMixedPoisson::ContributeBC(), TPZSwelling::ContributeBC(), TPZMatLaplacian::ContributeBC(), TPZMatElasticity2D::ContributeBC(), TPZMixedElasticityMaterial::ContributeBC(), TPZMatMixedPoisson3D::ContributeBC(), TPZMatPoisson3d::ContributeBC(), TPZEulerConsLaw::ContributeBC(), TPZMatLaplacian::ContributeBCHDiv(), TPZMatPoisson3d::ContributeBCHDiv(), TPZMultiphase::ContributeBCInterface(), TPZElasticity3D::ContributeVecShapeBC(), TPZElasticityMaterial::ContributeVecShapeBC(), TPZElast3Dnlinear::ContributeVecShapeBCAux(), TPZMatElastoPlastic2D< T, TMEM >::FillBoundaryConditionDataRequirement(), Print(), Read(), TPZAgglomerateElement::TPZAgglomerateElement(), and Write().