Earth System Modeling Framework: Difference between revisions

Content deleted Content added
m top: Rep typographic ligatures like "fi" with plain text; possible ref cleanup; WP:GenFixes on, replaced: fi → fi, fl → fl using AWB
Script-assisted fixes: per MOS:NUM, MOS:CAPS, MOS:LINK
Line 1:
{{Use mdy dates|date=November 2017}}
{{more footnotes|date=October 2016}}
 
The '''Earth System Modeling Framework''' ('''ESMF''') is [[open -source software]] for building [[Climate model|climate]], [[numerical weather prediction]], [[data assimilation]], and other [[Earth science]] [[software applications]]. These applications are computationally demanding and usually run on [[supercomputers]]. The ESMF is considered a technical layer, integrated into a sophisticated [[common modeling infrastructure]] for [[interoperability]]. Other aspects of interoperability and shared infrastructure include: common experimental protocols, common analytic methods, common documentation standards for data and data provenance, shared workflow, and shared model components.<ref>{{cite web|url=http://cpo.noaa.gov/sites/cpo/MAPP/Webinars/2014/03-31-14/Balaji.pdf|title=Scientific Basis for Common Infrastructure|author=NOAA/CPO MAPP|date=March 31, 2014|page=15}}</ref>
 
==About ESMF==
The ESMF project is distinguished by its strong emphasis on community [[governance]] and [[distributed development]], and by a diverse customer base that includes modeling groups from universities, major U.S. research centers, the [[National Weather Service]], the [[United States Department of Defense|Department of Defense]], and [[NASA]]. The ESMF development team was centered at [[NCAR]] until 2009, after which it moved to the [[NOAA]] [[Earth System Research Laboratory]].
 
===Purpose===
ESMF increases the interoperability of Earth -science modeling software developed at different sites and promotes [[code reuse]]. The idea is to transform distributed, specialized knowledge and resources into a collaborative, integrated modeling community that operates more efficiently, can address a wider variety of problems more effectively, and is more responsive to societal needs.
 
===Software architecture===
ESMF is based on principles of [[component-based software engineering]]. The components within an ESMF software application usually represent large-scale physical domains such as the [[atmosphere]], [[ocean]], [[cryosphere]], or land surface. Some models also represent specific processes (e.g. ocean biogeochemistry, the impact of [[solar radiation]] on the atmosphere) as components. In ESMF, components can create and drive other components so that an ocean biogeochemistry component can be part of a larger ocean component.
 
The software that connects physical domains is called a coupler in the Earth system modeling community. Couplers follow the [[mediator pattern]] and take the outputs from one component and transform them into the inputs that are needed to run another component. Transformations may include unit conversions, grid interpolation or remapping, mergers (i.e., combining land and ocean surfaces to form a completely covered global surface) or other specialized transformations. In ESMF, couplers are also software components.
Line 17:
ESMF represents user data in the form of [[data object]]s such as grids, fields, and arrays. The user data within a component may be copied or referenced into these ESMF objects. Once user data is part of an ESMF data object, framework methods can be used to transform and transfer the data as required to other components in the system. This generally happens within a coupler component.
 
Grid [[interpolation]] and remapping are core utilities of ESMF. Interpolation weights can be generated in ESMF using [[bilinear interpolation]], finite element patch recovery, and conservative remapping methods.
 
ESMF can associate [[metadata]] with data objects. The metadata, in the form of name and value pairs, is grouped into packages, which can be written out in [[XML]] and other standard formats. ESMF metadata packages are based on community conventions including the [[Climate and Forecast Metadata Conventions]] and the [[METAFOR]] Common Information Model.
 
===History===
The ESMF collaboration had its roots in the [[Common Modeling Infrastructure]] Working Group (CMIWG), an unfunded, [[grass -roots]] effort to explore ways of enhancing collaborative Earth system model development. The CMIWG attracted broad participation from major weather and climate modeling groups at research and operational centers. In a series of meetings held from 1998 to 2000, CMIWG members established general requirements and a preliminary design for a common [[software framework]].
 
In September 2000, the NASA Earth Science Technology Office (ESTO) released a solicitation that called for the creation of an ESMF. A critical mass of CMIWG participants agreed to develop a coordinated response, based on their strawman framework design, and submitted three linked proposals. The first focused on development of the core ESMF software, the second on deployment of Earth science modeling applications, and the third on deployment of ESMF data assimilation applications. All three proposals were funded, at a collective level of $9.8 &nbsp;million over a three-year period. As the ESMF project gained momentum, it replaced the CMIWG as the focal point for developing community modeling infrastructure.
 
During the period of NASA funding, the ESMF team developed a prototype of the framework and used it in a number of experiments that demonstrated coupling of modeling components from different institutions. ESMF was also used as the basis for the construction of a new model, the GEOS-5 atmospheric [[general circulation model]] at [[NASA Goddard]].