I am trying to confirm that I’m not making a mistake when accounting for the sea ice related heat fluxes, mh_flux and liceht, in my OM2 mixed layer heat budgets. These diagnostics are somewhat difficult to track through the code since they have different names in CICE and in the coupler - so if someone who knows more about sea ice in OM2 than me can help I’d appreciate some guidance!
Specifically, I can see that the ice->ocean volume fluxes are included within MOM5’s pme diagnostic, and hence the heat flux into the ocean associated with these volume fluxes (assumed to enter the ocean at the surface ocean temperature) are included in the sfc_hflux_pme heat budget term. Hence, mh_flux and liceht should only contain heat fluxes that are not volume flux related (e.g. they should account only for differences between the melt water and surface ocean temperature, as well as other processes that I don’t understand). Can someone confirm whether that is the case or point me at somewhere which documents these terms from the CICE side in more detail?
Hi @rmholmes I can probably make a quick attempt here with a bit more detail just looking at some basic issues. We can get into the CICE code if we need to.
The liceht code is for the access-cm2 model it has been set to zero for the access-om2 code so it shouldn’t be a factor in your calculations it represents the iceberg flux which we distributed away from the coast in the ACCESS-cm2 code and accounted for the latent heat of melting, in ACCESS-OM2 there is the calv flux term which represented solid runoff but was just added to the liquid runoff and no latent heat was accounted for.
The mh_flux term can be traced back to the “iohtflx” term in the coupler and then to the “fhocn” term in the CICE code.
There are some old out of date comment statements referencing an fhnet field but that is no longer used in the coupler.
So tracking things further following your email and notes:
In the namcouplemh_flux comes from htflx_io (and wfiform comes from form_io).
Then in the CICE coupling codecpl_interface.f90 these come from iohtflx and ioform. These are described in cpl_arrays_setup.f90.
In turn, in cpl_forcing_handler.f90, iohtflx and ioform come from tiohtflx and tioform, which themselves come from fhocn and fresh respectively.
fhocn is everywhere in the CICE code, so it’s hard to track and I’m not really sure how to proceed. However, from the CICE model documentation we have “The portion of the melting potential actually used to melt ice is returned to the coupler in Fhocn” - which seems to support what I said above that it doesn’t include volume flux-related heat fluxes, only including “extra” heat required to melt sea ice. The comment here also seems to support that. I guess maybe that’s good enough to answer my question…
HI Ryan thats a pretty good description of how the variables change names through the namcouple, cpl_arrays_setup.F90, cpl_forcing_handler.F90 subroutines. As is pointed out in the comment statements in cpl_arrays_set_up and in the CICE manual Fhocn is only the part of the heat flux that is used to melt the ice. The total flux is called ‘frzmlt’ in CICE and is not passed to the ocean model. I guess its partly confusing to the ocean community, its historic because the way frazil term of new ice formation is handled in CICE and added in later to the budget depending on which thermodynamic ice scheme is used.
Thanks @sofarrell . Sorry I meant to say that the ocean also has the frazil_3d heat flux (although I guess that’s computed internally in MOM???), but that’s definitely not related to volume fluxes so I didn’t mention it.
yes I guess you are using are already using the frazil_3d heat in the calculation that you are trying to do but are missing the calculation from the congelation ice growth from the ice model side.