Correct, the ouputting can take place at different physics or dynamics stages. Furthermore,
in the case of .rh0, the outputting takes place at a unique stage for each different history
field. The output for each field is via calls to "outfld", hundreds of which are
sprinkled throughout the code (in dynamics as well as physics). For example, T, U, V, Q,
and PS are output via calls in the routine "diag_phys_writeout" of the module "cam_diagnostics.F90".