#2256 closed Defect (fixed)

Unphysical values of ice age in SI3.

Reported by: skeeley Owned by: clem
Priority: low Milestone:
Component: SI3 Version: release-4.0
Severity: minor Keywords: ice, age
Cc:

Description

Context

Ice age field in SI3 is producing NaN after some time.

Analysis

We suspect this may be similar to the problem seen in LIM3 in ticket #1508. Before the change the limthd.F90 had

      oa_i(:,:,:) = oa_i(:,:,:) + a_i(:,:,:) * rdt_ice /rday

which has changed to:

      DO jl  = 1, jpl
         DO jj = 1, jpj
            DO ji = 1, jpi
               rswitch = MAX( 0._wp , SIGN( 1._wp, a_i_b(ji,jj,jl) - epsi10 ) )
               oa_i(ji,jj,jl) = rswitch * oa_i(ji,jj,jl) * a_i(ji,jj,jl) / MAX( a_i_b(ji,jj,jl), epsi10 )
            END DO
         END DO
      END DO

but as far as we can see this change (and other changes in rev 5202) never made it to SI3.

Recommendation

Do the changes from LIM3 need to be propagated in SI3 or are we missing something?

Commit History (2)

ChangesetAuthorTimeChangeLog
10786clem2019-03-20T19:59:24+01:00

fix tickets #2256 and #2257

10785clem2019-03-20T19:58:40+01:00

fix tickets #2256 and #2257

Attachments (4)

icewri.F90 (17.3 KB) - added by clem 17 months ago.
icethd.F90 (33.9 KB) - added by clem 17 months ago.
icedyn_adv_umx.F90 (69.1 KB) - added by clem 17 months ago.
ice1d.F90 (14.8 KB) - added by clem 17 months ago.

Download all attachments as: .zip

Change History (11)

comment:1 Changed 17 months ago by clem

Ice age is a bit tricky.
I had to change a couple of routines to make it work (I think). The main issue comes from the advection scheme Ultimate-Macho which produces abnormal values that propagate into the domain. This is due to the definition of the ice age that we chose. It is surface based: o_i * a_i and not volume based: o_i * v_i. It seems that the other advection scheme available in the code (Prather) is not impacted and works fine.
So, I cheated a bit but with the new routines (attached) you should be able to have an OK ice age (at least compared to what Prather is doing).

Note: ice age is just a diagnostic that has no impact on the simulations, so I removed its calculation if the output is not requested.

Changed 17 months ago by clem

Changed 17 months ago by clem

Changed 17 months ago by clem

Changed 17 months ago by clem

comment:2 Changed 17 months ago by skeeley

Thanks Clem.
Will get testing the code on Monday and will keep you posted.

comment:3 Changed 17 months ago by skeeley

Seems to be working - now getting physical values for ice age after 10 months of a run.
If we switch ice age off in the io we are still writing a physical (but I guess meaningless) value of ice age into the restart.
Thanks for all your help with this!

comment:4 Changed 17 months ago by clevy

  • Owner changed from systeam to clem
  • Status changed from new to assigned

comment:5 Changed 17 months ago by clem

In 10785:

fix tickets #2256 and #2257

comment:6 Changed 17 months ago by clem

In 10786:

fix tickets #2256 and #2257

comment:7 Changed 13 months ago by clem

  • Resolution set to fixed
  • Status changed from assigned to closed
Note: See TracTickets for help on using tickets.