I updated adj_low_res_nu for use with a generalized grid. It is not called from within advance_clubb_core or from within SILHS. It is not necessary to be generalized for tests within standalone CLUBB. However, it is necessary to generalize this code for use within host models, particularly for CAM and E3SM.
Added err_info type to CLUBB to extend old err_code integer flag CLUBB ticket #975
Created a new err_info type replacing the old err_code integer. It contains MPI rank and (OMP) chunk index so we can identify the specific process that caused an error. It also contains latitude and longitude so a person trying to debug a host model run can pinpoint the column that caused an error. It contains error headers that combine all the info into a string that can be printed when an error happens. And it comes with subroutines that handle initialization, value setting, and cleanup.
Host models will be modified accordingly.
Possible TODO: Implement a subroutine that identifies the index of the column with the error after the fact so we can have more specific info at the higher call levels by applying `where` to the err_code member array.
Added err_info type to CLUBB to extend old err_code integer flag CLUBB ticket #975
Created a new err_info type replacing the old err_code integer. It contains MPI rank and (OMP) chunk index so we can identify the specific process that caused an error. It also contains latitude and longitude so a person trying to debug a host model run can pinpoint the column that caused an error. It contains error headers that combine all the info into a string that can be printed when an error happens. And it comes with subroutines that handle initialization, value setting, and cleanup.
Host models will be modified accordingly.
Possible TODO: Implement a subroutine that identifies the index of the column with the error after the fact so we can have more specific info at the higher call levels by applying `where` to the err_code member array.