NCAR / DART

Data Assimilation Research Testbed
https://dart.ucar.edu/
Apache License 2.0
196 stars 145 forks source link

Check list of state variables for required ones #776

Open kdraeder opened 1 week ago

kdraeder commented 1 week ago

Description:

Users can specify in model_nml which variables should be in the state vector. They are currently free to leave out variables that are required for some calculations. Filter writes no useful message about this problem when it fails, which results in a long debugging process. This fix adds a function call after model_nml has been read and parsed to check whether required variables are in the state, and exit with a helpful message when one is missing.
The lists of required variables are different for cam-fv and cam-se, and may change in the future.

Fixes issue

662

Types of changes

Documentation changes needed?

Tests

I ran both cam-fv and cam-se using model_nml:state_variables which contained

  1. all required variables
  2. all except for PS
  3. all except for CLDICE (cam-se only; dry mass calculation)

Checklist for merging

Checklist for release

Testing Datasets