Skip to content

Feature request: more explanatory error message during failure of pmo for MOM6 with clamping #1086

@enrico-mi

Description

@enrico-mi

Use case

Providing a more detailed explanation for failure when model_state_variables in model_nml in input.nml for MOM6 are not properly declared.

Current error message when using the old 3 fields instead of the new 5 fields:

forrtl: severe (59): list-directed I/O syntax error, unit -5, file Internal List-Directed Read
Image              PC                Routine            Line        Source             
perfect_model_obs  00000000005693BC  for_read_int_lis_     Unknown  Unknown
perfect_model_obs  000000000056893B  for_read_int_lis      Unknown  Unknown
perfect_model_obs  0000000000426DC6  Unknown               Unknown  Unknown
perfect_model_obs  00000000004455FA  Unknown               Unknown  Unknown
perfect_model_obs  00000000004BBF20  Unknown               Unknown  Unknown
perfect_model_obs  000000000041136D  Unknown               Unknown  Unknown
libc.so.6          000014B2590DAE6C  Unknown               Unknown  Unknown
libc.so.6          000014B2590DAF35  __libc_start_main     Unknown  Unknown
perfect_model_obs  0000000000411271  Unknown               Unknown  Unknown

input.nml model_state_variables:

   model_state_variables      = 'so ', 'QTY_SALINITY             ', 'UPDATE',
                                'thetao ', 'QTY_POTENTIAL_TEMPERATURE', 'UPDATE',

Example of old error message when using 5 fields instead of 3:

 ERROR FROM:
  routine: parse_variables
  message: Invalid update variable in &model_nml:model_state_variable - only UPD
 ATE or NO_COPY_BACK are supported
  message: ... Issue: so, QTY_SALINITY, NA
 
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 0 in communicator MPI COMM 3 DUP FROM 0
  Proc: [[59028,0],0]
  Errorcode: 99

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------

input.nml model_state_variables:

model_state_variables      = 'so ', 'QTY_SALINITY             ', 'NA', 'NA', 'UPDATE',
                             'thetao ', 'QTY_POTENTIAL_TEMPERATURE', 'NA', 'NA', 'UPDATE',

Is your feature request related to a problem?

It'd make it faster to identify the error on the user input side.

Describe your preferred solution

More explanatory error message

Describe any alternatives you have considered

Leaving it as is it's not the end of the world

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions