340 likes | 516 Views
Storing Hydrologic Model Information using the XMDF API. Norm Jones Brigham Young University EMRL. Presented at the CUASHI HIS Symposium. – March 8, 2005. BYU - EMRL. Civil and Environmental Engineering Dept. 9 Research Staff 45 Graduate and Undergrad. Students. E. James Nelson.
E N D
Storing Hydrologic Model Information using the XMDF API Norm Jones Brigham Young University EMRL Presented at the CUASHI HIS Symposium. – March 8, 2005
BYU - EMRL • Civil and Environmental Engineering Dept. • 9 Research Staff • 45 Graduate and Undergrad. Students E. James Nelson Norman L. Jones Alan K. Zundel Storing Hydrologic Model Information
Sponsoring Organizations Storing Hydrologic Model Information
Watershed Modeling System (WMS) Surface Water Modeling System (SMS) Groundwater Modeling System (GMS) Water Modeling Software Storing Hydrologic Model Information
Models Developed/Used by USACE RMA2, RMA4, SED2D, HIVEL2D, FESWMS, ADCIRC, CGWAVE, STWAVE, M2D, BOUSS2D, CH3D, PTM, ADCIRC, BOUSS2D, PTM, MODFLOW, MT3DMS, SEAM3D, RT3D, MODPATH, FEMWATER, WASH123D, SEEP2D, MODAEM, ADH, UTCHEM, T-PROGS, PEST, UCODE, HEC-1, HEC-2, HEC-RAS, HEC-HMS, TR-20, TR-55, HSPF, CE-QUAL-W2, GSSHA, etc. Storing Hydrologic Model Information
XMDF Project Objectives • Develop a standardized file format for storing multi-dimensional modeling data • Promote new format within COE • Make format/tools available to other organizations Storing Hydrologic Model Information
Design Goals • Ease of use/implementation • Efficiency • Platform independence • Multiple languages • Extensible • Data abstraction Storing Hydrologic Model Information
API vs. File Formats • Ease of implementation • Just implement a few function/subroutine calls • Data abstraction • File format and i/o details are hidden Storing Hydrologic Model Information
HDF5 Foundation • API for highly efficient data storage and management • Developed by NCSA – University of Illinois • Key benefits • Flexibility • Efficiency • Platform independent • Strong user base • http://hdf.ncsa.uiuc.edu/HDF5/ Storing Hydrologic Model Information
HDF5 Features • Binary format • C/FORTRAN API • Compression options • User-defined hierarchical structure • NetCDF, XML compatible • Platform independent Storing Hydrologic Model Information
Interface Layering Applications (XMS, Model Codes, etc.) XMDF API HDF5 API Disk Storage Storing Hydrologic Model Information
Phase I - Typical Usage • Geometry generated by XMS/other GUI • Geometry read by model as part of model input • Model generates solution data sets • Data sets read by XMS/XMDF Viewer for post-processing Storing Hydrologic Model Information
Phase I – Data Types • Model Geometry • 2D/3D Unstructured Meshes • 2D/3D Structured Grids • Coordinate System • Data Sets • Scalar/Vector Storing Hydrologic Model Information
Meshes • 1D-2D-3D Elements • Mesh can consist of any combination of elements Storing Hydrologic Model Information
Sample Application Storing Hydrologic Model Information
Structured Grids • Cartesian • Curvilinear • Extruded • Cell-centered • Mesh-centered Storing Hydrologic Model Information
Data Sets • Arrays of data, one scalar or vector value per computation point • Steady state or transient Storing Hydrologic Model Information
Hierarchical Structure Storing Hydrologic Model Information
Viewing/Editing Data • Generic HDF5 browser/editor • Can be used to view or edit any HDF5 file • Free download: http://hdf.ncsa.uiuc.edu/hdf-java-html/hdfview/ Storing Hydrologic Model Information
HDF5 Browser/Editor Storing Hydrologic Model Information
Visualization • Can use any of the XMS systems • Public domain XMDF Viewer under development Storing Hydrologic Model Information
API Linkage • PC • Dynamically linked library • Two files: DLL, LIB • Unix • Compile XMDF source with project Storing Hydrologic Model Information
Phased Implementation • Phase I • Geometry and Data Sets • Phase II • Additional object types • Parallel support • Phase III • Model linkage Storing Hydrologic Model Information
Large MODFLOW Models • GIS and GUI’s make it easy to develop complex transient simulations • Massive models are becoming increasingly common • Problems • File size on disk (>500 MB per file is not uncommon) • File i/0 times (several minutes required to read each file) • RAM (easy to exceed 2 GB limit) Storing Hydrologic Model Information
HDF5 & MODFLOW File I/O • We have developed alternate file format for MODFLOW input files • Applicable to • Arrays (recharge, multipliers, K, etc.) • Stress packages Storing Hydrologic Model Information
MODFLOW Array Reader • Standard utility used to read all array-based input • New option (XMDF) added to format option • Refers to location in external HDF5 file Storing Hydrologic Model Information
MODFLOW Array Results Storing Hydrologic Model Information
Stress Package Files • HDF5 format created for the stress package files • Packages supported: River, Drain, General Head, Well, Time Variant Specified Head (CHD), and Stream Storing Hydrologic Model Information
Stress Package Results Storing Hydrologic Model Information
XMDF – Benefits/Advantages • Greatly reduced file sizes (compressed binary) • Faster file i/o • Can still view/edit file in simple text-like editor • Access XMS/XMDF Viewer for pre- and post-processing Storing Hydrologic Model Information
XMDF Benefits, cont. • Generic visualization tool • Sharing data between models • Model linkage • Easy to implement • Handles large files Storing Hydrologic Model Information
Relevance to CUAHSI • XMDF being promoted as standard format for USACE models • Translators needed for CUASHI data sources • Data standards/HDF5 case study Storing Hydrologic Model Information
XMDF Web Site • Documentation • Source code • Sample files • Test cases http://www.wes.army.mil/ITL/XMDF/ njones@byu.edu Storing Hydrologic Model Information