New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
#1602 (Missing heat flux from Icebergs) – NEMO

Opened 9 years ago

Closed 5 years ago

#1602 closed Defect (fixed)

Missing heat flux from Icebergs

Reported by: timgraham Owned by: davestorkey
Priority: low Milestone:
Component: OCE Version: trunk
Severity: minor Keywords:
Cc: timgraham

Description (last modified by nicolasmartin)

We noticed earlier this week that the heat flux term from iceberg calving (ICB) is missing in the model meaning that this part of the code is not conservative. Based on the comment in the code (see below) Gurvan is aware of this but I'm raising the ticket to bring it to the attention of the rest of us in the systems team.

! now use melt and associated heat flux in ocean (or not)
!
      IF(.NOT. ln_passive_mode ) THEN
         emp (:,:) = emp (:,:) - berg_grid%floating_melt(:,:)
!!       qns (:,:) = qns (:,:) + berg_grid%calving_hflx (:,:)  !!gm heat flux not yet properly coded ==>> need it, SOLVE that!
      ENDIF

Commit History (1)

ChangesetAuthorTimeChangeLog
9990davestorkey2018-07-24T14:08:14+02:00

Add latent heat of melting to iceberg-ocean heat flux. Ticket #1602.

Change History (6)

comment:1 Changed 7 years ago by clevy

  • Cc timgraham added
  • Owner changed from nemo to timgraham
  • Status changed from new to assigned

comment:2 Changed 7 years ago by nicolasmartin

  • Description modified (diff)

comment:3 Changed 7 years ago by timgraham

  • Owner changed from timgraham to davestorkey

In local code we have a modification to include the latent heat flux term but not to add the heat content from icebergs. I suggest that we add the term for latent heat flux to the nemo_v4_6_STABLE branch and revisit the heat content term in the trunk ahead of the next release.

I'll pass this ticket onto Dave Storkey as he has the code for the latent heat flux term.

comment:4 Changed 6 years ago by davestorkey

In 9990:

Error: Failed to load processor CommitTicketReference
No macro or processor named 'CommitTicketReference' found

comment:5 Changed 6 years ago by davestorkey

  • Severity set to minor
  • Version changed from v3.6 to trunk

I didn't get round to putting this into NEMO 3.6_stable, but I am adding it to NEMO 4 beta.

The new code adds the heat content flux and latent heat flux associated with iceberg melting to the "qns" heat flux into the ocean in icb_thm. The two heat fluxes are also available as diagnostics (berg_melt_hcflx and berg_melt_qlat) and are taken into account in the heat_to_ocean_net budget variable in icb_dia. NB. The heat content of the calving mass is currently hardcoded to zero in the code (in icb_stp), which means that the heat content of icebergs is zero and the heat content flux to the ocean associated with melting is also zero. However I have left this term in (with a comment in the code) ready for when someone decides to fix it.

I have tested the change in a one-day integration of ORCA025 starting from a spun up icebergs distribution and checked that the latent heat flux and associated change to the SST look sensible. This change does not break any previously-working SETTE tests at the head of the trunk. (At the time of writing the AGRIF_DEMO tests aren't working and VORTEX fails restartability). Andrew Coward has reviewed the change.

Change committed to the trunk at rev 9990

comment:6 Changed 5 years ago by mathiot

  • Resolution set to fixed
  • Status changed from assigned to closed

Summary of ticket discussion.

  • Latent heat from iceberg has been added.
  • Heat content flux from the iceberg available but always 0 (until such a time as this is fixed)

Fix by Dave in revision r9990

Precisions from the code:

!! NB. The src_calving_hflx field is currently hardwired to zero in icb_stp, which means that the 
!!     heat density of the icebergs is zero and the heat content flux to the ocean from iceberg 
!!     melting is always zero. Leaving the term in the code until such a time as this is fixed. DS.
Note: See TracTickets for help on using tickets.