tmainpage.md - pism - [fork] customized build of PISM, the parallel ice sheet model (tillflux branch)
(HTM) git clone git://src.adamsgaard.dk/pism
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) LICENSE
---
tmainpage.md (4514B)
---
1 This searchable *Browser* shows the C++ class (object) structure of
2 PISM, the [Parallel Ice Sheet Model](http://www.pism-docs.org/). It
3 shows all the classes, inheritance structure, source files,
4 and class members (variables and methods) in the PISM source code.
5 It was automatically generated by [doxygen](http://www.doxygen.org/)
6 from comments in the PISM source code. It is the source of PISM technical
7 information, including that needed to extend PISM functionality.
8
9 Click on "Classes" above to see the full list of classes in this library. Some
10 key classes include:
11
12 ### The "manager" class
13
14 The pism::IceModel class manages time-stepping, I/O, initialization, and
15 contains parts of the model that were not modularized yet.
16
17 Many aspects of PISM's behavior can be modified by writing a new class
18 derived from pism::IceModel and re-implementing one or more of its methods.
19
20 ### Major sub-models
21
22 See these namespaces and classes, as well as *the ones derived from
23 these classes*. (This is a summary.)
24
25 - pism::stressbalance (stress balance models)
26 - pism::energy (energy balance models)
27 - pism::hydrology (sub-glacial hydrology models)
28 - pism::bed::BedDef (bed deformation models)
29 - pism::YieldStress, pism::IceBasalResistancePlasticLaw (basal strength)
30 - pism::calving (calving and "iceberg removal")
31 - pism::rheology (ice rheology)
32
33 #### Climatic inputs
34
35 - pism::surface ("surface" models, i.e. melt and snow processes)
36 - pism::atmosphere ("atmosphere", provides inputs to a pism::surface::SurfaceModel)
37 - pism::ocean ("ocean" model, provides sub-shelf boundary conditions,
38 melange back-pressure, and sea level elevation)
39
40 ### Infrastructure (utility) classes
41
42 - pism::IceGrid (computational grid)
43 - pism::Component and pism::Component_TS (interface shared by most sub-models)
44 - pism::IceModelVec2S, pism::IceModelVec2Stag, pism::IceModelVec2V, and pism::IceModelVec3 (storage)
45 - pism::Timeseries (scalar forcing)
46 - pism::IceModelVec2T (2D time-dependent forcing)
47 - pism::VariableMetadata (variable metadata such as physical units)
48 - pism::Config (configuration parameter database)
49 - pism::Time (time management, including calendars)
50 - pism::File (file I/O)
51
52 ### Some important infrastructure concepts and techniques:
53
54 - [Organization of PISM's computational grid](@ref computational_grid)
55 - [pism::IceModelVec and friends: storing, reading, writing, accessing 2D and 3D fields](@ref icemodelvec_use)
56 - [PISM's model components and their interface](@ref pism_components)
57 - [Reading scalar time-series (Timeseries)](@ref timeseries_overview)
58
59 ### Other useful pages
60
61 The [Related Pages tab](pages.html) links to some overview pages for
62 PISM usage and design. You will find
63 - [list of References](@ref references), and other helpful material.
64
65 This doxygen source *Browser* can be regenerated in any source code release.
66 Just do `"make browser"` in the build directory and look in
67 `doc/browser/html/` therein.
68
69 ### Where to go next (other PISM documentation)
70
71 - The website [www.pism-docs.org](http://www.pism-docs.org/) is the
72 *root* for all PISM information.
73
74 - You can *get help,* send comments, or ask for new features by email to
75 uaf-pism@alaska.edu.
76
77 - To *download* the PISM source code see https://github.com/pism/pism.
78 Use of [Git](http://git-scm.com/) to download is strongly
79 recommended because, even for the stable branches of the code, bug
80 fixes are easy to distribute by `" git pull "`.
81
82 - For help *installing* PISM, see the
83 [PISM Installation Manual](http://www.pism-docs.org/).
84
85 - For help *using* PISM, see the
86 [PISM User's Manual](http://www.pism-docs.org/). The *User's Manual*
87 should suffice for understanding PISM unless one wants to modify it
88 or couple another model to it.
89
90 > Copyright (C) 2008-2017 the PISM authors.
91
92 > This document is part of PISM. PISM is free software; you can redistribute it
93 > and/or modify it under the terms of the GNU General Public License as published
94 > by the Free Software Foundation; either version 3 of the License, or (at your
95 > option) any later version. PISM is distributed in the hope that it will be
96 > useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
97 > MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
98 > License for more details. You should have received a copy of the GNU General
99 > Public License along with PISM; see `COPYING` in the PISM source directory; if
100 > not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
101 > Boston, MA 02110-1301 USA