tTemperatureModel_Verification.hh - 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
---
tTemperatureModel_Verification.hh (1826B)
---
1 /* Copyright (C) 2016, 2017 PISM Authors
2 *
3 * This file is part of PISM.
4 *
5 * PISM is free software; you can redistribute it and/or modify it under the
6 * terms of the GNU General Public License as published by the Free Software
7 * Foundation; either version 3 of the License, or (at your option) any later
8 * version.
9 *
10 * PISM is distributed in the hope that it will be useful, but WITHOUT ANY
11 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
13 * details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with PISM; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18 */
19
20 #ifndef TEMPERATUREMODEL_VERIFICATION_H
21 #define TEMPERATUREMODEL_VERIFICATION_H
22
23 #include "pism/energy/TemperatureModel.hh"
24
25 namespace pism {
26 namespace energy {
27
28 /*! @brief Temperature-based energy balance model with verification-specific initialization code. */
29 class TemperatureModel_Verification : public TemperatureModel {
30 public:
31 TemperatureModel_Verification(IceGrid::ConstPtr grid,
32 stressbalance::StressBalance *stress_balance,
33 int testname, bool bedrock_is_ice);
34
35 void initialize_impl(const IceModelVec2S &basal_melt_rate,
36 const IceModelVec2S &ice_thickness,
37 const IceModelVec2S &surface_temperature,
38 const IceModelVec2S &climatic_mass_balance,
39 const IceModelVec2S &basal_heat_flux);
40 private:
41 void initTestFG();
42 void initTestsKO();
43
44 int m_testname;
45 bool m_bedrock_is_ice;
46 };
47
48 } // end of namespace energy
49 } // end of namespace pism
50
51 #endif /* TEMPERATUREMODEL_VERIFICATION_H */