Skip to content

Rename ESMF_FractionMod to WRF_ESMF_FractionMod#1164

Merged
davegill merged 3 commits intowrf-model:release-v4.2from
davegill:test2
Apr 10, 2020
Merged

Rename ESMF_FractionMod to WRF_ESMF_FractionMod#1164
davegill merged 3 commits intowrf-model:release-v4.2from
davegill:test2

Conversation

@davegill
Copy link
Contributor

@davegill davegill commented Apr 9, 2020

TYPE: bug fix

KEYWORDS: ESMF, ESMF_FractionMod, WRF_ESMF_FractionMod

SOURCE: Milan Curcic (University of Miami)

DESCRIPTION OF CHANGES:

Problem and solution documented here.

Currently, it is not possible to build and link WRF with a chosen ESMF library due to the name
conflicts between WRF internal ESMF interfaces with the intended ESMF library. I faced this problem
while I was trying to compile WRF with the ESMF library during LILAC project development for coupling
WRF with CTSM. This is specifically important for users and groups who would like to couple WRF
with other models using ESMF infrastructure. This issue can be resolved by either updating WRF to
use the new ESMF time manager interface or renaming all of WRF's internal ESMF interfaces to avoid
name collisions when linking with the intended ESMF library.

ISSUE: Fixes #1065.

LIST OF MODIFIED FILES:
M external/esmf_time_f90/ESMF_Fraction.F90
M external/esmf_time_f90/ESMF_Mod.F90
M external/esmf_time_f90/ESMF_TimeInterval.F90
M external/esmf_time_f90/Meat.F90

TESTS CONDUCTED:

  1. Compiled in em_real mode.
    Tested using the program mentioned here.
  2. Jenkins all PASS
  3. This PR does not cause any conflicts for building CTSM code with WRF.

@davegill
Copy link
Contributor Author

davegill commented Apr 9, 2020

Just wanted a test

@davegill davegill closed this Apr 9, 2020
@davegill davegill reopened this Apr 10, 2020
@davegill davegill changed the title Test2 Rename ESMF_FractionMod to WRF_ESMF_FractionMod Apr 10, 2020
@davegill
Copy link
Contributor Author

@kkeene44
Kelly,
Please review this also.

  1. For standard WRF, this should not (and does not) cause any diffs (before vs after).
  2. The purpose of this PR is to have a clean ESMF interface. This code continues to build the CTSM code, which relies on that required clean ESMF interface.
  3. Additionally, another separate tester program validated the ESMF interface from WRF.
  4. And of course, reggie is just fine.

@davegill
Copy link
Contributor Author

@negin513 @milancurcic
Negin,
Thanks for getting back so quickly regarding your testing with the CTSM interface

@davegill
Copy link
Contributor Author

Jenkins:

Please find result of the WRF regression test cases in the attachment. This build is for Commit ID: c241a655524b7883d8947b9963ddeb469a36aaa7, requested by: davegill for PR: https://github.com/wrf-model/WRF/pull/1164. For any query please send e-mail to David Gill.

    Test Type              | Expected  | Received |  Failed
    = = = = = = = = = = = = = = = = = = = = = = = =  = = = =
    Number of Tests        : 18           18
    Number of Builds       : 47           47
    Number of Simulations  : 167           167        0
    Number of Comparisons  : 107           107        0

    Failed Simulations are: 
    None
    Which comparisons are not bit-for-bit: 
    None

@davegill davegill merged commit 7265c6e into wrf-model:release-v4.2 Apr 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants