HYCOM writes out the northward (actually y-ward) heat flux in ovrtn_out (a text file), which is calculated in overtn.F90.
The relatively new option 'mstrcr' can be used to write fields to the surface archive file. These can be any 2-d field on the p-grid. So far we have:
! --- 'mstrcr' = number of surface tracers
! --- 'strflg' = surface tracer flag (one per tracer, 701-799)
! --- 701: disp_ld
! --- 702: disp_qd
! --- 703: oneta
! --- 704: pbavg
! --- 705: hntide
! --- 706: pbavg_a
! --- 707: htide
! --- 708: ns_ssh
! --- 721: efold_cb
! --- 722: spdbot
! --- 723: spdtid
You could add heat budget fields, and if you do so please make a pull request to add them to the standard model code. At present these are always snapshots, but you could do time averaging as part of their calculation (i.e. replace snapshots with the time mean since last write).
The 3-D archm files a for means over time. Once again there is an option to add new tracers:
! --- 'mtracr' = number of diagnostic tracers
! --- 'dtrflg' = diagnostic tracer flag (one per tracer, 801-899)
! --- 801: change in layer thickness due to hybgen (m/day)
! --- 802: change in layer temperature due to hybgen (degC/day)
! --- 803: change in layer salinity due to hybgen (psu/day)
In this case you would add layer by layer heat terms to the archv and archm files and calculate the vertical means off-line. Note that this is only accurate for p-grid fields because we don't write out the u and v grid dp means.
Alan.