NeoPZ
pzpoisson3dreferred.h
Go to the documentation of this file.
1 
7 #ifndef MATPOISSON3DREFERREDH
8 #define MATPOISSON3DREFERREDH
9 
10 #include <iostream>
11 #include "pzpoisson3d.h"
12 #include "pzfmatrix.h"
13 
23 
24 protected:
25 
26  REAL falpha;
27 
30 
34 
35 public:
36 
37  TPZMatPoisson3dReferred(int nummat, int dim);
38 
39  virtual ~TPZMatPoisson3dReferred();
40 
43  this->falpha = copy.falpha;
44  }
45 
46  virtual TPZMaterial * NewMaterial() override{
47  return new TPZMatPoisson3dReferred(*this);
48  }
49 
50  virtual int NStateVariables() const override
51  {
52  return 1;
53  }
54 
55  void SetAlpha(REAL alpha){
56  this->falpha = alpha;
57  }
58 
59  REAL GetAlpha(){
60  return this->falpha;
61  }
62 
63 
64  virtual void Contribute(TPZMaterialData &data,
65  REAL weight,
66  TPZFMatrix<STATE> &ek,
67  TPZFMatrix<STATE> &ef) override;
68 
69  virtual void ContributeBC(TPZMaterialData &data,
70  REAL weight,
73  TPZBndCond &bc) override;
74 
75  virtual void ContributeInterface(TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright,
76  REAL weight,
78  TPZFMatrix<STATE> &ef) override;
79 
80  virtual void ContributeBCInterface(TPZMaterialData &data, TPZMaterialData &dataleft,
81  REAL weight,
84  TPZBndCond &bc) override;
85 
86  virtual void Contribute(TPZMaterialData &data,REAL weight,TPZFMatrix<STATE> &ef) override
87  {
88  TPZMatPoisson3d::Contribute(data,weight,ef);
89  }
90  virtual void ContributeBC(TPZMaterialData &data,
91  REAL weight,
93  TPZBndCond &bc) override
94  {
95  TPZMatPoisson3d::ContributeBC(data,weight,ef,bc);
96  }
97  virtual void ContributeInterface(TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright,
98  REAL weight,
99  TPZFMatrix<STATE> &ef) override
100  {
101  TPZMatPoisson3d::ContributeInterface(data,dataleft, dataright, weight,ef);
102  }
103 
105  REAL weight,
106  TPZFMatrix<STATE> &ef,
107  TPZBndCond &bc) override
108  {
109  TPZMatPoisson3d::ContributeBCInterface(data,dataleft,weight,ef,bc);
110  }
111  virtual int ClassId() const override;
112 };
113 
114 #endif
clarg::argBool bc("-bc", "binary checkpoints", false)
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...
virtual void ContributeInterface(TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, REAL weight, TPZFMatrix< STATE > &ef) override
It computes a contribution to residual vector at one integration point.
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...
Contains the TPZMatPoisson3d class.
void SetConvectionTermInterface(TPZFMatrix< STATE > &dsolL, TPZFMatrix< STATE > &dsolR)
Sets convection term for ContributeInterface methods.
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...
This abstract class defines the behaviour which each derived class needs to implement.
Definition: TPZMaterial.h:39
virtual void Contribute(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef) override
It computes a contribution to the residual vector at one integration point.
Definition: pzpoisson3d.h:199
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
virtual void ContributeBC(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
It computes a contribution to the stiffness matrix and load vector at one BC integration point...
Contains TPZMatrixclass which implements full matrix (using column major representation).
virtual void Contribute(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef) override
It computes a contribution to the residual vector at one integration point.
This class defines the boundary condition for TPZMaterial objects.
Definition: pzbndcond.h:29
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...
Definition: pzpoisson3d.h:207
TPZMatPoisson3dReferred(int nummat, int dim)
DESCRIBE PLEASE.
Definition: pzpoisson3d.h:26
TPZMatPoisson3dReferred(const TPZMatPoisson3dReferred &copy)
virtual int NStateVariables() const override
Returns the number of state variables associated with the material.
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.
void SetConvectionTerm(TPZFMatrix< STATE > &dsol, TPZFMatrix< REAL > &axes)
Sets convection term.
virtual TPZMaterial * NewMaterial() override
To create another material of the same type.
This class implements a version of TPZMatPoisson3d where the convection term is given at each integr...
virtual int ClassId() const override
Unique identifier for serialization purposes.