BMI: Difference between revisions

From CSDMS
m (Add link to BMI Live repo)
m (Include BMI logo for added excitement)
Line 1: Line 1:
{{PageTitle| Basic Model Interface (BMI) }}
{{PageTitle| Basic Model Interface (BMI) }}
<div class=AutoScaleImage>[[ File:bmi-lego-left-facing.png | The Basic Model Interface | 200px | right ]]<div>


'''Version 1.0'''
'''Version 1.0'''

Revision as of 11:35, 12 November 2018

Basic Model Interface (BMI)
The Basic Model Interface

Version 1.0

Development of scientific modeling software increasingly requires the coupling of multiple, independently developed models. Component-based software engineering enables the integration of plug-and-play components, but significant additional challenges must be addressed in any specific domain in order to produce a usable development and simulation environment that also encourages contributions and adoption by entire communities. In the paper linked below, we describe the challenges in creating a coupling environment for Earth-surface process modeling and the innovative approach that we have developed to address them within CSDMS.

Links

  • A description of the BMI specification: Go here for a detailed description of the latest version of BMI.
  • BMI on GitHub: Go here to contribute to BMI, ask a BMI-related question, or submit an issue.
  • The original BMI article in Computers & Geosciences
  • A template for a Python BMI. This provides a simple way for a modeler to add a BMI to their model. Each BMI method is stubbed out with documentation; all the modeler needs to do is fill in the methods with hooks into their model code.
  • The latest materials for the BMI Live instructional clinic.