NeoPZ
pzpostprocanalysis.h
Go to the documentation of this file.
1 //$Id: pzpostprocanalysis.h,v 1.5 2010-10-20 18:41:37 diogo Exp $
2 #ifndef PZPOSTPROCANALYSIS_H
3 #define PZPOSTPROCANALYSIS_H
4 
5 #include "pzanalysis.h"
6 #include "pzcompel.h"
7 #include "TPZGeoElement.h"
8 #include "pzfmatrix.h"
9 #include "pzvec.h"
10 #include "pzstrmatrix.h"
11 
12 
13 #include <iostream>
14 #include <string>
15 
16 
24 
25 public:
26 
28 
30 
32 
34 
35  virtual ~TPZPostProcAnalysis();
36 
38  void SetCompMesh(TPZCompMesh *pRef, bool mustOptimizeBandwidth = false) override;
39 
41  {
42  return fpMainMesh;
43  }
48 virtual void Assemble() override;
49 
55 virtual void Solve() override;
56 
61 void TransferSolution();
62 
68 
69 static void SetAllCreateFunctionsPostProc(TPZCompMesh *cmesh);
71  void AutoBuildDisc();
72 
74  public:
75 int ClassId() const override;
76 
78  void Write(TPZStream &buf, int withclassid) const override;
79 
81  void Read(TPZStream &buf, void *context) override;
82 
83 
84 protected:
85 
87 
92 public:
93 
94 
95 static TPZCompEl * CreatePostProcDisc( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
96 
97 static TPZCompEl * CreatePointEl( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
98 static TPZCompEl * CreateLinearEl( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
99 static TPZCompEl * CreateQuadEl( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
100 static TPZCompEl * CreateTriangleEl( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
101 static TPZCompEl * CreateCubeEl( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
102 static TPZCompEl * CreatePyramEl( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
103 static TPZCompEl * CreateTetraEl( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
104 static TPZCompEl * CreatePrismEl( TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index);
105 
106 };
107 
108 #endif
109 
Contains TPZAnalysis class which implements the sequence of actions to perform a finite element analy...
virtual void Solve() override
TPZCompMesh * fpMainMesh
Contains declaration of TPZCompEl class which defines the interface of a computational element...
Templated vector implementation.
void TransferSolution()
static TPZCompEl * CreatePyramEl(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
void Read(TPZStream &buf, void *context) override
Read the element data from a stream.
Contains the TPZStructMatrixOR class which responsible for a interface among Matrix and Finite Elemen...
void Write(TPZStream &buf, int withclassid) const override
Save the element data to a stream.
void SetPostProcessVariables(TPZVec< int > &matIds, TPZVec< std::string > &varNames)
static TPZCompEl * CreatePostProcDisc(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
static TPZCompEl * CreateCubeEl(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
Implements the sequence of actions to perform a finite element analysis. Analysis.
Definition: pzanalysis.h:32
void AutoBuildDisc()
Defines the behaviour of all geometric elements. GeometryTPZGeoEl is the common denominator for all g...
Definition: pzgeoel.h:43
static TPZCompEl * CreateTriangleEl(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
Contains TPZMatrixclass which implements full matrix (using column major representation).
static void SetAllCreateFunctionsContinuous()
virtual void Assemble() override
static TPZCompEl * CreateTetraEl(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
int ClassId() const override
Returns the unique identifier for reading/writing objects to streams.
Implements computational mesh. Computational Mesh.
Definition: pzcmesh.h:47
virtual ~TPZPostProcAnalysis()
TPZPostProcAnalysis & operator=(const TPZPostProcAnalysis &copy)
TPZCompMesh * ReferenceCompMesh()
Defines the interface for saving and reading data. Persistency.
Definition: TPZStream.h:50
static TPZCompEl * CreateLinearEl(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
Contains declaration of TPZGeoElement class which implements a generic geometric element with a unifo...
void SetCompMesh(TPZCompMesh *pRef, bool mustOptimizeBandwidth=false) override
Set the computational mesh we are going to post process.
static TPZCompEl * CreatePointEl(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
static TPZCompEl * CreateQuadEl(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
Defines the interface of a computational element. Computational Element.
Definition: pzcompel.h:59
static TPZCompEl * CreatePrismEl(TPZGeoEl *gel, TPZCompMesh &mesh, int64_t &index)
TPZPostProcAnalysis()
static void SetAllCreateFunctionsPostProc(TPZCompMesh *cmesh)