MmProcess
The GeMA Mesh Mapping Process Plugin
Loading...
Searching...
No Matches
GmpMmProcess Class Reference

Basic class for the Mesh mapping process plugin object. More...

#include <gmpMmProcess.h>

Inheritance diagram for GmpMmProcess:
Collaboration diagram for GmpMmProcess:

Public Member Functions

 GmpMmProcess (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 Constructor. Will be called by the plugin loading code.
 
virtual ~GmpMmProcess ()
 Destructor.
 
virtual const char * pluginName () const
 
virtual const char * pluginType () const
 
virtual void loadFunctions (LuaTable &table)
 
virtual QStringList functionList () const
 
- Public Member Functions inherited from GmProcess
 GmProcess (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 
virtual const char * pluginCategory () const
 
virtual bool loadPrivateData (LuaTable &table)
 
virtual void printParameters (const GmLogCategory &logger)
 
int createProgressStatsItem (GmRunProgressStats *ps, const char *name)
 
- Public Member Functions inherited from GmPluginObject
 GmPluginObject (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 
QString id () const
 
QString description () const
 
QString pluginTypeName () const
 

Private Member Functions

GmProcessMethodRedirector< GmpMmProcess >::MethodRegistry * processMethodTable () const
 Returns the table storing the process exported function names / methods.
 
int buildBucketIndex (lua_State *L)
 The mm.buildBucketIndex() process implementation.
 
int meshMapping (lua_State *L)
 The mm.meshMapping() process implementation.
 

Additional Inherited Members

- Protected Member Functions inherited from GmProcess
void registerFunctions (LuaTable &table, typename GmProcessMethodRedirector< T >::MethodRegistry *methods, bool noProgressStats=false)
 
QStringList buildFunctionList (typename GmProcessMethodRedirector< T >::MethodRegistry *methods) const
 
- Protected Member Functions inherited from GmPluginObject
virtual const GmLogCategorylogger () const
 
GmSimulationDatasimulationData () const
 

Detailed Description

Basic class for the Mesh mapping process plugin object.

Member Function Documentation

◆ buildBucketIndex()

int GmpMmProcess::buildBucketIndex ( lua_State * L)
private

The mm.buildBucketIndex() process implementation.

Expects to receive as parameters on the Lua stack: 1 - A string with the mesh id. 2 - The type of bucket ('node', 'cell' or 'gauss'). 3 - An optional table with bucket options. Available options are: 'capacity' – The storing capacity of each bucket. Default = 10 'gridStartingSize' – The grid partitionning the underlying mesh domain will start with a number of cells equals to gridStartingSize in each direction. Default = -1 (the initial size is automatically computed) 'nRefineMax' – The maximum number of successive refinements a given cell should suffer before considering the bucket capacity is too small. Default = 4 'activeOnly' – Should we only store the active cells/elements of the mesh? No effect in case of nodes bucket. Default = true 'info' – Print informations about the bucket index. Default = false 'ruleSet' – Integration rules set used in case of bucket index of gauss points When filling this table, keep in mind that only options different from the default are needed. When an option is not present in the table its default value will be used.

◆ functionList()

virtual QStringList GmpMmProcess::functionList ( ) const
inlinevirtual

Implements GmProcess.

◆ loadFunctions()

virtual void GmpMmProcess::loadFunctions ( LuaTable & table)
inlinevirtual

Implements GmProcess.

◆ meshMapping()

int GmpMmProcess::meshMapping ( lua_State * L)
private

The mm.meshMapping() process implementation.

Expects to receive as parameters on the Lua stack: 1 - A string with the destination mesh id 2 - A spatial index object 3 - The name of the node value or a list with the names of the source mesh to be mapped on the destination mesh. Can be nil if parameter 4 is not. 4 - The name of the gauss attributes or a list with the names of the source mesh to be mapped on the destination mesh. Can be nil if parameter 3 is not. 5 - A table of booleans which size is equal to the sum of sizes of parameter 3 and 4. If boolean is false, it means that the corresponding value will be mapped on the nodes of the destination mesh. If boolean is true, the corresponding value will be mapped on the gauss points of the destination mesh. 6 - An optional table with mapping options. Available options are: 'noDataMode' – Activate the noData mode. Default = false 'noDataValue' – If noDataMode is true, define the noData value. Default = 0.0 'noDataEps' – If noDataMode is true, define the tolerency value on the source mesh frontier. Default = 0.0 'state' – The state number we want to map. Default = -1 (all states will be mapped) 'interpType' – The interpolator type used to compute the data inside a cell. Default = GM_DEFAULT_INTERPOLATOR 'interpParam' – The parameters associated to the interpolator. 'activeOnly' – Should we map data only on the active cells of the destination mesh? No effect if the mapping is done on destination nodes. Default = true 'info' – Print informations about the mesh mapping. Default = false 'discSet' – DiscontinuitySet object to use when interpolating When filling this table, keep in mind that only options different from the default are needed. When an option is not present in the table its default value will be used. 7 - An optional table translating attribute names into different destination names. The table should be keyed by the src id attribute and haev as value the destination attribute name.

◆ pluginName()

virtual const char * GmpMmProcess::pluginName ( ) const
inlinevirtual

Implements GmPluginObject.

◆ pluginType()

virtual const char * GmpMmProcess::pluginType ( ) const
inlinevirtual

Implements GmPluginObject.


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