Glossary¶
A glossary of terms used with BMI.
- $
- The default shell prompt.
- Anaconda
- A Python distribution that includes libraries for scientific computing and a package manager. See https://www.anaconda.com/distribution for more information.
- Basic Model Interface
- A set a functions that are used to interact with and control a model. See https://bmi.readthedocs.io for more information.
- BMI
- See Basic Model Interface.
- Community Surface Dynamics Modeling System
- CSDMS is an NSF-funded program that seeks to transform the science and practice of earth-surface dynamics modeling. For more information, visit https://csdms.colorado.edu.
- class
- A program that acts as a template for creating objects.
- conda
- The package manager for Anaconda. Also an informal name for an Anaconda installation.
- conda-forge
- A collection of community-built packages distributed by Anaconda. See https://conda-forge.org.
- conda environment
- A conda sub-installation that isolates a group of packages from the main conda installation.
- configuration file
- A file that contains information, including initial values of parameters, for setting up a model.
- coupling
- See model coupling.
- CSDMS
- See Community Surface Dynamics Modeling System.
- CSDMS Workbench
- An integrated system of software tools, technologies, and standards for building and coupling models. See https://csdms.colorado.edu/wiki/Workbench for more information.
- data
- Information held by an object.
- edge
- A line or curve bounded by two nodes.
- exchange item
- A variable that a model with a BMI produces or consumes. Exchange items are public, not internal variables in the model. Exchange items should use Standard Names.
- face
- A plane or surface enclosed by a set of edges. In a 2D horizontal application one may consider the word “polygon”, but in the hierarchy of elements the term “face” is most common. See also node.
- grid
- A representation of a larger spatial domain by smaller discrete cells. See Model grids and References, as well as terms node, edge, and face.
- grid identifier
- A unique object that labels (identifies) a model grid. Grid identifiers are integers, starting at zero. Often abbreviated “grid id”. They’re obtained through the get_var_grid function.
- grid node
- See node.
- import
- The process of bringing code from a Python module into another module or into an interactive Python session.
- instance
- See object.
- method
- Programs that act upon the data of an object.
- model
- A computer program that attempts to describe a physical process with mathematical relationships that evolve over time and are solved numerically. For more information, see, for example, https://en.wikipedia.org/wiki/Numerical_modeling_(geology).
- model configuration file
- A file, usually in a text-based format, that lists the tunable parameters of a model and supplies their initial values.
- model coupling
- Models are coupled when they exchange inputs and outputs, often at the resolution of individual time steps. One-way coupling occurs when the outputs from one model are used as inputs to another model. Two-way coupling is when outputs from one model are used as inputs for another model, which in turn supplies its outputs to the first model as inputs, producing a feedback.
- module
- A file (with the
.py
extension) that contains Python code. - node
- A point that has a coordinate pair or triplet: the most basic element of a grid. Variable values are typically calculated at nodes. See also face and edge.
- NumPy
- A Python library that provides arrays. Outputs from pymt are NumPy arrays. See also http://www.numpy.org.
- object
- A variable that is a concrete example of a class. Objects have data and methods that act upon those data.
- rank
- The number of dimensions of a model grid. A scalar has rank 0, a vector has rank 1, a rectilinear grid has rank 2, etc.
- refactor
- The act of modifying the internals of a program without changing the external behaviors of the program. Refactoring is often done to clean up code and improve its performance.
- Scientific Interface Definition Language
- A specification language for describing software interfaces to scientific model codes. See References.
- SIDL
- See Scientific Interface Definition Language.
- Standard Names
- A semantic mediation technology developed at CSDMS for precisely matching variable names between models. For more information, see https://csdms.colorado.edu/wiki/CSDMS_Standard_Names.
- unit test
- A program that isolates and runs a section (a unit) of source code to ensure that it produces an expected result.