NCAR / NCAR/DART

note on inflation, allow_missining_in_clm, and groups

Open
#277 13 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

IO
Dominant language
Fortran
Stars
263
Forks
182
Avg merge
11d 12h
Merged PRs (30d)
7

Description

This is note about missing values.
allow_missing_in_clm is in the inflation handle.

filter:

1649 do j = 1, ens_handle%my_num_vars
1650      call inflate_ens(inflate, ens_handle%copies(grp_bot:grp_top, j), &
1651      ens_handle%copies(ENS_MEAN_COPY, j), ens_handle%copies(inflate_copy, j), 0.0_r8, &
1652       ens_handle%copies(SPARE_PRIOR_SPREAD, j), ens_handle%copies(ENS_SD_COPY, j)) 
1653 end do 

inflate_ens:

532 ! it's possible to have MISSING_R8s in the state vector now.  
533 ! so we need to be able to avoid changing MISSING_R8 values by inflation here.
534 if (inflate_handle%allow_missing_in_clm) then
535   if (any(ens == MISSING_R8)) return
endif

So if some groups have missing values, but some don't, you will apply inflation to some groups but not others.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the inflate_ens entry point and the shown filter loop, then trace how inflate_handle%allow_missing_in_clm is applied to ens_handle groups. Determine the intended behavior when missing values occur in only some groups, and verify that inflation handling is consistent across those groups.

Written by the indexing model from the issue text.

Assessment

Tech stack
fortran
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.