[12889] | 1 | from EnumDefinitions import *
|
---|
| 2 |
|
---|
| 3 | def AnalysisConfiguration(solutiontype):
|
---|
| 4 | """
|
---|
| 5 | ANALYSISCONFIGURATION - return type of analyses, number of analyses
|
---|
| 6 |
|
---|
[12944] | 7 | Usage:
|
---|
| 8 | [analyses, numanalyses]=AnalysisConfiguration(solutiontype);
|
---|
[12889] | 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 |
|
---|