NeoPZ
pzelasthybrid.h
Go to the documentation of this file.
1 //
2 // pzelasthybrid.h
3 // PZ
4 //
5 // Created by Joao on 18/09/12.
6 //
7 //
8 
15 #ifndef __PZ__pzelasthybrid__
16 #define __PZ__pzelasthybrid__
17 
18 #include <iostream>
19 
20 #include "TPZMaterial.h"
21 #include "pzdiscgal.h"
22 #include "pzelasmat.h"
23 
29 
30  public :
31 
34  TPZElasticityHybridMaterial(int num, REAL E, REAL nu, REAL fx, REAL fy, int plainstress = 1);
35 
38 
40  virtual TPZMaterial * NewMaterial() override { return new TPZElasticityHybridMaterial(*this);}
41 
44 
46  virtual int Dimension() const override { return 2;}
47 
49  virtual int NStateVariables() const override;
50 
52  std::string Name() override { return "TPZElasticityHybridMaterial"; }
53 
54 
59  virtual void Contribute(TPZMaterialData &data, REAL weight,TPZFMatrix<STATE> &ek,TPZFMatrix<STATE> &ef) override;
60 
61  virtual void ContributeInterface(TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, REAL weight, TPZFMatrix<STATE> &ek, TPZFMatrix<STATE> &ef) override;
62 
63  virtual void ContributeBCInterface(TPZMaterialData &data, TPZMaterialData &dataleft, REAL weight, TPZFMatrix<STATE> &ek,TPZFMatrix<STATE> &ef,TPZBndCond &bc) override;
64 
65 // virtual void ContributeInterface(TPZMaterialData &data, TPZMaterialData &dataleft, TPZMaterialData &dataright, REAL weight, TPZFMatrix<STATE> &ef);
66 
67 // virtual void ContributeBCInterface(TPZMaterialData &data, TPZMaterialData &left, REAL weight, TPZFMatrix<STATE> &ef,TPZBndCond &bc);
68 
69 
70 public:
71 
73  void SetPreStress(REAL Sigxx, REAL Sigyy, REAL Sigxy);
74 
75  public:
76 virtual int ClassId() const override;
77 
78 
79 
80 private:
82  REAL fE;
83 
85  REAL fnu;
86 
88  REAL ff[3];
89 
92 
95 
98 
101 
104 
107 
110 
111 };
112 
113 #endif /* defined(__PZ__pzelasthybrid__) */
REAL fPreStressXX
Pre Stress Tensor - Sigma XX.
Definition: pzelasthybrid.h:97
virtual void Contribute(TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef) override
Calculates the element stiffness matrix.
clarg::argBool bc("-bc", "binary checkpoints", false)
std::string Name() override
Returns the material name.
Definition: pzelasthybrid.h:52
REAL ff[3]
Forcing vector.
Definition: pzelasthybrid.h:88
This class implements a two dimensional elastic material to hybrid method. It is derived from the cla...
Definition: pzelasthybrid.h:28
REAL fnu
Poison coeficient.
Definition: pzelasthybrid.h:85
REAL fPreStressXY
Pre Stress Tensor - Sigma XY.
virtual ~TPZElasticityHybridMaterial()
Default destructor.
This abstract class defines the behaviour which each derived class needs to implement.
Definition: TPZMaterial.h:39
int fPlaneStress
Uses plain stress.
REAL fE
Elasticity modulus.
Definition: pzelasthybrid.h:82
This class defines the boundary condition for TPZMaterial objects.
Definition: pzbndcond.h:29
Contains the TPZElasticityMaterial class which implements a two dimensional elastic material in plane...
REAL fPreStressYY
Pre Stress Tensor - Sigma YY.
REAL E()
Returns the elasticity modulus E.
Definition: pzelasmat.h:220
int fPostProcIndex
indicates which solution should be used for post processing
virtual int Dimension() const override
Returns the model dimension.
Definition: pzelasthybrid.h:46
virtual TPZMaterial * NewMaterial() override
Creates a new material from the current object ??
Definition: pzelasthybrid.h:40
void SetPreStress(REAL Sigxx, REAL Sigyy, REAL Sigxy)
Set PresStress Tensor.
virtual int NStateVariables() const override
Returns the number of state variables associated with the material.
This class implements a two dimensional elastic material in plane stress or strain.
Definition: pzelasmat.h:19
TPZElasticityHybridMaterial()
Default constructor.
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...
Contains the TPZDiscontinuousGalerkin class which implements the interface for discontinuous Galerkin...
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 ClassId() const override
Unique identifier for serialization purposes.