Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 18 additions & 15 deletions src/physics/cam/cam_diagnostics.F90
Original file line number Diff line number Diff line change
Expand Up @@ -263,7 +263,10 @@ subroutine diag_init_dry(pbuf2d)
call addfld ('OMEGA850', horiz_only, 'A', 'Pa/s', 'Vertical velocity at 850 mbar pressure surface')
call addfld ('OMEGA500', horiz_only, 'A', 'Pa/s', 'Vertical velocity at 500 mbar pressure surface')

call addfld ('PSL', horiz_only, 'A', 'Pa','Sea level pressure')
call addfld ('PSL', horiz_only, 'A', 'Pa', 'Sea level pressure')
call addfld ('PMID', (/ 'lev' /), 'A', 'Pa', 'Pressure at layer midpoints')
call addfld ('PINT', (/ 'ilev' /), 'A', 'Pa', 'Pressure at layer interfaces')
call addfld ('PDEL', (/ 'lev' /), 'A', 'Pa', 'Pressure difference between levels')

call addfld ('T1000', horiz_only, 'A', 'K','Temperature at 1000 mbar pressure surface')
call addfld ('T925', horiz_only, 'A', 'K','Temperature at 925 mbar pressure surface')
Expand Down Expand Up @@ -325,6 +328,16 @@ subroutine diag_init_dry(pbuf2d)
call add_default ('PSL ', 1, ' ')
end if

if (dycore_is('SE')) then
call add_default ('PMID', 1, ' ')
end if

if (dycore_is('MPAS')) then
call add_default ('PMID', 1, ' ')
call add_default ('PINT', 1, ' ')
call add_default ('PDEL', 1, ' ')
end if

if (history_vdiag) then
call add_default ('U200', 2, ' ')
call add_default ('V200', 2, ' ')
Expand Down Expand Up @@ -461,10 +474,7 @@ subroutine diag_init_moist(pbuf2d)
call addfld ('QBOT', horiz_only, 'A', 'kg/kg','Lowest model level water vapor mixing ratio')

call addfld ('PSDRY', horiz_only, 'A', 'Pa', 'Dry surface pressure')
call addfld ('PMID', (/ 'lev' /), 'A', 'Pa', 'Pressure at layer midpoints')
call addfld ('PINT', (/ 'ilev' /), 'A', 'Pa', 'Pressure at layer interfaces')
call addfld ('PDELDRY', (/ 'lev' /), 'A', 'Pa', 'Dry pressure difference between levels')
call addfld ('PDEL', (/ 'lev' /), 'A', 'Pa', 'Pressure difference between levels')

! outfld calls in diag_conv

Expand Down Expand Up @@ -603,13 +613,6 @@ subroutine diag_init_moist(pbuf2d)

if (dycore_is('SE')) then
call add_default ('PSDRY', 1, ' ')
call add_default ('PMID', 1, ' ')
end if

if (dycore_is('MPAS')) then
call add_default ('PINT', 1, ' ')
call add_default ('PMID', 1, ' ')
call add_default ('PDEL', 1, ' ')
end if

if (history_eddy) then
Expand Down Expand Up @@ -1067,6 +1070,10 @@ subroutine diag_phys_writeout_dry(state, pbuf, p_surf_t)
call cpslec(ncol, state%pmid, state%phis, state%ps, state%t, psl, gravit, rair)
call outfld('PSL', psl, pcols, lchnk)

call outfld('PMID', state%pmid, pcols, lchnk)
call outfld('PINT', state%pint, pcols, lchnk)
call outfld('PDEL', state%pdel, pcols, lchnk)

! Output T,u,v fields on pressure surfaces
!
if (hist_fld_active('T850')) then
Expand Down Expand Up @@ -1282,11 +1289,7 @@ subroutine diag_phys_writeout_moist(state, pbuf, p_surf_t)
call constituent_burden_comp(state)

call outfld('PSDRY', state%psdry, pcols, lchnk)
call outfld('PMID', state%pmid, pcols, lchnk)
call outfld('PINT', state%pint, pcols, lchnk)
call outfld('PDELDRY', state%pdeldry, pcols, lchnk)
call outfld('PDEL', state%pdel, pcols, lchnk)


ftem(:ncol,:) = state%u(:ncol,:)*state%q(:ncol,:,ixq)
call outfld ('UQ ',ftem ,pcols ,lchnk )
Expand Down