21 for(
int i = 0; i < dim; i++){
22 V[i] = -1. * dsol(i,pos);
25 for(
int i = 0; i < 3; i++) this->
fConvDir[i] = 0.;
29 this->
fConvDir[0] = axes(0,0) * V[0];
30 this->
fConvDir[1] = axes(0,1) * V[0];
31 this->
fConvDir[2] = axes(0,2) * V[0];
34 this->
fConvDir[0] = axes(0,0) * V[0] + axes(1,0) * V[1];
35 this->
fConvDir[1] = axes(0,1) * V[0] + axes(1,1) * V[1];
36 this->
fConvDir[2] = axes(0,2) * V[0] + axes(1,2) * V[1];
39 this->
fConvDir[0] = axes(0,0) * V[0] + axes(1,0) * V[1] + axes(2,0) * V[2];
40 this->
fConvDir[1] = axes(0,1) * V[0] + axes(1,1) * V[1] + axes(2,1) * V[2];
41 this->
fConvDir[2] = axes(0,2) * V[0] + axes(1,2) * V[1] + axes(2,2) * V[2];
44 PZError <<
"TPZMatPoisson3dReferred::SetConvectionTerm - Dimension error " <<
fDim << endl;
53 for(
int i = 0; i < dim; i++){
54 this->
fConvDir[i] = -1. * ( 0.5 * ( dsolL(i,pos) + dsolR(i,pos) ) );
84 int numbersol = dataleft.
dsol.
size();
100 int numbersol = dataleft.
dsol.
size();
101 if (numbersol != 1) {
clarg::argBool bc("-bc", "binary checkpoints", false)
int Dimension() const override
Returns the integrable dimension of the material.
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 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...
TPZGradSolVec dsol
vector of the derivatives of the solution at the integration point
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...
void SetConvectionTermInterface(TPZFMatrix< STATE > &dsolL, TPZFMatrix< STATE > &dsolR)
Sets convection term for ContributeInterface methods.
REAL fC
Variable which multiplies the convection term of the equation.
virtual int ClassId() const override
Unique identifier for serialization purposes.
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...
int64_t size() const
Returns the number of elements of the vector.
virtual void Contribute(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef) override
It computes a contribution to the residual vector at one integration point.
virtual void ContributeBCInterface(TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
virtual void ContributeBCInterface(TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
#define DebugStop()
Returns a message to user put a breakpoint in.
This class defines the boundary condition for TPZMaterial objects.
virtual ~TPZMatPoisson3dReferred()
TPZFNMatrix< 9, REAL > axes
axes indicating the directions of the derivatives of the shapefunctions
Contains the TPZMatPoisson3dReferred class which implements a version of TPZMatPoisson3d (convection...
virtual void ContributeBC(TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
It computes a contribution to the stiffness matrix and load vector at one BC integration point to mul...
int32_t Hash(std::string str)
TPZMatPoisson3dReferred(int nummat, int dim)
REAL fConvDir[3]
Direction of the convection operator.
int fDim
Problem dimension.
void SetConvectionTerm(TPZFMatrix< STATE > &dsol, TPZFMatrix< REAL > &axes)
Sets convection term.
This class implements a version of TPZMatPoisson3d where the convection term is given at each integr...
#define PZError
Defines the output device to error messages and the DebugStop() function.
virtual int ClassId() const override
Unique identifier for serialization purposes.