tpism_inverse.i - pism - [fork] customized build of PISM, the parallel ice sheet model (tillflux branch)
HTML git clone git://src.adamsgaard.dk/pism
DIR Log
DIR Files
DIR Refs
DIR LICENSE
---
tpism_inverse.i (4587B)
---
1
2 /* Does not seem like this is used anywhere, but if I don't compile
3 this, it will rot. */
4 %include "stressbalance/ssa/SNESProblem.hh"
5 %template(_SNESScalarProblem) pism::SNESProblem<1,double>;
6 %template(_SNESVectorProblem) pism::SNESProblem<2,pism::Vector2>;
7 %{
8 #include "stressbalance/ssa/SNESProblem.hh"
9 %}
10
11 /* Inverse model classes */
12 %{
13 #include "inverse/IP_SSATaucForwardProblem.hh"
14 #include "inverse/IP_SSAHardavForwardProblem.hh"
15 #include "inverse/IPDesignVariableParameterization.hh"
16 #include "inverse/functional/IPFunctional.hh"
17 #include "inverse/functional/IP_L2NormFunctional.hh"
18 #include "inverse/functional/IP_H1NormFunctional.hh"
19 #include "inverse/functional/IPGroundedIceH1NormFunctional.hh"
20 #include "inverse/functional/IPTotalVariationFunctional.hh"
21 #include "inverse/functional/IPMeanSquareFunctional.hh"
22 #include "inverse/functional/IPLogRelativeFunctional.hh"
23 #include "inverse/functional/IPLogRatioFunctional.hh"
24 #include "inverse/IP_SSATaucTikhonovGNSolver.hh"
25
26 #include "inverse/TaoUtil.hh"
27 #include "inverse/IP_SSATaucTaoTikhonovProblem.hh"
28 #include "inverse/IP_SSATaucTaoTikhonovProblemLCL.hh"
29 #include "inverse/IP_SSAHardavTaoTikhonovProblem.hh"
30
31 #include "util/TerminationReason.hh"
32 %}
33
34 %shared_ptr(pism::TerminationReason)
35 %shared_ptr(pism::KSPTerminationReason)
36 %shared_ptr(pism::SNESTerminationReason)
37 %shared_ptr(pism::GenericTerminationReason)
38 %include "util/TerminationReason.hh"
39
40
41 %include "inverse/functional/IPFunctional.hh"
42 %template(_IPFunctional2S) pism::inverse::IPFunctional< pism::IceModelVec2S >;
43 %template(_IPFunctional2V) pism::inverse::IPFunctional< pism::IceModelVec2V >;
44 %template(_IPInnerProductFunctional2S) pism::inverse::IPInnerProductFunctional< pism::IceModelVec2S >;
45 %template(_IPInnerProductFunctional2V) pism::inverse::IPInnerProductFunctional< pism::IceModelVec2V >;
46 %include "inverse/functional/IP_L2NormFunctional.hh"
47 %include "inverse/functional/IP_H1NormFunctional.hh"
48 %include "inverse/functional/IPGroundedIceH1NormFunctional.hh"
49 %include "inverse/functional/IPTotalVariationFunctional.hh"
50 %include "inverse/functional/IPMeanSquareFunctional.hh"
51 %include "inverse/functional/IPLogRatioFunctional.hh"
52 %include "inverse/functional/IPLogRelativeFunctional.hh"
53 %include "inverse/IPDesignVariableParameterization.hh"
54
55 %shared_ptr(pism::inverse::IP_SSATaucForwardProblem)
56 %include "inverse/IP_SSATaucForwardProblem.hh"
57
58 %include "inverse/IP_SSATaucTikhonovGNSolver.hh"
59
60 // TAO stuff
61
62 %ignore TaoConvergedReasons;
63 %shared_ptr(pism::taoutil::TAOTerminationReason)
64 %include "inverse/TaoUtil.hh"
65
66 %include "inverse/IPTaoTikhonovProblem.hh"
67
68 //################### IP_SSATauc... #############################
69
70 // Instantiate the base class for IP_SSATaucTaoTikhonovProblem
71 // so that SWIG will implement the base class methods.
72 %template(_IP_SSATaucTaoTikhonovProblemBaseClass) pism::inverse::IPTaoTikhonovProblem<pism::inverse::IP_SSATaucForwardProblem>;
73
74 %shared_ptr(pism::inverse::IPTaoTikhonovProblemListener<pism::inverse::IP_SSATaucForwardProblem>)
75
76 %feature("director") pism::inverse::IPTaoTikhonovProblemListener<pism::inverse::IP_SSATaucForwardProblem>;
77
78 %template(IP_SSATaucTaoTikhonovProblemListener) pism::inverse::IPTaoTikhonovProblemListener<pism::inverse::IP_SSATaucForwardProblem>;
79
80 %include "inverse/IP_SSATaucTaoTikhonovProblem.hh"
81
82 %template(IP_SSATaucTaoTikhonovSolver) pism::taoutil::TaoBasicSolver<pism::inverse::IP_SSATaucTaoTikhonovProblem>;
83
84
85 %shared_ptr(pism::inverse::IP_SSATaucTaoTikhonovProblemLCLListener)
86 %feature("director") pism::inverse::IP_SSATaucTaoTikhonovProblemLCLListener;
87 %include "inverse/IP_SSATaucTaoTikhonovProblemLCL.hh"
88 %template(_IP_SSATaucTaoTikhonovProblemLCLSolver) pism::taoutil::TaoBasicSolver< pism::inverse::IP_SSATaucTaoTikhonovProblemLCL >;
89
90
91 //################### IP_SSAHardav... #############################
92
93 %template(_IP_SSAHardavTaoTikhonovProblemBaseClass) pism::inverse::IPTaoTikhonovProblem<pism::inverse::IP_SSAHardavForwardProblem>;
94
95 %shared_ptr(pism::inverse::IPTaoTikhonovProblemListener<pism::inverse::IP_SSAHardavForwardProblem>)
96
97 %feature("director") pism::inverse::IPTaoTikhonovProblemListener<pism::inverse::IP_SSAHardavForwardProblem>;
98
99 %template(IP_SSAHardavTaoTikhonovProblemListener) pism::inverse::IPTaoTikhonovProblemListener<pism::inverse::IP_SSAHardavForwardProblem>;
100
101 %shared_ptr(pism::inverse::IP_SSAHardavForwardProblem)
102 %include "inverse/IP_SSAHardavForwardProblem.hh"
103 %include "inverse/IP_SSAHardavTaoTikhonovProblem.hh"
104
105 %template(_IP_SSAHardavTaoTikhonovSolver) pism::taoutil::TaoBasicSolver<pism::inverse::IP_SSAHardavTaoTikhonovProblem>;