Lab-0015: Difference between revisions

From CSDMS
No edit summary
No edit summary
Line 51: Line 51:
}}
}}
{{LabNotes
{{LabNotes
|LabNotesInstructions=<p>This lab can be run on either the <em>lab</em> (for educators) or <em>jupyter</em> (for general use) instances of the OpenEarthscape JupyterHub: just click one of the links under the <strong>Run online</strong> heading at the top of this page, then run the notebook in either the "CSDMS" or the "Ivy" kernel.</p>
|LabNotesInstructions=<p>This lab can be run on either the <em>lab</em> (for educators) or <em>jupyter</em> (for general use) instances of the OpenEarthscape JupyterHub: just click one of the links under the <strong>Run online using:</strong> heading at the top of this page, then run the notebook in either the "CSDMS" or the "Ivy" kernel.</p>


<p>If you don't already have a JupyterHub account, follow the instructions to sign up at https://csdms.colorado.edu/wiki/JupyterHub. If you're an educator, you can get JupyterHub accounts for students--please contact us through the CSDMS Help Desk: https://csdms.github.io/help-desk.</p>
<p>If you don't already have a JupyterHub account, follow the instructions to sign up at https://csdms.colorado.edu/wiki/JupyterHub. If you're an educator, you can get JupyterHub accounts for students--please contact us through the CSDMS Help Desk: https://csdms.github.io/help-desk.</p>

Revision as of 12:46, 13 April 2022

CSDMS Workbench: Basic Model Interface (BMI)

Model
Heat
Duration
1.0 hrs
Updated
2022-04-08
Download
download
Run online using:
  1. Jupyter
  2. Lab
     Jupyter logo.png

Contributor(s)
    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
Bmi-logo-below-lowercase.png
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.

Classroom organization
In this lab, we explore what BMI is and how to use it through a pair of Jupyter Notebooks. This lab first illustrates an example "Heat" model which simulates the diffusion of temperature on a uniform rectangular plate with Dirichlet boundary conditions. Then, the lab 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) instances 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 either the "CSDMS" or the "Ivy" kernel.

If you don't already have a JupyterHub account, follow the instructions to sign up at https://csdms.colorado.edu/wiki/JupyterHub. If you're an educator, you can get JupyterHub accounts for students--please contact us through the CSDMS Help Desk: https://csdms.github.io/help-desk.


Requirements
If run locally, this lab requires the source code from the bmi-example-python repository: https://github.com/csdms/bmi-example-python.

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.