In the microphysics driver 'core_atmosphere/physics/mpas_atmphys_driver_microphysics.F' the model level at 1km-AGL is calculated using the variable 'zp(k)', the height AGL of the model level. The following line occurs in two places:
zp(k) = z_p(i,k,j) - z_p(i,1,j)+0.5*dz_p(i,1,j) ! height AGL
The variable 'dz_p' (model layer thickness in meters) is hardwired to level 'k=1'. It seems this should be corrected to vary with each model level. That is:
zp(k) = z_p(i,k,j) - z_p(i,1,j)+0.5*dz_p(i,k,j) ! height AGL
zp(k) = z_p(i,k,j) - z_p(i,1,j)+0.5*dz_p(i,1,j) ! height AGL
The variable 'dz_p' (model layer thickness in meters) is hardwired to level 'k=1'. It seems this should be corrected to vary with each model level. That is:
zp(k) = z_p(i,k,j) - z_p(i,1,j)+0.5*dz_p(i,k,j) ! height AGL