ESMF,WRF and ROMS
Purposes Not a tutorial Not a tutorial Educational and conceptual Educational and conceptual Relation to our work Relation to our work
What do they represent for? ROMS: Regional Oceanographic Modeling ROMS: Regional Oceanographic ModelingSystem WRF: Weather Research Forecasting WRF: Weather Research Forecasting ESMF: Earth System Modeling Framework ESMF: Earth System Modeling Framework
ROMS Classical software structure for numerical model Classical software structure for numerical model No clear hierarchical level No clear hierarchical level Focus on physics Focus on physics Curvilinear coordinate Curvilinear coordinate Nested and composed grid Nested and composed grid
ROMS Some level of modularity Some level of modularity Fortran 90/95 Fortran 90/95 C – preprocessing macro managing C – preprocessing macro managing Supports MPI and OpenMP Supports MPI and OpenMP Portable Portable Widely used – 30 countries Widely used – 30 countries
WRF General
WRF A framework for regional weather research and forecasting A framework for regional weather research and forecasting Emphasize on Emphasize on physics physics software architecture software architecture standard standard
WRF software Architecture Three hierarchical level Three hierarchical level Provide dynamic and physics cores Provide dynamic and physics cores Applications have options to add their own components including cores Applications have options to add their own components including cores
WRF software design schematic (Adapted from WRF software design document at
WRF Features Supports MPI and OpenMP Supports MPI and OpenMP Portable Portable Fortran 90 Fortran 90 Widely Used by international research community Widely Used by international research community
Two level decomposition Logical domain 12 patches Level 1 Distributed memory MPI etc. Level 2 Shared memory 4 tiles We are interested in
Now ESMF
Why ESMF? Standard interface to couple Earth system models Standard interface to couple Earth system models Interoperability Interoperability code validation, tuning code validation, tuning migration from research to operations migration from research to operations Productivity Productivity model components easily to build model components easily to build maintenance maintenance
ESMF Superstructure: couple component (required) Superstructure: couple component (required) How models are coupled! Substructure: tools, data component, Substructure: tools, data component, Data regridding etc. No physics/dynamics inside, pure framework No physics/dynamics inside, pure framework
ESMF Structure Sandwiched architecture Sandwiched architecture ESMF Superstructure User Code ESMF Infrastructure couple common utility
Now Examples of ESMF and WRF
Land Information System
LIS-GCE coupling (standard way) ESMF Coupler LISGCE ESMF Utility
LIS-WRF coupling WRF-surface driver LIS ESMF coupler ESMF becomes a subcomponent
Impact of ESMF on Coupled Performance Weather Research and Forecasting Model (WRF)
Now about IOs
ROMS IO NetCDF only NetCDF only Stick to NetCDF tools Stick to NetCDF tools No motivation to use other data format No motivation to use other data format Need parallel IO Need parallel IO
WRF IO Standard IO APIs NetCDFNetCDF GRIBGRIB HDF5HDF5 Currently supports parallel IO through HDF5Currently supports parallel IO through HDF5
WRF I/O Schematic Application I/O API Format Package Comm Package Data Medium Package- independent Package- specific Installation- specific
ESMF IO Only support NetCDF IO through WRF APIs Only support NetCDF IO through WRF APIs Very preliminary Very preliminary No goal to improve IO in the near future No goal to improve IO in the near future
How’s that related to us? All these model developers express interests about NetCDF4 project, especially parallel IO All these model developers express interests about NetCDF4 project, especially parallel IO NetCDF4 is the key product for HDF5 to be utilized NetCDF4 is the key product for HDF5 to be utilized Simple Parallel IO? Simple Parallel IO? Fortran 90 supports? Fortran 90 supports?
ESMF web page: ESMF web page: WRF web page: WRF web page: Applications about ESMF and WRF: Applications about ESMF and WRF: p2.pdf p2.pdf p2.pdf p2.pdf ROMS web page: ROMS web page: