1 | file README.io_esmf |
---|
2 | Tom Henderson 10/10/06 |
---|
3 | |
---|
4 | This version of WRF has been tested with ESMF 2.2.0rp1. Since ESMF interfaces |
---|
5 | are still changing with each new release, it is quite likely that this version |
---|
6 | of WRF will not work with other versions of ESMF. |
---|
7 | |
---|
8 | NOTE: ESMF 3.0.0 is available at the time of this writing. However, |
---|
9 | ESMF 3.0.0 fails to build with IBM's xlf 10.1 compiler. (The ESMF core |
---|
10 | team expects this problem to be resolved by a later release of xlf.) |
---|
11 | Therefore WRF was not tested with ESMF 3.0.0. |
---|
12 | |
---|
13 | New environment variables ESMFLIB and ESMFINC may be set to trigger |
---|
14 | build using a separately installed ESMF library instead of the default |
---|
15 | library embedded in external/esmf_time_f90/. These new environment variables |
---|
16 | must be set to point to library and module paths for the separately |
---|
17 | installed ESMF library before WRF "configure" is run. For example, an |
---|
18 | installation of ESMF on bluesky built with default ESMF settings in |
---|
19 | /home/bluesky/hender/esmf requires the following settings: |
---|
20 | ESMFLIB /home/bluesky/hender/esmf/lib/libO/AIX.default.32.default |
---|
21 | ESMFINC /home/bluesky/hender/esmf/mod/modO/AIX.default.32.default |
---|
22 | (Note that the portions of the pathnames following |
---|
23 | "/home/bluesky/hender/esmf/" are defined by ESMF and described in the ESMF |
---|
24 | documentation.) |
---|
25 | |
---|
26 | When ESMFLIB and ESMFINC are set, a new main program is built in |
---|
27 | main/wrf_SST_ESMF.exe. This program is a sample coupled application in |
---|
28 | which WRF is coupled to a very simple "data-ocean" component named SST via |
---|
29 | a very simple coupler. While this is a functional example of coupling WRF |
---|
30 | to another ESMF component, it should be considered *HIGHLY EXPERIMENTAL*. |
---|
31 | The implementation is quite primitive and has severe limitations. |
---|
32 | Most important, it is only possible to couple with another component that |
---|
33 | uses the exact same grid as WRF due to limitations of ESMF at the time this |
---|
34 | work was done. Also, the ESMF component only works with the DM-Parallel RSL |
---|
35 | build and has only been tested on AIX. These and a large number of other |
---|
36 | issues are described in external/io_esmf/TODO.list. |
---|
37 | |
---|
38 | Since external/io_esmf is an implementation of the WRF I/O and coupling |
---|
39 | API (WRF IOAPI), ESMF coupling can be controlled by the user in the same |
---|
40 | manner as other WRF I/O. Specifically, contents of ESMF import and export |
---|
41 | states are defined in the Registry (see Registry.EM_SST for example) and |
---|
42 | timing of coupling is defined in namelist.input. In the case of the WRF-SST |
---|
43 | coupling example, the SST component simply reads SST values stored in a file |
---|
44 | and sends it to WRF. Since the SST component also uses the WRF IOAPI and |
---|
45 | the format and metadata of SST data files is compatible with the WRF IOAPI, |
---|
46 | it is possible to switch from coupled operation to stand-alone operation (in |
---|
47 | which WRF reads the SST data directly via auxinput5), simply by changing |
---|
48 | the io_form in the namelist. |
---|
49 | |
---|
50 | This is a work-in-progress! |
---|
51 | |
---|