Skip to content

Comments

i.evapo.mh: fix radiation conversion factor#5600

Merged
petrasovaa merged 1 commit intoOSGeo:mainfrom
jayneel-shah18:i_evapo_mh_fix
Apr 29, 2025
Merged

i.evapo.mh: fix radiation conversion factor#5600
petrasovaa merged 1 commit intoOSGeo:mainfrom
jayneel-shah18:i_evapo_mh_fix

Conversation

@jayneel-shah18
Copy link
Contributor

This PR fixes an incorrect radiation conversion applied in the evapotranspiration calculations of the i.evapo.mh module.

Previously, the radiation input (ra) was multiplied by 86.4, incorrectly boosting the energy input and resulting in overestimated evapotranspiration values.

This PR corrects the unit conversion:

  • Changes ra = ra * (24.0 * 60.0 * 60.0 / 1000.0); to ra = ra * (24.0 * 60.0 * 60.0 / 1000000.0);
  • This matches the correct SI conversion where 1 W/m² = 0.0864 MJ/m²/day

The correction is applied consistently across the following functions:

  • mh_eto()
  • mh_original()
  • mh_samani()

Fixes #5520

@github-actions github-actions bot added C Related code is in C module imagery labels Apr 27, 2025
@nilason
Copy link
Contributor

nilason commented Apr 27, 2025

The initial value of ra comes from the option netradiation_diurnal which is described as:

Name of input diurnal net radiation raster map [W/m2/d]

that is in watts, but according to DROOGERS & ALLEN 2002:36 it should be given in megajoule (MJ m−2 d−1). So this PR should be good as far as I see it.

cc @YannChemin

@nilason
Copy link
Contributor

nilason commented Apr 27, 2025

Possibly candidate for backport?

@neteler neteler added the backport to 8.4 PR needs to be backported to release branch 8.4 label Apr 29, 2025
@petrasovaa petrasovaa merged commit 4807e82 into OSGeo:main Apr 29, 2025
28 checks passed
@github-actions github-actions bot added this to the 8.5.0 milestone Apr 29, 2025
@jayneel-shah18 jayneel-shah18 deleted the i_evapo_mh_fix branch April 29, 2025 19:11
neteler pushed a commit that referenced this pull request Oct 6, 2025
Previously, the radiation input (ra) was multiplied by 86.4, incorrectly boosting the energy input and resulting in overestimated evapotranspiration values.

This PR corrects the unit conversion:

Changes ra = ra * (24.0 * 60.0 * 60.0 / 1000.0); to ra = ra * (24.0 * 60.0 * 60.0 / 1000000.0);
This matches the correct SI conversion where 1 W/m² = 0.0864 MJ/m²/day
@neteler neteler removed the backport to 8.4 PR needs to be backported to release branch 8.4 label Oct 6, 2025
@neteler
Copy link
Member

neteler commented Oct 6, 2025

Possibly candidate for backport?

Done.

@neteler neteler modified the milestones: 8.5.0, 8.4.2 Oct 6, 2025
@wenzeslaus wenzeslaus added the errata Include in errata (fixes wrongly computed results) label Nov 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

C Related code is in C errata Include in errata (fixes wrongly computed results) imagery module

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] i.evapo.mh: W/m² incorrectly converted to kJ instead of MJ

5 participants