API Reference¶
This page lists all available functions and classes in OGGM. It is a hard work to keep everything up-to-date, so don’t hesitate to let us know (see Get in touch) if something’s missing, or help us (see Contributing to OGGM) to write a better documentation!
Workflow¶
Tools to set-up and run OGGM.
cfg.initialize |
Read the configuration file containing the run’s parameters. |
cfg.set_logging_config |
Set the global logger parameters. |
cfg.set_intersects_db |
Set the glacier intersection database for OGGM to use. |
cfg.reset_working_dir |
Deletes the content of the working directory. |
workflow.init_glacier_regions |
Initializes the list of Glacier Directories for this run. |
workflow.execute_entity_task |
Execute a task on gdirs. |
workflow.gis_prepro_tasks |
Shortcut function: run all flowline preprocessing tasks. |
workflow.climate_tasks |
Shortcut function: run all climate related tasks. |
workflow.inversion_tasks |
Shortcut function: run all ice thickness inversion tasks. |
utils.compile_glacier_statistics |
Gather as much statistics as possible about a list of glaciers. |
utils.compile_run_output |
Merge the output of the model runs of several gdirs into one file. |
utils.compile_climate_input |
Merge the climate input files in the glacier directories into one file. |
utils.compile_task_log |
Gathers the log output for the selected task(s) |
utils.copy_to_basedir |
Copies the glacier directories and their content to a new location. |
Troubleshooting¶
utils.show_versions |
Prints the OGGM version and other system information. |
Input/Output¶
utils.get_demo_file |
Returns the path to the desired OGGM-sample-file. |
utils.get_rgi_dir |
Path to the RGI directory. |
utils.get_rgi_region_file |
Path to the RGI region file. |
utils.get_rgi_glacier_entities |
Get a list of glacier outlines selected from their RGI IDs. |
utils.get_rgi_intersects_dir |
Path to the RGI directory containing the intersect files. |
utils.get_rgi_intersects_region_file |
Path to the RGI regional intersect file. |
utils.get_rgi_intersects_entities |
Get a list of glacier intersects selected from their RGI IDs. |
utils.get_cru_file |
Returns a path to the desired CRU baseline climate file. |
utils.get_histalp_file |
Returns a path to the desired HISTALP baseline climate file. |
utils.get_ref_mb_glaciers |
Get the list of glaciers we have valid mass balance measurements for. |
Entity tasks¶
Entity tasks are tasks which are applied on single glaciers individually and do not require information from other glaciers (this encompasses the majority of OGGM’s tasks). They are parallelizable.
tasks.define_glacier_region |
Very first task: define the glacier’s local grid. |
tasks.glacier_masks |
Makes a gridded mask of the glacier outlines and topography. |
tasks.compute_centerlines |
Compute the centerlines following Kienholz et al., (2014). |
tasks.initialize_flowlines |
Computes more physical Inversion Flowlines from geometrical Centerlines |
tasks.compute_downstream_line |
Computes the Flowline along the unglaciated downstream topography |
tasks.compute_downstream_bedshape |
The bedshape obtained by fitting a parabola to the line’s normals. |
tasks.catchment_area |
Compute the catchment areas of each tributary line. |
tasks.catchment_intersections |
Computes the intersections between the catchments. |
tasks.catchment_width_geom |
Compute geometrical catchment widths for each point of the flowlines. |
tasks.catchment_width_correction |
Corrects for NaNs and inconsistencies in the geometrical widths. |
tasks.process_cru_data |
Processes and writes the CRU baseline climate data for this glacier. |
tasks.process_histalp_data |
Processes and writes the HISTALP baseline climate data for this glacier. |
tasks.process_custom_climate_data |
Processes and writes the climate data from a user-defined climate file. |
tasks.process_gcm_data |
Applies the anomaly method to GCM climate data |
tasks.process_cesm_data |
Processes and writes CESM climate data for this glacier. |
tasks.process_cmip5_data |
Read, process and store the CMIP5 climate data data for this glacier. |
tasks.local_t_star |
Compute the local t* and associated glacier-wide mu*. |
tasks.mu_star_calibration |
Compute the flowlines’ mu* and the associated apparent mass-balance. |
tasks.apparent_mb_from_linear_mb |
Compute apparent mb from a linear mass-balance assumption (for testing). |
tasks.glacier_mu_candidates |
Computes the mu candidates, glacier wide. |
tasks.prepare_for_inversion |
Prepares the data needed for the inversion. |
tasks.mass_conservation_inversion |
Compute the glacier thickness along the flowlines |
tasks.filter_inversion_output |
Filters the last few grid point whilst conserving total volume. |
tasks.distribute_thickness_per_altitude |
Compute a thickness map by redistributing mass along altitudinal bands. |
tasks.distribute_thickness_interp |
Compute a thickness map by interpolating between centerlines and border. |
tasks.init_present_time_glacier |
Merges data from preprocessing tasks. |
tasks.run_random_climate |
Runs the random mass-balance model for a given number of years. |
tasks.run_constant_climate |
Runs the constant mass-balance model for a given number of years. |
tasks.run_from_climate_data |
Runs a glacier with climate input from e.g. |
Global tasks¶
Global tasks are tasks which are run on a set of glaciers (most often: all glaciers in the current run). They are not parallelizable at the user level but might use multiprocessing internally.
tasks.compute_ref_t_stars |
Detects the best t* for the reference glaciers and writes them to disk |
tasks.compile_glacier_statistics |
Gather as much statistics as possible about a list of glaciers. |
tasks.compile_run_output |
Merge the output of the model runs of several gdirs into one file. |
tasks.compile_climate_input |
Merge the climate input files in the glacier directories into one file. |
tasks.compile_task_log |
Gathers the log output for the selected task(s) |
Classes¶
Listed here are the classes which are relevant at the API level (i.e. classes which are used and re-used across modules and tasks).
GlacierDirectory |
Organizes read and write access to the glacier’s files. |
Centerline |
A Centerline has geometrical and flow rooting properties. |
Flowline |
The is the input flowline for the model. |
Glacier directories¶
Glacier directories (see also: GlacierDirectory
) are folders
on disk which store the input and output data for a single glacier during
an OGGM run. The data are on disk to be persistent, i.e. they won’t be deleted
unless you ask OGGM to. You can start a run from an existing directory,
avoiding to re-do unnecessary computations.
Initialising a glacier directory¶
The easiest way to initialize a glacier directory is to start from a pre-processed state available on the OGGM servers:
In [1]: import os
In [2]: import oggm
In [3]: from oggm import cfg, workflow
In [4]: from oggm.utils import gettempdir
In [5]: cfg.initialize() # always initialize before an OGGM task
# The working directory is where OGGM will store the run's data
In [6]: cfg.PATHS['working_dir'] = os.path.join(gettempdir(), 'Docs_GlacierDir')
In [7]: gdirs = workflow.init_glacier_regions('RGI60-11.00897', from_prepro_level=1,
...: prepro_border=10)
...:
In [8]: gdir = gdirs[0] # init_glacier_regions always returns a list
We just downloaded the minimal input for a glacier directory. The
GlacierDirectory
object contains the glacier metadata:
In [9]: gdir
Out[9]:
<oggm.GlacierDirectory>
RGI id: RGI60-11.00897
Region: 11: Central Europe
Subregion: 11-01: Alps
Name: Hintereisferner
Glacier type: Glacier
Terminus type: Land-terminating
Area: 8.036 km2
Lon, Lat: (10.7584, 46.8003)
Grid (nx, ny): (139, 94)
Grid (dx, dy): (50.0, -50.0)
In [10]: gdir.rgi_id