![]() |
FemProcess
The GeMA Fem Process Plugin
|

Public Types | |
| enum | AssemblerMode { automatic , noDofHandling , removeDof } |
| Assembler mode. | |
| enum | SolverType { staticLinear , staticSolver , transientSolver , transientLocalSolver , transientNonlinearDc , transientAutomaticTimeStep , transientIterative } |
| Solver type. | |
| enum | ConvergenceCriterion { load , displacement , velocity , flux , absDisplacement } |
| Convergence criterion options. | |
| enum | NonlinearScheme { newton , picard } |
| Nonlinear scheme options. | |
| enum class | IncrementStrategy { loadControlIncrement , displacementControlIncrement , cylindricalArcLengthIncrement , sphericalArcLengthIncrement , dissipatedEnergyIncrement , combinedArcDissipatedEnergyIncrement , strainControlIncrement , elementControlIncrement , externalWorkIncrement , prescribedDisplacementIncrement } |
| Increment strategy options - NL static solver. | |
| enum class | IterationStrategy { loadControl , displacementControl , linearArcLength , cylindricalArcLength , sphericalArcLength , dissipatedEnergy , combinedArcDissipatedEnergy , elementControl , strainControl , minimalNorm , orthogonalResidue , prescribedDisplacement } |
| Iteration strategy options - NL static solver. | |
| enum | NewtonRaphsonMode { full , modified , broyden , bfgs } |
| Newton Raphson optios. | |
| enum | GeostaticType { none , fixedNode , selfWeight } |
| Geostatic type options. | |
| enum | CouplingStrategy { fully , iterative } |
| Coupling strategy options. | |
| enum | LinearTransientMethods { Implicit , RK2 , RK4 , RK6 } |
| enum | ReductionMethod { NoReduction , GuyanReduction } |
| enum | TimeIncrementMethod { userDefined , rate_based , maxIncrementTransientVar } |
| enum | PrintOptions { printElementMatrices = 0x0001 , printElementVectors = 0x0002 , printElementDofMapping = 0x0004 , printEqMatrix = 0x0008 , printEqVector = 0x0010 , printGlobalMatrices = 0x0020 , printGlobalVectors = 0x0040 , printLinearMatrix = 0x0080 , printLinearVector = 0x0100 , printLinearResult = 0x0200 , saveLinearMatrix = 0x0400 , saveLinearVector = 0x0800 , saveLinearResult = 0x1000 } |
| Flag options used to compose the printOptions constructor parameter. More... | |
| enum | ElementSaveOptions { saveIteration = 0x0001 , savePhysicsId = 0x0002 , savePhysicsHeader = 0x0004 , saveDofMap = 0x0008 , saveDofValues = 0x0010 , saveFeVector = 0x0020 , saveFiVector = 0x0040 , saveKMatrix = 0x0080 , saveCMatrix = 0x0100 , saveMMatrix = 0x0200 } |
| enum | AccurateMethod { firstOrder , secondOrder } |
Public Member Functions | |
| GmpFemSolverOptions () | |
| Constructor. | |
| void | loadFromTable (LuaTable &optionsTable, GmSimulationData *simData) |
| Load options from the given Lua table. On errors raises an error through luaL_error(), without returning. | |
| const char ** | asssemblerModeOptions () |
| Returns a NULL terminated vector with the available options for the mode used by the assembler. | |
| const char ** | solverTypeOptions () |
| Returns a NULL terminated vector with the available options for the solver type. | |
| const char ** | newtonRaphsonModeOptions () |
| Returns a NULL terminated vector with the available options for the Newton Raphson mode. | |
| const char ** | incrementStrategyOptions () |
| Returns a NULL terminated vector with the available options for the increment strategy. | |
| const char ** | iterationStrategyOptions () |
| Returns a NULL terminated vector with the available options for the iteration strategy. | |
| const char ** | integrationSchemeOptions () |
| Returns a NULL terminated vector with the available options for the time integration scheme. | |
| const char ** | nonlinearSchemeOptions () |
| Returns a NULL terminated vector with the available options for the time integration scheme. | |
| const char ** | geostaticTypeOptions () |
| Returns a NULL terminated vector with the available options for the geostatic type. | |
| const char ** | couplingStrategyOptions () |
| Returns a NULL terminated vector with the available options for the coupling strategy. | |
| const char ** | convergenceCriterionOptions () |
| Returns a NULL terminated vector with the available options for the convergence criteria. | |
| const char ** | transientLinearOptions () |
| Returns a NULL terminated vector with the available options for the coupling strategy. | |
| const char ** | reductionMethodOptions () |
| Returns a NULL terminated vector with the available options for the coupling strategy. | |
| const char ** | timeIncrementAdaptativeOptions () |
| Returns a NULL terminated vector with the available options for the convergence criteria. | |
| const char ** | AccurateMethodOptions () |
| Returns a NULL terminated vector with the available options for the Accurate Method. | |
Public Attributes | |
| unsigned | _printOptions |
| Print options flags (an or of PrintOptions values) defining what information should be logged by the solver. | |
| int | _printFieldWidth |
| Format parameter used together with _printOptions: The matrix column minimum width. | |
| char | _printFormat |
| Format parameter used together with _printOptions: The format type f' or 'g'. | |
| int | _printPrecision |
| Format parameter used together with _printOptions: The number of decimal places. | |
| QString | _saveBaseName |
| The base name for the file where linear system matrices and vectors are saved. | |
| QString | _saveFilterAttr |
| Filter attribute used to limit the number of linear system values saved / printed. | |
| QVector< double > | _saveFilterValues |
| The ordered list of values for the save attribute filter. | |
| int | _mtnWorkers |
| The number of worker threads. See GmTaskManager::runParallelCellLoop() | |
| int | _mtnTasks |
| The number of tasks. See GmTaskManager::runParallelCellLoop() | |
| GmTaskManager::CellPartitionStrategy | _mtStrategy |
| The cell partitioning strategy. See GmTaskManager::runParallelCellLoop() | |
| AssemblerMode | _assemblerDofMode |
| Dof handling mode for the assembler. | |
| SolverType | _type |
| Solver option defining the analysis type. | |
| IncrementStrategy | _incrementStrategy |
| IterationStrategy | _iterationStrategy |
| NewtonRaphsonMode | _newtonRaphsonMode |
| GeostaticType | _geostaticType |
| QString | _physicsType |
| The physics type when running the IterativeSolver. Used on messages. If equal to "mechanic" the time step is ignored. | |
| CouplingStrategy | _couplingStrategy |
| ReductionMethod | _reductionMethod |
| LinearTransientMethods | _linearTransientMethod |
| TimeIncrementMethod | _timeIncrementMethod |
| AccurateMethod | _Order |
| NonlinearScheme | _nonlinearScheme |
| unsigned | _stepsMax |
| Solver option defining the maximum step number. | |
| unsigned | _attemptsMax |
| Solver option defining the maximum number of attempts. | |
| unsigned | _iterationsMax |
| Solver option defining the maximum number of iterations. | |
| unsigned | _iterationsDesired |
| Solver option defining the desired number of iterations. | |
| unsigned | _convergenceCriterion |
| QVector< double > | _tolerance |
| Solver option defining the tolerance. | |
| QStringList | _toleranceQuotedGroupNames |
| The quoted names of the tolerance groups. Size equal to _tolerance size. | |
| bool | _updateNumSolverTol |
| Updates the linear solver tolerance (valid only for LisSolver) | |
| QVector< int > | _dispControlData |
| Solver option defining the node, degree of fredom. | |
| double | _loadOld |
| Solver option defining the old load factor. | |
| double | _loadNew |
| Solver option defining the new load factor. | |
| double | _loadMax |
| Solver option defining the maximum load factor. | |
| double | _loadIncrement |
| Solver option defining the load increment. | |
| double | _loadMinIncrement |
| Solver option defining the minimum load increment. | |
| double | _loadMaxIncrement |
| Solver option defining the maximum load increment. | |
| bool | _loadAdjustStep |
| Solver option defining the adaptative load increment. | |
| double | _minDissipatedEnergy |
| Solver option defining the minimum dissipated energy. | |
| double | _initialEnergyIncrement |
| Solver option defining the initial energy increment. | |
| bool | _normalFlow |
| Solver option defining the normal flow technique. | |
| bool | _crackTracking |
| Solver option defining the crack tracking algorithm. | |
| double | _timeOld |
| double | _timeNew |
| double | _timeMax |
| Solver option defining the total time of analisys. | |
| double | _timeIncrement |
| Solver option defining the initial time increment. | |
| double | _timeMinIncrement |
| Solver option defining the minimum time increment. | |
| double | _timeMaxIncrement |
| Solver option defining the maximum time increment. | |
| double | _integrationScheme |
| Solver option defining the time integration scheme. | |
| bool | _timeAdjustStep |
| double | _iterationTolerance |
| Solver option defining the iteration tolerance. | |
| double | _integrationTolerance |
| Solver option defining the time integration tolerance. | |
| double | _transientVariableChange |
| Solver option defining the máx allowable transient variable change per increment. | |
| bool | _skipLocalError |
| Solver option defining the local integration error control (yes/no) | |
| bool | _resetDisplacement |
| Solver option defining the reset displacement (yes/no) | |
| unsigned | _iterationsL |
| Solver option defining number of iterations after which the size of the subsequent increment will be reduced. | |
| unsigned | _iterationsG |
| Solver option defining number of maximum number of iterations allowed in two consecutive increments for the size of the next increment to be increased. | |
| bool | _timeControl |
| Solver option defining the time increment control (yes/no) | |
| unsigned | _incrementsT |
| Solver option defining consecutive increments if no cut-back has occurred to allow a time increment increase. | |
| double | _DeltaG |
| Solver option defining time increment factor for proposed new time. | |
| double | _DeltaM |
| Solver option defining time increment factor for current time. | |
| double | _DeltaB |
| Solver option defining Cutback factor for the next increment if more than IL iterations were needed in the current increment. | |
| double | _DeltaF |
| Solver option defining Cutback factor if the solution seems to diverge. | |
| bool | _saveElementData |
| Should we save element data to an aux file? | |
| QString | _saveElementDataFileMask |
| The mask with the save element data file name. If it contains a XXXXXX substring, it will be replaced by an iteration number. | |
| unsigned | _saveElementOptions |
| An or of ElementSaveOptions values defining which data should be saved for each element. | |
| bool | _report |
| Should we save a report? | |
| QString | _reportFile |
| The report file name. Can contain PATH macros. | |
| QString | _reportId |
| The id of this solver in the report. | |
| bool | _reportDetailed |
| Should we add additional detailed information to the report? | |
Private Member Functions | |
| void | setAsssemblerMode (int index) |
| void | setSolverType (int index) |
| void | setNewtonRaphsonMode (int index) |
| void | setIncrementStrategy (int index) |
| void | setIterationStrategy (int index) |
| void | setIntegrationScheme (int index) |
| Updates the integration shcema from an index compatible with integrationSchemeOptions() | |
| void | setNonlinearScheme (int index) |
| void | setGeostaticType (int index) |
| void | setCouplingStrategy (int index) |
| void | setLinearTransient (int index) |
| void | setReductionMethod (int index) |
| void | setTimeIncrementStrategy (int index) |
| void | setAccurateMethod (int index) |
Flag options used to compose the printOptions constructor parameter.