Eric Hutton at INSTAAR - University of Colorado Boulder.
Mark Piper at INSTAAR - University of Colorado Boulder.
Greg Tucker at Geological Sciences - University of Colorado Boulder.
Irina Overeem at INSTAAR - University of Colorado Boulder.
Introduction
[[LabDescription::The Basic Model Interface (BMI) is a set of standard control and query functions that, when added to a model code, make that model both easier to learn and easier to couple with other software elements. Detailed information about BMI can be found at https://bmi.readthedocs.io.
BMI is an element of the CSDMS Workbench, an integrated system of software tools, technologies, and standards for building and coupling models.]]
Classroom organization In this lab we explore what BMI is and how to use it through a pair of Jupyter Notebooks. The first notebook presents a simple "Heat" model which simulates the diffusion of temperature on a uniform rectangular plate with Dirichlet boundary conditions. The second notebook demonstrates how to run the "Heat" model through its BMI.
Learning objectives Skills
View model source code and model BMI source code
Learn to set up and run the Heat model
Learn to set up and run the Heat model through its BMI
Key concepts
Diffusion of temperature
Software interface
Lab notes
This lab can be run on either the lab (for educators) or jupyter (for general use) instance of the OpenEarthscape JupyterHub: just click one of the links under the Run online using heading at the top of this page, then run the notebook in the "CSDMS" kernel.
Acknowledgements This material is based upon work supported by the National Science Foundation under Grant No. 1831623, Community Facility Support: The Community Surface Dynamics Modeling System (CSDMS).
References
Hutton, E.W.H., Piper, M.D., and Tucker, G.E., 2020. The Basic Model Interface 2.0: A standard interface for coupling numerical models in the geosciences. Journal of Open Source Software, 5(51), 2317, https://doi.org/10.21105/joss.02317
Peckham, S.D., Hutton, E.W., and Norris, B., 2013. A component-based approach to integrated modeling in the geosciences: The design of CSDMS. Computers & Geosciences, 53, pp.3-12, http://dx.doi.org/10.1016/j.cageo.2012.04.002.