E3SM-Project / E3SM

Energy Exascale Earth System Model source code. NOTE: use "maint" branches for your work. Head of master is not validated.

Home Page:https://docs.e3sm.org/E3SM

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ne120pg2 run on pm-cpu failed on writing aerosol mass at specified levels to eam.h0

wlin7 opened this issue · comments

This occur at end of a month trying to write variables such as Mass_bc_850, Mass_bc_500 to eam.h0 file.
The error message is like

 FATAL ERROR: Aborting... An error occured, Writing variables (number of variables = 184) to file ...
 Non blocking write for variable (Mass_bc_850, varid=146) failed ....
 NetCDF: Numeric conversion not representable (err=-60).

Typically such numeric conversion error occur when the output field contains NaN values.

This issue currently only occur on pm-cpu with ne120pg2 run and with history_aerosols = .true. Same issue didn't exist on chrysalis, or pm-cpu at ne30pg2 resolution.

Further investigation found the 3D aerosol mass arrays are good. Only the vertically interpolated values to specified levels have NaN. It is further determined it is due to mismatch of ncol and pcols for arrays when calling vertinterp. For this reason, even although ne30pg2 run or ne120pg2 run on a machine didn't fail, the mismatch is expected to also result in corrupted values in the constant pressure level aerosol mass fields (in those cases, likely 0s or other random but not NaN values outside the array memory bound were used for interpolation)

The fix is forthcoming.

xref #5862 😳