24#ifndef _GEMA_PLUGIN_LUA_PROXY_FEM_PHYSICS_H_
25#define _GEMA_PLUGIN_LUA_PROXY_FEM_PHYSICS_H_
28#include <gmpFemPhysics.h>
41 virtual const char* pluginName()
const {
return "LuaProxyFemPhysics"; }
44 virtual const char* pluginType()
const {
return "proxy"; }
48 virtual Unit timeUnit()
const;
54 virtual FemResultType
fillElementData(
const GmElement* e, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
59 int border, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
72 virtual bool checkAndLoadExternalLoadAccessors(
LuaTable& loadsTable);
74 virtual bool checkAndLoadContactBcAccessors();
75 virtual bool checkAndLoadDiscontinuitySetAccessors(
LuaTable& table);
Basic class for the Lua Proxy physics plugin object.
Definition gmpLuaProxyFemPhysics.h:35
bool parseAccessors(LuaTable &table, LuaTable &transTable, GmValueSetKind acType, const GmBoundaryCondition *bc=NULL)
Parses entries from the given table creating accessors for them, subject to the given restrictions.
Definition gmpLuaProxyFemPhysics.cpp:621
virtual bool checkMeshDimension(int ndim)
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:361
virtual FemResultType fillElementData(const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
See comments on base class.
Definition gmpLuaProxyFemPhysics.cpp:200
QMap< int, QString > _dofUnitMap
List with dof units.
Definition gmpLuaProxyFemPhysics.h:87
virtual const QStringList & supportedBcTypes() const
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:243
virtual bool fixedNodalForcesBc(QVector< int > &nodes, QVector< int > &dof, QVector< double > &values) const
See comments on base class.
Definition gmpLuaProxyFemPhysics.cpp:319
virtual bool checkAndLoadPropertyAccessors(LuaTable &table)
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:433
bool prepareCallMethod(const char *name, bool optional) const
Prepares the call for a table method, puting the function and self on the stack top.
Definition gmpLuaProxyFemPhysics.cpp:567
virtual bool calcDerivedResults(bool nonLinearSolver)
See comments on base class.
Definition gmpLuaProxyFemPhysics.cpp:343
virtual bool supportsCellType(GmCellType type) const
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:136
virtual ~GmpLuaProxyFemPhysics()
Destructor.
Definition gmpLuaProxyFemPhysics.cpp:57
GmElementDof * _dofMap[GM_NUM_CELL_TYPES]
The list with maps of dof per element type.
Definition gmpLuaProxyFemPhysics.h:85
bool fillBcLists(const char *fname, QVector< int > &nodes, QVector< int > &dof, QVector< double > &values, bool *constantValues) const
Calls the function fname and fills the given lists with the returned tables (constantValues should be...
Definition gmpLuaProxyFemPhysics.cpp:770
virtual const GmElementDof * dofMapping(GmCellType type) const
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:100
virtual bool checkAndLoadDofMapping(LuaTable &table)
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:406
QList< const GmBoundaryCondition * > _bcList
A list of the supported Bcs.
Definition gmpLuaProxyFemPhysics.h:88
virtual bool beforeElementStiffnessLoop(const GmpFemMatrixSet &elemMatrices, const GmpFemVectorSet &elemVectors)
See comments on base class.
Definition gmpLuaProxyFemPhysics.cpp:162
virtual bool bcAffectsCalc(const GmBoundaryCondition *bc) const
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:255
bool callStdMethod(int npar, int nresults=1) const
Call a standard method (which either doesn't return anything or returns a boolean + extra results)
Definition gmpLuaProxyFemPhysics.cpp:592
virtual Unit dofUnit(int dof) const
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:118
virtual bool checkAndLoadBcAccessors()
See comments on the base class.
Definition gmpLuaProxyFemPhysics.cpp:472
virtual bool fixedNodalDofsBc(QVector< int > &nodes, QVector< int > &dof, QVector< double > &values, bool *constantValues) const
See comments on base class.
Definition gmpLuaProxyFemPhysics.cpp:331
QVector< int > _dofList
Dof list for the physics.
Definition gmpLuaProxyFemPhysics.h:86
LuaTable * _methodTable
The Lua method table.
Definition gmpLuaProxyFemPhysics.h:84
virtual FemResultType fillElementDataForBc(const GmElement *e, const GmBoundaryCondition *bc, int bcIndex, int bcListIndex, int border, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
See comments on base class.
Definition gmpLuaProxyFemPhysics.cpp:270
QStringList _bcTypes
A list with the supported bc types.
Definition gmpLuaProxyFemPhysics.h:89
virtual bool checkAndLoadPrivateData(LuaTable &table)
This is the first function called by the Fem physics infrastructure, so it is its responsability to g...
Definition gmpLuaProxyFemPhysics.cpp:69
virtual void afterElementStiffnessLoop()
See comments on base class.
Definition gmpLuaProxyFemPhysics.cpp:181
GmpLuaProxyFemPhysics(GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
Constructor. Will be called by the plugin loading code.
Definition gmpLuaProxyFemPhysics.cpp:48