ESCOMP / MOM_interface

CESM interface to MOM Ocean Model
5 stars 18 forks source link

check_inputdata #89

Open mnlevy1981 opened 3 years ago

mnlevy1981 commented 3 years ago

I'm not sure if this belongs here or in NCAR/MOM6 (or maybe in ESMCI/cime?), but I tried to port my MOM6+MARBL branch to izumi and forgot to copy my inputdata files over -- everything is stashed in /glade/work/mlevy until I finish testing and we decide on a final fileset.

Anyway, I didn't realize I had forgotten to copy these files over, and case.submit didn't complain about this missing files... instead, it started the run and hung during init. Looking at the logs, it crashed when calling MOM_temp_salt_initialize_from_Z() so it didn't even try to read the non-existent files (which leads to a question unrelated to this particular issue, but does CESM+MOM run on izumi yet?).

edit to add: the crash in MOM_temp_salt_initialize_from_Z() comes from a sandbox based on cesm2_3_alpha02d using the intel compiler; when I tried the nag compiler I got build errors (in FMS, I believe)

mnlevy1981 commented 3 years ago

Looking closer at the code, it seems like I need to update param_templates/input_data_list.yaml -- so at least I posted this issue in the right repository :) It looks like I need to do

    varname:
        $OCN_BGC_CONFIG != "None":
            $OCN_GRID == "tx0.66v1": [filename]

and then add additional $OCN_GRID == ... keys as we produce inputdata for other grids? Is there any consistency checks between what shows up in this yaml file and what appears in the parameters file?

mnlevy1981 commented 6 months ago

Could we add a flag to MOM_input.yaml to signify "this variable should be included in mom.input_data_list instead of using input_data_list.yaml? The current setup makes it pretty easy to either (a) add a new input file to MOM_input.yaml but forget to update the input data list, or (b) update MOM_input to use a newer version of a file, but forget to update the input data list so check_input_data continues to look for the older version.

Full disclosure: I'm moving MARBL datasets from my work directory to the input data repository, and I did both (a) and (b) in the last hour

mnlevy1981 commented 6 months ago

Alternatively, could we add a check somewhere in the process that warns if the files listed in Buildconf/mom.input_data_list don't match the files in CaseDocs/MOM_input?