1 / 65

CE 394K.2 Hydrology Introduction to OpenMI

CE 394K.2 Hydrology Introduction to OpenMI. Tim Whiteaker. What is OpenMI.

Download Presentation

CE 394K.2 Hydrology Introduction to OpenMI

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CE 394K.2 HydrologyIntroduction to OpenMI Tim Whiteaker

  2. What is OpenMI • The OpenMI standard defines an interface that allows time-dependent models to exchange data at runtime. When the standard is implemented, existing models can be run in parallel and share information at each time step. http://www.openmi.org/

  3. Outline • Background • Thinking through integrated modeling • The OpenMI standard

  4. Outline • Background • Who created OpenMI • Why did they create OpenMI • Thinking through integrated modeling • The OpenMI standard

  5. History and Organization • Development team • 14 organizations • 7 countries • Funding • European Commission’s Fifth Framework programme European Commission Water Framework Directive Fifth Framework programme HarmonIT OpenMI

  6. European Commission (EC) • Executive body of EU • Proposes and implements legislation • One Commissioner from each member state • http://ec.europa.eu/ European Commission Water Framework Directive Fifth Framework programme HarmonIT OpenMI

  7. Water Framework Directive (WFD) • Most substantial piece of EC water legislation to date • Enacted December 22, 2000 • 2015 – “good status” for inland and coastal waters • Defines standards and procedures • Requires whole catchment modeling • http://ec.europa.eu/environment/water/water-framework/index_en.html European Commission Water Framework Directive Fifth Framework programme HarmonIT OpenMI

  8. Whole Catchment Modeling • Model interactions between hydrologic components • Rainfall/Runoff • Hydraulics • Groundwater • Ecology • Social • Key to integrated water management

  9. Fifth Framework programme (FP5) • Prioritizes EU research, technological development and demonstration activities (1998-2002) • ~15b euro for implementation • Programs • Quality of Life and management of living resources • User-friendly information society • Competitive and sustainable growth • Energy, environment and sustainable development • http://cordis.europa.eu/fp5/ European Commission Water Framework Directive Fifth Framework programme HarmonIT OpenMI

  10. HarmonIT • Supported by FP5’s Energy, environment and sustainable development program • Objective: to develop, implement and prove a system to simplify the linking of models to support whole catchment modeling • http://www.harmonit.org/ European Commission Water Framework Directive Fifth Framework programme HarmonIT OpenMI

  11. Centre for Ecology and Hydrology DHI Water and Environment WL Delft Hydraulics HR Wallingford Group Institute for Inland Water Management and Waste Water Treatment RIZA University of Dortmund Instituto di Ricerca Sulle Acque (IRSA) National Technical University of Athens WRc plc DHI Hydroinform a.s. Povodi Labe s.p. Hydroprojekt a.s. Alterra B.V. Centre National du Machinisme Agricole, du Genie Rural, des Eaux et des Forets HarmonIT Team Team leader Design and development Management, Support, Testing

  12. OpenMI • Open Modeling Interface and Environment • Interface for model integration • Supports understanding and prediction of process interactions • http://www.openmi.org/ European Commission Water Framework Directive Fifth Framework programme HarmonIT OpenMI

  13. OpenMI Aims and Objectives • The aim of the OpenMI is to provide a mechanism by which physical and socioeconomic process models can be linked to each other, to other data sources and to a variety of tools at runtime, hence enabling process interactions to be better modeled. • Specific objectives are that the mechanism’s design should: • Be applicable to new and existing models • Impose as few restrictions as possible on the modeler’s freedom • Be applicable to most, if not all, time-based simulation techniques • Require the minimum of change to the program code of existing applications • Keep the cost, skill and time required to migrate an existing model to a minimum so that these factors are not a deterrent to the OpenMI’s use • Be easy to use • Not unreasonably degrade performance http://www.openmi.org/openminew/documents/A_OpenMI_Scope.pdf

  14. Outline • Background • Thinking through integrated modeling • What is a model • How can models communicate • The OpenMI standard

  15. What models do we have now • HMS - hydrologic • RAS – hydraulic – 1D, steady/unsteady • SWAT – Soil Water Assessment Tool • HSPF • BASINS (HSPF, QUAL2E) • MODFLOW • SWMM • EPA NET

  16. What comprises a model

  17. What does a model need to run • Separate Engine from User Interface • Set model parameters • Deal with Inputs and Outputs

  18. User interface User interface Input data Evaporation Rainfall/Runoff Precipitation Output data Evaporation River Surface runoff Coast Application Application Estuary Integrated Modeling Input data Hydraulics ? Output data Rainfall runoff model How ? Hydraulic model

  19. Benefits of Integrated Modeling • Water Balance • Standardized, Modular system • Process interactions • Plug-and-play • Chance for individuals to publish models

  20. How can models exchange data

  21. What Quantities are variables accepted or provided by a model

  22. Where Elements are the locations where quantities are measured

  23. When At each time step? After simulations? Iterations?

  24. How • Model definition: Define quantities a model can exchange, and at which elements can it exchange them. • Configuration: Define which models are linked in terms of quantities and elements. • Runtime operation: Enable the model to accept or provide data at run time.

  25. Outline • Background • Thinking through integrated modeling • The OpenMI standard

  26. What is OpenMI: Revisted • The OpenMI standard defines an interface that allows time-dependent models to exchange data at runtime. When the standard is implemented, existing models can be run in parallel and share information at each time step. http://www.openmi.org/

  27. 16 4 Math library Program What is an Interface result = Calculator.SquareRoot(16) What’s the square root of 16? Programs and functions, revisted Functions: Add Multiply SquareRoot

  28. Math library What is an Interface • An interface defines how a program interacts with an object • An interface includes properties and methods (functions) Calculator object Math library Functions: Calculator Add Multiply Add (NumberArray) : Number SquareRoot Multiply (NumberArray) : Number SquareRoot (Number) : Number

  29. Interface for Hydro Data Exchange Rainfall runoff Get values Hydraulic Get values Ecology Get values Economic Get values OpenMI defines an Interface with a GetValues method, among others Interface

  30. OpenMI is ‘interface-based’ • Its ‘standardized’ part is defined as a software interface specification. • This interface acts as a ‘contract’ between software components. • The interface is not limited to specific technology platforms or implementations. • By implementing this interface a component becomes an OpenMI compliant component.

  31. OpenMI is ‘open’ • Its specification is publicly available via the Internet (www.OpenMI.org). • It enables linkages between different kinds of models, different disciplines and different domains. • It offers a complete metadata structure to describe the numerical data that can be exchanged in terms of semantics, units, dimensions, spatial and temporal representation and data operations. • It provides a means to define exactly what is linked, how and when. • Its default implementation and software utilities are available under an open source software license.

  32. OpenMI is a ‘standard’ • It standardizes the way data transfer is specified and executed. • It allows any model to talk to any other model (e.g. from a different developer) without the need for cooperation between model developers or close communication between integrators and model developers. • Its generic nature does not limit itself to a specific domain in the water discipline or even in the environmental discipline.

  33. GetValues Method • Occurs at a time step • Models called sequentially • For the geeks… ILinkableComponent.GetValues(time :ITime, linkID :string) : IValueSet

  34. GetValues Chaining Options

  35. Handling GetValues

  36. Conceptual Model for Data Exchange GetValues(time, linkID) when what,where

  37. Conceptual Model for Data Exchange • What the values represent and in what unit they are expressed is indicated by the quantity and its unit. • Where these values apply is indicated by the ElementSet class, which contains an ordered set of elements. • When the values apply is indicated by the time, either expressed as an instantaneous moment in time (a timestep) or a period over time (a time span).

  38. Base units and base quantities in OpenMI (derived from SI)

  39. Example of ‘Quantities’

  40. Elements (where exchange happens) • ID-based or geospatial representation • If geospatial, defined by set of nodes • May or may not be georeferenced • Elements in an ElementSet must be of the same type

  41. Element Types

  42. Examples of Element Sets

  43. Element Set Properties

  44. Interpreting positive values of fluxes, levels and depths

  45. Data Operations • Operations which define how information is exchanged between exchange items • Spatial • Interpolation • TakeNearest • Temporal • Aggregation • Extrapolation • Other

  46. Advanced Example Data operations allow data to be exchanged between these two models at various types of interfaces (e.g., nodes, lines, interpolations on areas)

  47. Exchange Items • Grouping of Quantityand ElementSet • Input and Output exchange items • Output exchange items include DataOperation

  48. Example of Exchange Items

  49. Linkable Component • Model engine with implementation of OpenMI standard interface • DLL • Model Definition • Exchange Items • Configuration • Run-time operation • GetValues Linkable Component Rainfall-Runoff Model --InputExchangeItems --Quantities --ElementSets --OutputExchangeItems --Quantities --ElementSets Model

  50. Links A link is the data path connecting two linkable components Linkable Component Linkable Component Rainfall-Runoff Model --InputExchangeItems --Quantities --ElementSets --OutputExchangeItems --Quantities --ElementSets River Model --InputExchangeItems --Quantities --ElementSets --OutputExchangeItems --Quantities --ElementSets LINK ID Description TargetComponent TargetQuantity TargetElementSet SourceComponent SourceQuantity SourceElementSet DataOperationsCount GetDataOperation Model Model

More Related