Presenters-0089

From CSDMS
Joint CSDMS-SEN annual meeting 2016: Capturing Climate Change


BMI: Live!



Eric Hutton

University of Colorado, Boulder, United States
huttone@colorado.edu
Mark Piper University of Colorado, Boulder United States

Abstract
CSDMS has developed the Basic Model Interface (BMI) to simplify the conversion of an existing model in C, C++, Fortran, Java, or Python into a reusable, plug-and-play component. By design, the BMI functions are straightforward to implement. However, in practice, the devil is in the details.

In this hands-on clinic, we will take a model -- in this case, an implementation of the two-dimensional heat equation in Python -- and together, we will write the BMI functions to transform it into a component. As we develop, we’ll unit test our component with nose, and we’ll explore how to use the component with a Jupyter Notebook. Optionally, we can set up a GitHub repository to store and to track changes to the code we write.

To get the most out of this clinic, come prepared to code! We have a lot to write in the time allotted. We recommend that clinic attendees have a laptop with the Anaconda Python distribution installed. We also request that you skim:

⤅ BMI description (https://csdms.colorado.edu/wiki/BMI_Description)
⤅ BMI documentation (http://bmi-forum.readthedocs.io/en/latest)
⤅ BMI GitHub repo(https://github.com/csdms/bmi-live)

before participating in the clinic.



Please acknowledge the original contributors when you are using this material. If there are any copyright issues, please let us know (CSDMSweb@colorado.edu) and we will respond as soon as possible.

Of interest for:
  • Cyberinformatics and Numerics Working Group