NOAA-EMC / fv3atm

Other
29 stars 154 forks source link

Inline post does not send 4D biomass burning (EBB) variable to UPP #846

Closed SamuelTrahanNOAA closed 1 month ago

SamuelTrahanNOAA commented 3 months ago

Description

The newest version of UPP has a 4D variable (in module VRBLS4D) called "EBB" which replaces its prior 2D variable (in module VRBLS2D). FV3's inline post (io/post_fv3.F90) tries to access the 2D array, which no longer exist. This must be corrected before the UPP hash can update.

It appears EBB(:,:,:,1) comes from the ebu_smoke variable. Only the first index (:,:,:,1) of the array is ever used. This change came from @EricJames-NOAA. Nobody made the corresponding change to the inline post. Indeed, they couldn't since there is a library version incompatibility between UPP and ufs-weather-model (see https://github.com/ufs-community/ufs-weather-model/issues/2322).

I think the solution is to send ebu_smoke into ebb(:,:,:,1) in post_fv3.F90.

To Reproduce:

What compilers/machines are you seeing this with? Give explicit steps to reproduce the behavior.

  1. Update the upp submodule to the head of UPP's develop branch.
  2. Update the ufs-weather-model to use the upp-addon-env Spack Stack.
  3. Try to compile with the Intel compiler on Hera. (Spack Stack has been updated there.)
  4. Witness the errors in accessing the EBB variable in post_fv3.F90

Additional context

This problem came up when trying to add new fields to the inline post. To do that, we must update the UPP submodule hash to the head of develop. After I got past the library incompatibility, I ran into this EBB trouble.

Output

N/A

Testing:

No code changes yet.

Dependent PRs:

N/A

SamuelTrahanNOAA commented 3 months ago

Pinging @WenMeng-NOAA and @DusanJovic-NOAA