CoupledTMFemPhysics
The GeMA Coupled Thermo-Mechanical FEM Physics Plugin
Loading...
Searching...
No Matches
GmpThermoMechanical Class Reference

Thermo mechanical 2D & 3D : Quad, Tri, Hex and Tet. More...

#include <gmpThermoMechanical.h>

Inheritance diagram for GmpThermoMechanical:
Collaboration diagram for GmpThermoMechanical:

Public Types

enum  GaussAttributeIds { T_GA_ID = GmpFullyCoupledTMFemPhysics::NUM_GA_IDS , TOLD_GA_ID , NUM_GA_IDS }
 IDs for physics Gauss attributes. More...
 

Public Member Functions

 GmpThermoMechanical (const char *pluginType, GmSimulationData *simulation, QString id, QString description, const GmpFemPhysicsCommonMaterialFactory *matFactory, const GmLogCategory &logger)
 
virtual ~GmpThermoMechanical ()
 Destructor.
 
virtual const QVariantMap * physicsMetaDataMap ()
 Returns a reference for the Hydraulics dual flow attribute map, built when the function is called for the first time.
 
virtual FemResultType fillElementData (const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
 Fills the element matrices and vectors for a generic element. Applying the Galerking method (Zienkiewicz and Taylor, 1989)
 
virtual bool calcDerivedResults (bool nonLinearSolver)
 Calc velocity and flow on nodes and/or Gauss points.
 
virtual void gravityForce (const GmElement *e, const GmVector *coord, int ip, GmVector &GFc, const GmVector &N, double c) const
 
virtual bool beforeElementStiffnessLoop (const GmpFemMatrixSet &elemMatrices, const GmpFemVectorSet &elemVectors)
 
virtual bool addStateItemsToGroup (GmStateDump *state, bool fixedHint, int groupId)
 
- Public Member Functions inherited from GmpFullyCoupledTMFemPhysics
 GmpFullyCoupledTMFemPhysics (const char *pluginType, GmSimulationData *simulation, QString id, QString description, const GmpFemPhysicsCommonMaterialFactory *matFactory, const GmLogCategory &logger)
 Constructor. Will be called by the plugin loading code.
 
virtual ~GmpFullyCoupledTMFemPhysics ()
 Destructor.
 
virtual const char * pluginName () const
 
virtual const char * pluginType () const
 
virtual bool supportsStateDumping ()
 
virtual bool fixedNodalForcesBc (QVector< int > &nodes, QVector< int > &dof, QVector< double > &values) const
 
virtual bool fixedNodalDofsBc (QVector< int > &nodes, QVector< int > &dof, QVector< double > &values, bool *constantValues) const
 
virtual FemResultType fillElementDataForBc (const GmElement *e, const GmBoundaryCondition *bc, int bcIndex, int bcListIndex, int border, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
 

Protected Member Functions

virtual bool checkAndLoadAttributeAccessors (LuaTable &nodeTable, LuaTable &cellTable, LuaTable &gaussTable)
 Reimplementation of the common function to init the _mechanicPoint structure.
 
virtual const GmElementDofdofMapping (GmCellType type) const
 
virtual bool assemblyElemDampingMatrix (const GmElement *e, GmMatrix &elemC, const GmMatrix &Sc, const QVector< int > &iUe, const QVector< int > &iTe) const
 
virtual void FillDofIndexPosition (const GmElement *e, QVector< int > &iUe, QVector< int > &iTe)
 Fills the position index with the degreee of freedom, both the mechanical and thermal physics. the implementation supports order of the defined state variables i.e {U, T} or {T, U}

 
virtual bool assemblyElemStiffnessMatrix (const GmElement *e, GmMatrix &elemK, const GmMatrix &Kep, const GmMatrix &LuT, const GmMatrix &He, const QVector< int > &iUe, const QVector< int > &iTe) const
 
virtual void assemblyInternalForceVector (const GmElement *e, GmMatrix &elemFi, const GmVector &Fiu, const GmMatrix &He, const GmVector &Te, const QVector< int > &iUe, const QVector< int > &iTe) const
 
virtual bool setInitialConditions ()
 Sets the initial conditionrequired by interface elements.
 
- Protected Member Functions inherited from GmpFullyCoupledTMFemPhysics
virtual bool checkAndLoadPrivateData (LuaTable &table)
 Overloads default checkAndLoadPrivateData() to be able to setup materials.
 

Protected Attributes

bool _setInitialCond
 Sets the initial conditions required by the physics.
 
- Protected Attributes inherited from GmpFullyCoupledTMFemPhysics
const char * _pluginType
 The plugin type name.
 
GmpMechanicalPhysics * _mechPhys
 The mechanical physics providing parameters and matrices to the coupling equation.
 
GmpThermoFemPhysics * _thermoPhys
 The thermo physics providing parameters and matrices to the coupling equation.
 

Private Attributes

bool _hasElementGeneration
 Should we enable heat sources on elements (does not affect point generation sources)?
 

Additional Inherited Members

- Protected Types inherited from GmpFullyCoupledTMFemPhysics
enum  PhysicsAttributeIds { ISOPARAMETRIC_ID , REFERENCE_T_ID , STRAIN_T_ID , NUM_ATTRI_IDS }
 IDs for physics attributes. More...
 
enum  StateVarIds { U_ID , T_ID , NUM_STATEVAR_IDS }
 IDs for Mechanical and Hydro physics state vars. More...
 
enum  NodeAttributeIds { TREF_NA_ID , NUM_NA_IDS }
 IDs for thermo-mechanical node attributes. More...
 
enum  GaussAttributeIds { ET_GA_ID , NUM_GA_IDS }
 IDs for physics Gauss attributes. More...
 
enum  ElementPropertyIds { ALPHA_ID }
 IDs for physics element properties. More...
 

Detailed Description

Thermo mechanical 2D & 3D : Quad, Tri, Hex and Tet.

Member Enumeration Documentation

◆ GaussAttributeIds

IDs for physics Gauss attributes.

Enumerator
T_GA_ID 

Base Id for Gauss attribute(s) used to store the calculated temperature at the current state.

TOLD_GA_ID 

Id for retrieving the stress accessor at the previous temperature (old temperature)

NUM_GA_IDS 

The number of Gauss attribute ids above.

Member Function Documentation

◆ physicsMetaDataMap()

const QVariantMap * GmpThermoMechanical::physicsMetaDataMap ( )
virtual

Returns a reference for the Hydraulics dual flow attribute map, built when the function is called for the first time.

Reimplemented from GmpFullyCoupledTMFemPhysics.


The documentation for this class was generated from the following files: