Presenters-0420: Difference between revisions
From CSDMS
m Add youtube views template if missing |
m Text replacement - "\|CSDMS meeting youtube views=\{\{(Youtube_[^}]+)\}\}" to "|CSDMS meeting youtube views={{#explode:{{$1}}| |0}} |CSDMS meeting youtube AverageViews={{#explode:{{$1}}| |1}}" |
||
Line 21: | Line 21: | ||
before the start of the clinic. | before the start of the clinic. | ||
|CSDMS meeting youtube code=0 | |CSDMS meeting youtube code=0 | ||
|CSDMS meeting youtube views={{Youtube_0}} | |CSDMS meeting youtube views={{#explode:{{Youtube_0}}| |0}} | ||
|CSDMS meeting youtube AverageViews={{#explode:{{Youtube_0}}| |1}} | |||
|CSDMS meeting participants=0 | |CSDMS meeting participants=0 | ||
}} | }} |
Latest revision as of 16:34, 11 June 2025
CSDMS3.0 - Bridging Boundaries
BMI Live!
Abstract
In software engineering, an interface is a group 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 a model written in C, C++, Fortran, Python, or Java into a reusable, plug-and-play component. By design, BMI functions are simple. However, when trying to implement them, the devil is often in the details.
In this hands-on clinic, we'll take a simple model of the two-dimensional heat equation, written 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.
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 review the
- BMI description (http://csdms.colorado.edu/wiki/BMI_Description), and the
- BMI documentation (https://bmi-spec.readthedocs.io)
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: