6 #ifndef MATCOUPLEDTRANSPDARCYBC 7 #define MATCOUPLEDTRANSPDARCYBC 30 if (this->fMaterials[0])
return this->fMaterials[0];
31 if (this->fMaterials[1])
return this->fMaterials[1];
32 PZError <<
"Error! - " << __PRETTY_FUNCTION__ << std::endl;
49 if (eq == 0 || eq == 1)
return this->fMaterials[eq];
51 PZError <<
"Error! - " << __PRETTY_FUNCTION__ << std::endl;
65 if (eq == 0 || eq == 1) this->fMaterials[eq] = mat;
67 PZError <<
"Error! - " << __PRETTY_FUNCTION__ << std::endl;
89 void Print(std::ostream & out = std::cout)
override {
90 out <<
" Boundary condition number = " <<
Id() <<
"\n";
151 virtual int ClassId()
const override;
virtual int NFluxes() override
Returns the number of components which form the flux function.
void Contribute(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override
It computes a contribution to the stiffness matrix and load vector at one integration point...
int Dimension() const override
Returns the integrable dimension of the material.
virtual int NEvalErrors() override
Returns the number of norm errors. Default is 3: energy, L2 and H1.
clarg::argBool bc("-bc", "binary checkpoints", false)
void ContributeBC(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
It computes a contribution to the stiffness matrix and load vector at one BC integration point...
Templated vector implementation.
REAL val(STATE &number)
Returns value of the variable.
virtual void ContributeInterface(TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override
It computes a contribution to stiffness matrix and load vector at one integration point...
virtual int NEvalErrors() override
Returns the number of norm errors. Default is 3: energy, L2 and H1.
virtual int NStateVariables() const override
Returns the number of state variables associated with the material.
Contains the TPZBndCond class which implements a boundary condition for TPZMaterial objects...
virtual void Contribute(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override
It computes a contribution to the stiffness matrix and load vector at one integration point...
TPZBndCond * GetNonNullMaterial() const
void Flux(TPZVec< REAL > &x, TPZVec< STATE > &Sol, TPZFMatrix< STATE > &DSol, TPZFMatrix< REAL > &axes, TPZVec< STATE > &flux) override
Computes the value of the flux function to be used by ZZ error estimator.
virtual void ContributeBC(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
It computes a contribution to the stiffness matrix and load vector at one BC integration point...
virtual int ClassId() const override
Returns the unique identifier for reading/writing objects to streams.
virtual int NStateVariables() const override
Returns the number of state variables associated with the material.
void UpdateConvectionDir(TPZFMatrix< STATE > &dsol)
void Contribute(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef) override
It computes a contribution to the residual vector at one integration point.
Contains TPZMatrixclass which implements full matrix (using column major representation).
This class defines the boundary condition for TPZMaterial objects.
Free store vector implementation.
virtual void ContributeBCInterface(TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
It computes a contribution to residual vector at one BC integration point.
virtual void ContributeBCInterface(TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
It computes a contribution to stiffness matrix and load vector at one BC integration point...
TPZBndCond * fMaterials[2]
TPZBndCond * GetCurrentMaterial()
void SetMaterial(int eq, TPZBndCond *mat)
void Print(std::ostream &out=std::cout) override
Prints out the data associated with the material.
virtual int HasForcingFunction()
Directive that gives true if the material has a forcing function.
virtual int NFluxes() override
Returns the number of components which form the flux function.
void UpdateConvectionDirInterface(TPZFMatrix< STATE > &dsolL, TPZFMatrix< STATE > &dsolR, TPZFMatrix< REAL > &phiL, TPZFMatrix< REAL > &phiR)
~TPZCoupledTransportDarcyBC()
Implements two equations where the second one requires the solution of the first. ...
int Dimension() const override
Returns the integrable dimension of the material.
virtual int HasForcingFunction() override
Directive that gives true if the material has a forcing function.
virtual void ContributeBCInterface(TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
It computes a contribution to stiffness matrix and load vector at one BC integration point...
void Fill(const T ©, const int64_t from=0, const int64_t numelem=-1)
Will fill the elements of the vector with a copy object.
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) override
Computes the error due to the difference between the interpolated flux and the flux computed based o...
TPZCoupledTransportDarcyBC(TPZCoupledTransportDarcy *material, int id)
Contains the TPZCoupledTransportDarcy class which implements two equations to transport problem...
Contains the declaration of TPZFlopCounter class and TPZCounter struct.
static int CurrentEquation()
#define PZError
Defines the output device to error messages and the DebugStop() function.
void ContributeBC(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
It computes a contribution to the stiffness matrix and load vector at one BC integration point...