1 | from EnumDefinitions import *
|
---|
2 |
|
---|
3 | def AnalysisConfiguration(solutiontype):
|
---|
4 | """
|
---|
5 | ANALYSISCONFIGURATION - return type of analyses, number of analyses
|
---|
6 |
|
---|
7 | Usage:
|
---|
8 | [analyses, numanalyses]=AnalysisConfiguration(solutiontype);
|
---|
9 | """
|
---|
10 |
|
---|
11 | if solutiontype == DiagnosticSolutionEnum:
|
---|
12 | numanalyses=5
|
---|
13 | analyses=[DiagnosticHorizAnalysisEnum,DiagnosticVertAnalysisEnum,DiagnosticHutterAnalysisEnum,SurfaceSlopeAnalysisEnum,BedSlopeAnalysisEnum]
|
---|
14 |
|
---|
15 | elif solutiontype == SteadystateSolutionEnum:
|
---|
16 | numanalyses=7
|
---|
17 | analyses=[DiagnosticHorizAnalysisEnum,DiagnosticVertAnalysisEnum,DiagnosticHutterAnalysisEnum,SurfaceSlopeAnalysisEnum,BedSlopeAnalysisEnum,ThermalAnalysisEnum,MeltingAnalysisEnum]
|
---|
18 |
|
---|
19 | elif solutiontype == ThermalSolutionEnum:
|
---|
20 | numanalyses=2
|
---|
21 | analyses=[ThermalAnalysisEnum,MeltingAnalysisEnum]
|
---|
22 |
|
---|
23 | elif solutiontype == EnthalpySolutionEnum:
|
---|
24 | numanalyses=1
|
---|
25 | analyses=[EnthalpyAnalysisEnum]
|
---|
26 |
|
---|
27 | elif solutiontype == PrognosticSolutionEnum:
|
---|
28 | numanalyses=1
|
---|
29 | analyses=[PrognosticAnalysisEnum]
|
---|
30 |
|
---|
31 | elif solutiontype == BalancethicknessSolutionEnum:
|
---|
32 | numanalyses=1
|
---|
33 | analyses=[BalancethicknessAnalysisEnum]
|
---|
34 |
|
---|
35 | elif solutiontype == SurfaceSlopeSolutionEnum:
|
---|
36 | numanalyses=1
|
---|
37 | analyses=[SurfaceSlopeAnalysisEnum]
|
---|
38 |
|
---|
39 | elif solutiontype == BedSlopeSolutionEnum:
|
---|
40 | numanalyses=1
|
---|
41 | analyses=[BedSlopeAnalysisEnum]
|
---|
42 |
|
---|
43 | elif solutiontype == TransientSolutionEnum:
|
---|
44 | numanalyses=9
|
---|
45 | analyses=[DiagnosticHorizAnalysisEnum,DiagnosticVertAnalysisEnum,DiagnosticHutterAnalysisEnum,SurfaceSlopeAnalysisEnum,BedSlopeAnalysisEnum,ThermalAnalysisEnum,MeltingAnalysisEnum,EnthalpyAnalysisEnum,PrognosticAnalysisEnum]
|
---|
46 |
|
---|
47 | elif solutiontype == FlaimSolutionEnum:
|
---|
48 | numanalyses=1
|
---|
49 | analyses=[FlaimAnalysisEnum]
|
---|
50 |
|
---|
51 | elif solutiontype == HydrologySolutionEnum:
|
---|
52 | numanalyses=3
|
---|
53 | analyses=[BedSlopeAnalysisEnum,SurfaceSlopeAnalysisEnum,HydrologyAnalysisEnum]
|
---|
54 |
|
---|
55 | else:
|
---|
56 | raise TypeError("solution type: '%s' not supported yet!" % EnumToString(solutiontype))
|
---|
57 |
|
---|
58 | return analyses,numanalyses
|
---|
59 |
|
---|