Last change
on this file since 496 was 496, checked in by Eric.Larour, 16 years ago |
Missing melting analysis type
|
File size:
1.2 KB
|
Line | |
---|
1 | /*!\file: DistributeNumDofs.cpp
|
---|
2 | * \brief: figure out the maximum number of dofs per grid.
|
---|
3 | */
|
---|
4 |
|
---|
5 | #include "../../include/macros.h"
|
---|
6 | #include "../../EnumDefinitions/EnumDefinitions.h"
|
---|
7 | #include "../shared.h"
|
---|
8 |
|
---|
9 | #undef __FUNCT__
|
---|
10 | #define __FUNCT__ "DistributeNumDofs"
|
---|
11 |
|
---|
12 | int DistributeNumDofs(int *pnumdofs,int analysis_type,int sub_analysis_type){
|
---|
13 |
|
---|
14 | int numdofs=2; //default numdofs
|
---|
15 | int i;
|
---|
16 |
|
---|
17 | /*ok, according to analysis type: */
|
---|
18 | if (analysis_type==ControlAnalysisEnum()){
|
---|
19 | numdofs=2;
|
---|
20 | }
|
---|
21 | else if (analysis_type==DiagnosticAnalysisEnum()){
|
---|
22 | if (sub_analysis_type==HorizAnalysisEnum()){
|
---|
23 | numdofs=2;
|
---|
24 | }
|
---|
25 | else if (sub_analysis_type==VertAnalysisEnum()){
|
---|
26 | numdofs=1;
|
---|
27 | }
|
---|
28 | else if (sub_analysis_type==StokesAnalysisEnum()){
|
---|
29 | numdofs=4;
|
---|
30 | }
|
---|
31 | else if (sub_analysis_type==HutterAnalysisEnum()){
|
---|
32 | numdofs=2;
|
---|
33 | }
|
---|
34 | }
|
---|
35 | else if (analysis_type==SlopeComputeAnalysisEnum()){
|
---|
36 | numdofs=1;
|
---|
37 | }
|
---|
38 | else if (analysis_type==ThermalAnalysisEnum()){
|
---|
39 | numdofs=1;
|
---|
40 | }
|
---|
41 | else if (analysis_type==MeltingAnalysisEnum()){
|
---|
42 | numdofs=1;
|
---|
43 | }
|
---|
44 | else throw ErrorException(__FUNCT__,exprintf("%s%i%s"," analysis type: ",analysis_type," not implemented yet!"));
|
---|
45 |
|
---|
46 | /*Assign output pointers:*/
|
---|
47 | *pnumdofs=numdofs;;
|
---|
48 |
|
---|
49 | return 1;
|
---|
50 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.