AnalyticalProcess
The GeMA Analytical Process Plugin
Loading...
Searching...
No Matches
GmpAnalyticalSolverOptions Class Reference

Basic class for storing the possible options for the analytical solver. More...

#include <gmpAnalyticalSolverOptions.h>

Collaboration diagram for GmpAnalyticalSolverOptions:

Public Types

enum class  SourceAttributes { automatic , p , t , p_t }
 Defines the set of input attribtes used by the solver. More...
 
enum class  ResultAttributes {
  u , s , e , u_s ,
  u_e , s_e , u_s_e
}
 Defines the set of output attribtes used by the solver. More...
 

Public Member Functions

 GmpAnalyticalSolverOptions ()
 Constructor. Fills the options structure with default values.
 
bool loadFromTable (LuaTable &tab, QString &err)
 Loads user options from the given Lua table.
 

Public Attributes

SourceAttributes _srcAttributes
 The set of input attributes. Default = automatic.
 
ResultAttributes _resultAttributes
 The set of output attributes. Default = u_s.
 
double _seaLevelDepth
 The mean sea level depth. Ignored if a mesh was given.
 
QString _seaLevelDepthUnit
 The unit for the mean sea level depth. If empty (default), the same unit as the source mesh is assumed.
 
QString _seaFloorMeshName
 The name of a sea floor mesh, defining the sea level. Default = empty.
 
QString _spatialIndexPluginType
 The plugin type used to create a spatial index if a sea floor mesh was given. Default = "MmProcess.cell".
 
QVariantMap _spatialIndexOptions
 Table with additional options that need to be sent to the spatial index plugin.
 
QString _pressureAttributeName
 The name of the pressure attribute. Default = "P".
 
QString _temperatureAttributeName
 The name of the temperature attribute. Default = "T".
 
QString _displacementAttributeName
 The name of the displacement attribute. Default = "u".
 
QString _stressAttributeName
 The name of the stress attribute. Default = "S".
 
QString _strainAttributeName
 The name of the strain attribute. Default = "Em" (the same used by the FEM mechanical physics)
 

Detailed Description

Basic class for storing the possible options for the analytical solver.

Member Enumeration Documentation

◆ ResultAttributes

Defines the set of output attribtes used by the solver.

Enumerator

Solver result is the displacement only.

Solver result is the stress only.

Solver result is the strain only.

u_s 

Solver results are the displacement and the stress.

u_e 

Solver results are the displacement and the strain.

s_e 

Solver results are the stress and the strain.

u_s_e 

Solver results are the displacement, the stress and the strain.

◆ SourceAttributes

Defines the set of input attribtes used by the solver.

Enumerator
automatic 

Solver uses all the available mesh attributes to calculate the results.

Solver uses only the pressure attribute to calculate the results.

Solver uses only the temperature attribute to calculate the results.

p_t 

Solver uses both the pressure and the temperature attributes to calculate the results.

Member Function Documentation

◆ loadFromTable()

bool GmpAnalyticalSolverOptions::loadFromTable ( LuaTable & tab,
QString & err )

Loads user options from the given Lua table.

Returns true on success or false if the option set is invalid (missing required parameters or invalid values) and the analysis can not continue. In this case, an error message will be returned by err. The available options:

  • srcAttributes: A string defining which input data (pressure and/or temperature) should be used by the analysis. Options are "automatic", "P", "T", "P_T". The automatic option means that it will use all the available data. Default = 'automatic'
  • resultAttributes: A string defining the combination of results that should be calculated by the analysis. Options are "u", "s", "e", "u_s", "u_e", "s_e", "u_s_e", where u, s and e stands for, respectively, displacement, stress and strain. Default = 'u_s' (calculates displacement and stress, skipping the strain)
  • seaFloorMesh: The name of an optional surface mesh defining the sea floor dpeth. If not present, a mean sea floor level will be used. Default = nil
  • seaLevelDepth: The mean sea level depth. Used only if seaFloorMesh is missing. Default = 0.0
  • seaLevelDepthUnit: The unit in which the value for seaLevelDepth was given. When missing, it is assumed that the seaLevelDepth value is given in the same measurement unit as the coordinates from the source mesh.
  • spatialIndexPluginType: If seaFloorMesh exists, a spatial index is created to index its projection on the x-y plane. This attribute defines the type of the plugin used to create this index. Default = 'MmProcess.cell'
  • spatialIndexPluginOptions: If seaFloorMesh exists, a spatial index is created to index its projection on the x-y plane. This attribute can be used to provide additional creation options to the spatial index creation. Default = nil
  • pressureAttribute: The name of of the node attribute / state var that will provide the input pressure data. Default = "P". The named attribute is required if srcAttributes is equal to "P" or "P_T" and used to check if the pressure data exists if srcAttributes is "automatic".
  • temperatureAttribute: The name of of the node attribute / state var that will provide the input temperature data. Default = "T". The named attribute is required if srcAttributes is equal to "T" or "P_T" and used to check if the temperature data exists if srcAttributes is "automatic".
  • displacementAttribute: The name of the node attribute / state var that will be used to save displacement results. Default = "u". The named attribute is used if resultAttributes includes "u". If the named attribute does not exists, a new one is created automaticaly.
  • stressAttribute: The name of the node attribute / state var that will be used to save stress results. Default = "S". The named attribute is used if resultAttributes includes "s". If the named attribute does not exists, a new one is created automaticaly.
  • strainAttribute: The name of the node attribute / state var that will be used to save strain results. Default = "Em" (s used by the FEM mechanical physics). The named attribute is used if resultAttributes includes "e". If the named attribute does not exists, a new one is created automaticaly.

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