CG
Version 25
Main Page
Namespaces
Classes
Files
File List
File Members
cg.v25
sm
src
SmParameters.h
Go to the documentation of this file.
1
#ifndef SM_PARAMETERS
2
#define SM_PARAMETERS
3
4
// Parameters for Cgsm, the solid-mechanics solver
5
6
#include "
Parameters.h
"
7
// Here are the run time and PDE parameters
8
class
SmParameters
:
public
Parameters
9
{
10
public
:
11
12
enum
PDEModel
13
{
14
linearElasticity
=0,
15
nonlinearMechanics
,
// for the future
16
numberOfPDEModels
17
};
18
static
aString
PDEModelName
[
numberOfPDEModels
+1];
19
20
enum
PDEVariation
21
{
22
nonConservative
=0,
// Bill's non-conservative
23
conservative
,
// Daniel's conservative
24
godunov
,
// Don's Godunov method
25
hemp
,
// Jeff's version of the Hemp method
26
numberOfPDEVariations
27
};
28
static
aString
PDEVariationName
[
numberOfPDEVariations
+1];
29
30
enum
TimeSteppingMethodSm
// time stepping methods for SM
31
{
32
defaultTimeStepping
=0,
33
adamsBashforthSymmetricThirdOrder
,
34
rungeKuttaFourthOrder
,
35
stoermerTimeStepping
,
36
modifiedEquationTimeStepping
,
37
forwardEuler
,
38
improvedEuler
,
39
adamsBashforth2
,
40
adamsPredictorCorrector2
,
41
adamsPredictorCorrector4
42
};
43
44
45
enum
BoundaryConditionEnum
// these should match with bcDefineInclude.h
46
{
47
interpolation
=0,
48
displacementBC
,
49
tractionBC
,
50
slipWall
,
// n.u=0 and tau.sigma.n=0
51
symmetry
,
52
interfaceBoundaryCondition
,
// for the interface between two regions with different properties
53
abcEM2
,
// absorbing BC, Engquist-Majda order 2
54
abcPML
,
// perfectly matched layer
55
abc3
,
// future absorbing BC
56
abc4
,
// future absorbing BC
57
abc5
,
// future absorbing BC
58
rbcNonLocal
,
// radiation BC, non-local
59
rbcLocal
,
// radiation BC, local
60
dirichletBoundaryCondition
,
61
numberOfBCNames
62
};
63
static
aString
bcName
[
numberOfBCNames
];
64
65
SmParameters
(
const
int
& numberOfDimensions0=3);
66
~SmParameters
();
67
68
virtual
int
69
chooseUserDefinedBoundaryValues
(
int
side
,
int
axis
,
int
grid
, CompositeGrid &
cg
);
70
71
virtual
int
72
displayPdeParameters
(FILE *file = stdout );
73
74
virtual
aString
75
getTimeSteppingName
()
const
;
76
77
virtual
int
78
initializeTimings
();
79
80
bool
isFirstOrderSystem
()
const
;
81
82
bool
isSecondOrderSystem
()
const
;
83
84
virtual
int
85
saveParametersToShowFile
();
86
87
virtual
int
88
setParameters
(
const
int
& numberOfDimensions0=2,
89
const
aString & reactionName =nullString);
90
virtual
int
91
setPdeParameters
(CompositeGrid &
cg
,
92
const
aString & command = nullString,
93
DialogData *interface =NULL );
94
95
virtual
int
96
setTwilightZoneFunction
(
const
TwilightZoneChoice
& choice,
97
const
int
& degreeSpace =2,
98
const
int
& degreeTime =1 );
99
100
virtual
int
101
updateToMatchGrid
(CompositeGrid &
cg
, IntegerArray & sharedBoundaryCondition );
102
103
104
// virtual int
105
// setUserDefinedParameters();
106
107
};
108
109
#endif
Generated on Fri Jan 4 2013 10:19:28 for CG by
1.8.3