FEM Analysis of Equation Systems

Table of Contents

The TPZLinearAnalysis class

class TPZLinearAnalysis : public TPZAnalysis

Performs the Finite Element Analysis of a equation system.

Subclassed by TPZNonLinearAnalysis, TPZPostProcAnalysis, TPZSubMeshAnalysis

Constructors

TPZLinearAnalysis()

Create an empty TPZLinearAnalysis object.

TPZLinearAnalysis(TPZCompMesh *mesh, bool mustOptimizeBandwidth = true, std::ostream &out = std::cout)

Create an TPZLinearAnalysis object from one mesh pointer.

TPZLinearAnalysis(TPZAutoPointer<TPZCompMesh> mesh, bool mustOptimizeBandwidth = true, std::ostream &out = std::cout)

Create an TPZLinearAnalysis object from one mesh auto pointer object.

FEM

template<class TVar>
TPZMatrixSolver<TVar> &MatrixSolver()

Get the matrix solver.

inline TPZSolutionMatrix &Rhs()

Returns the load vector.

virtual void Assemble() override

Assemble the stiffness matrix and load vector.

virtual void AssembleResidual()

Assemble the load vector.

virtual void Solve() override

Invert the stiffness matrix.

virtual void SetSolver(const TPZSolver &solver) override

Set the solver.

Note

In this function it will be checked if the solver is a TPZMatrixSolver

Graphical

void AnimateRun(int64_t num_iter, int steps, TPZVec<std::string> &scalnames, TPZVec<std::string> &vecnames, const std::string &plotfile)

Run and print the solution step by step.

inline virtual void PostProcess(TPZVec<REAL> &loc, std::ostream &out = std::cout) override

Compute the local error over all elements and global errors in several norms and print out.

inline virtual void PostProcess(int resolution) override

Draw solution over mesh for all dimensions.

virtual void PostProcess(int resolution, int dimension) override

Draw solution over mesh by dimension

inline void SetTime(REAL time)

Sets time used in OpenDX files.

inline REAL GetTime() const

Gets time used in OpenDX files.