Browse wiki
From CSDMS
In software engineering, an interface is a … In software engineering, an interface is a set of functions with prescribed names, argument types, and return types. When a developer implements an interface for a piece of software, they fill out the details for each function while keeping the signatures intact. CSDMS has developed the Basic Model Interface (BMI) for facilitating the conversion of an existing model written in C, C++, Fortran, Python or Java into a reusable, plug-and-play component. By design, BMI functions are straightforward to implement. However, when trying to match BMI functions to model behaviors, the devil is often in the details.<br>In this hands-on clinic, we'll take a simple model--an implementation of the two-dimensional heat equation in Python--and together, we'll write the BMI functions to wrap it, preparing it for transformation into a component. As we develop, we’ll explore how to use the wrapped model with a Jupyter Notebook.<br>To get the most out of this clinic, come prepared to code! We'll have a lot to write in the time allotted for the clinic. We recommend that clinic attendees have a laptop with the Anaconda Python distribution installed. We also request that you read over:<br>BMI description (https://csdms.colorado.edu/wiki/BMI_Description)<br>BMI documentation (http://bmi-python.readthedocs.io)<br>before participating in the clinic./bmi-python.readthedocs.io)<br>before participating in the clinic. +
United States +
mpiper@colorado.edu +
CSDMS 2018 annual meeting - Geoprocesses, geohazards +
University of Colorado, Boulder +
University of Colorado, Boulder +
Piper +
Hutton +
Clinic +
Colorado +
Colorado +
BMI Live! +
United States +
Creation date"Creation date" is a predefined property that corresponds to the date of the first revision of a subject and is provided by <a target="_blank" rel="nofollow noreferrer noopener" class="external text" href="https://www.semantic-mediawiki.org/wiki/Help:Special_properties">Semantic MediaWiki</a>.
12:01:14, 6 August 2018 +
Has query"Has query" is a predefined property that represents meta information (in form of a <a target="_blank" rel="nofollow noreferrer noopener" class="external text" href="https://www.semantic-mediawiki.org/wiki/Subobject">subobject</a>) about individual queries and is provided by <a target="_blank" rel="nofollow noreferrer noopener" class="external text" href="https://www.semantic-mediawiki.org/wiki/Help:Special_properties">Semantic MediaWiki</a>.
Last editor is"Last editor is" is a predefined property that contains the page name of the user who created the last revision and is provided by <a target="_blank" rel="nofollow noreferrer noopener" class="external text" href="https://www.semantic-mediawiki.org/wiki/Help:Special_properties">Semantic MediaWiki</a>.
Modification date"Modification date" is a predefined property that corresponds to the date of the last modification of a subject and is provided by <a target="_blank" rel="nofollow noreferrer noopener" class="external text" href="https://www.semantic-mediawiki.org/wiki/Help:Special_properties">Semantic MediaWiki</a>.
22:34:09, 11 June 2025 +
Cyberinformatics and Numerics Working Group +