![]() |
MmProcess
The GeMA Mesh Mapping Process Plugin
|
Class GmpMmMeshMapping. More...
#include <gmpMmMeshMapping.h>


Public Member Functions | |
| GmpMmMeshMapping (GmSimulationData *simData, GmMesh *dstMesh, GmSpatialIndex *spatialIndex, const GmDiscontinuitySet *ds, const QStringList &nodeValues, const QStringList &gaussValues, const QVector< bool > &dstGauss, const QMap< QString, QString > &dstTranslationMap, const GmLogCategory &logger, const QVariantMap &options=QVariantMap()) | |
| Mesh mapping constructor. | |
| virtual | ~GmpMmMeshMapping () |
| Virtual destructor. | |
| bool | generate () |
| Process the mesh mapping. | |
Protected Member Functions | |
| void | getNoDataValues (QVector< GmVector > &values, int dataSize) |
| Get no data values. | |
| void | getNodeValues (int srcNodeId, QString valueId, QVector< GmVector > &values) |
| Get values from another point. | |
| void | getOutOfMeshValues (const GmVector &crd, QString valueId, QVector< GmVector > &values) |
| Get values when point is out of cell mesh. | |
Protected Attributes | |
| GmElementMesh * | _srcElementMesh |
| GmValueAccessor * | _srcCrdAcc |
| GmSpatialIndex * | _spatialIndex |
| const GmDiscontinuitySet * | _ds |
| int | _nstates |
| GmInterpolatorType | _interpType |
| QVariant | _interpParam |
| QMap< QString, QVector< const GmValueAccessor * > > | _srcNodeAccMap |
| QMap< QString, QVector< const GmGaussAccessor * > > | _srcGaussAccMap |
Private Member Functions | |
| void | setDstGaussValues () |
| Map values on elements gauss points. | |
| void | setDstNodesValues () |
| Map values on mesh nodes. | |
| virtual bool | acceptSrcGaussValues () const =0 |
| Returns true if the mapping accepts to transfer gauss values in the source meshe. | |
| virtual bool | checkConsistency () |
| Process the mesh mapping. | |
| virtual void | insertSrcNodeInterp (QString valueId, QVector< const GmValueAccessor * > nodeAccList) |
| virtual void | insertSrcGaussInterp (QString valueId, QVector< const GmGaussAccessor * > gaussAccList) |
| virtual void | getValuesFromBI (const GmVector &crd, QString valueId, QVector< GmVector > &values) |
| Get values from bucket index. | |
Private Attributes | |
| QStringList | _srcNodeValues |
| QStringList | _srcGaussValues |
| QStringList | _dstNodeValues |
| QStringList | _dstGaussValues |
| GmSimulationData * | _simData |
| GmMesh * | _srcMesh |
| GmMesh * | _dstMesh |
| GmElementMesh * | _dstElementMesh |
| GmValueAccessor * | _dstCrdAcc |
| QMap< QString, QVector< GmValueAccessor * > > | _dstNodeAccMap |
| QMap< QString, QVector< GmGaussAccessor * > > | _dstGaussAccMap |
| QMap< QString, QString > | _dstTranslationMap |
| bool | _noDataMode |
| double | _noDataValue |
| double | _noDataEps |
| double | _tol |
| int | _state |
| bool | _activeOnly |
| bool | _info |
| int | _nworkers |
| int | _ntasks |
| const GmLogCategory & | _logger |
| The logger object used to report errors. | |
Class GmpMmMeshMapping.
| GmpMmMeshMapping::GmpMmMeshMapping | ( | GmSimulationData * | simData, |
| GmMesh * | dstMesh, | ||
| GmSpatialIndex * | spatialIndex, | ||
| const GmDiscontinuitySet * | ds, | ||
| const QStringList & | nodeValues, | ||
| const QStringList & | gaussValues, | ||
| const QVector< bool > & | dstGauss, | ||
| const QMap< QString, QString > & | dstTranslationMap, | ||
| const GmLogCategory & | logger, | ||
| const QVariantMap & | options = QVariantMap() ) |
Mesh mapping constructor.
| simData | The simulation data object. Needed for access to the task manager (parallelization) |
| dstMesh | The destination mesh. |
| spatialIndex | The source spatial index. |
| nodeValues | A list with the names of node values of source mesh that will be mapped on destination mesh. |
| gaussValues | A list with the names of gauss attributes of source mesh that will be mapped on destination mesh. |
| dstGauss | A list of booleans which size is equal to the sum of sizes of nodeValues and gaussValues lists. 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. |
| dstTranslationMap | A map keyed by the src attribute id, containing am optional alternate name for the destination attribute id. |
| logger | Plugin logger object used to emmit messages. |
| options | A set of 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 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. |
|
privatepure virtual |
Returns true if the mapping accepts to transfer gauss values in the source meshe.
Implemented in GmpMmCellMeshMapping, GmpMmElementMeshMapping, and GmpMmNodeMeshMapping.
|
privatevirtual |
Get values from bucket index.
Reimplemented in GmpMmCellMeshMapping, and GmpMmElementMeshMapping.
|
private |
Map values on elements gauss points.
Function Object class for parallelizing the work done per mesh cell
The function that will be called for each parallel task
|
private |
Map values on mesh nodes.
Function Object class for parallelizing the work done per mesh node
The function that will be called for each parallel task