Latent heat bug in COARE atm/ocn flux routine for CESM
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 68/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Quiet
- Tech stack
- fortran
- Domain
- backend
Research direction
Start in cesm/flux_atmocn/flux_atmocn_COARE_mod.F90, reading the conversion at line 189 alongside the temperature-adjusted Le assignment near line 292 and latent heat calculation near line 402. Trace how lat and evap leave COARE, then verify the conversion consistently represents the evaporation flux predicted by COARE using one of the fixes described in the issue.
Written by the indexing model from the issue text.
Description
In the CESM COARE atmosphere-ocean flux calculations, the surface latent heat flux is calculated like so:
hlb=-rhoa * Le * usr * qsr
With the Le variable representing the latent heat of vaporization, and the rest of the terms combining to be the surface evaporation (water vapor mass) flux. In COARE Le is the "constant" latent heat of vaporization with an applied ocean surface temperature adjustment:
Le = loc_latvap - .00237e6_R8 * (ts-273.16_R8)
where loc_latvap is the constant value, and ts is the ocean surface temperature. The latent heat flux (hlb) term is then passed out from COARE, and converted back into an evaporation flux for use by CESM. However, that conversion doesn't use the the temperature-adjusted Le variable, but instead the constant value:
evap(n) = lat(n)/loc_latvap
where lat(n) is the same as hlb. This results in an Le/loc_latvap, or 1 - .00237e6_R8 * (ts-273.16_R8)/loc_latvap, bias in the evaporation flux to CESM relative to what COARE actually predicts.
The fix is either to just pass evap out directly from COARE, or simply use Le instead of loc_latvap in the lat->evap conversion.
Credit goes to Benjamin Barr for confirming the existence of the bug!
- Dominant language
- Fortran
- Stars
- 36
- Forks
- 106
- Avg merge
- 5d 15h
- Merged PRs (30d)
- 6
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ESCOMP/CMEPS
-
documentation
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 68/100
-
CESM only enhancement
Difficulty 5/5 Over a week Newbie friendliness 28/100
-
CESM only enhancement Responsibility: CTSM
-
Difficulty 4/5 3-5 days Newbie friendliness 38/100
Similar issues
-
bug clawsweeper:linked-pr-open clawsweeper:needs-live-repro clawsweeper:no-new-fix-pr impact:message-loss issue-rating: 🐚 platinum hermit P2 regression
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
AXERA-TECH/ax-llm#77 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
games-on-whales/wolf#509 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100