[MITgcm-support] Bug in seaice code since checkpoint67s?

Martin Losch Martin.Losch at awi.de
Mon Oct 19 01:46:37 EDT 2020


Hi Christoph,
did you get anywhere with this? Between checkpoints 67r and s, this happened to pkg/seaice (according doc/tag-index):

o pkg/seaice:
  - Replace hard-coded minimum for DWATN by runtime parameter "SEAICEdWatMin":
    * allows to have zero drag by setting both SEAICEdWatMin and
      SEAICE_waterDrag to zero. Non-zero drag had been implemented because
      previous LSR solver could not handle zero entries on the main diagonal.
    * this fixes a bug (unexpected behavior) reported at MITgcm-support by
      Kaley Shrestha, but also allows to modify the somewhat arbitrary
      default minimum value of SEAICEdWatMin = 0.25 ;
    * freedrift code still requires non-zero drag coefficients,
      S/R SEAICE_CHECK catches this case.
o pkg/seaice:
  - Add new mechanical energy diagnostics ;
  - Move computation of stress diagnostics to seaice_dynsolver.F ; this change
    affects diagnostics SIpress, SItensil, SIpress, SIzeta, SIdelta, SIshear,
    because they are now filled after the current time step update, when they
    are actually available. Note: previously, for the first time step, these
    variables (and diagnostics) were not properly defined (or zero).

I guess the diagnostics part should not affect you, but changing DWATN may. Your crash in seaice_growth is probably only an indirect consequence. Can you try to revert this part of the code:
<https://github.com/MITgcm/MITgcm/commit/5867b94c2f580c6e279f189e3f0b20250ebd8014#diff-8ab9e567a535b5bfbce9f547b746ace3a0a35465d9a0e812ee8add896f07d9a0>, in particular the part after line 102 in seaice_oceandrag_coeffs.F?

Martin

> On 13. Oct 2020, at 17:11, Christoph Voelker <christoph.voelker at awi.de> wrote:
> 
> Dear all,
> 
> I think I have discovered a problem with the current seaice code. I try to run a global MITgcm setup with a salinity tracer contained in seaice. I do so by setting
> 
> #define ALLOW_SITRACER
> 
> in SEAICE_OPTIONS.h. Otherwise I have no changed seaice code in my code directory. I was able to execute the model then with the additional tracer in previous code versions, but since I recently updated my code I get an error message
> 
>     * 253 Invalid operation PROG=seaice_growth ELN=6491(4003ee940)
> 
> and the model crashes. I have tried to reproduce the error again with older code versions (to make sure that it is not something that is within my code directory), by checking out older code, then going through the canonical three steps in compilation, and running. I did this for checkpoints 67m and 67r without any problem, but when I switched to checkpoint67s I got the error message and crash again.
> 
> So it seems something has happened between checkpoint67r and 67s that makes the model to crash when you switch on the seaice-tracer code. I will try to understand that myself, but maybe some of you who know the code better than me can directly say what the problem could be..
> 
> Cheers, Christoph
> 
> PS: I actually stumbled across this because I have a code version (started by Razib Vhuiyan) that adds iron in dust as another tracer to seaice; originally I encountered the error with this code after updating and doing some other changes. So I first thought the problem would be on my side, but I think I can now exclude that, because I now tested without any code additions from my side.
> 
> -- 
> Christoph Voelker
> Alfred Wegener Institute
> Helmholtz Centre for Polar and Marine Research
> Am Handelshafen 12
> 27570 Bremerhaven, Germany
> e: Christoph.Voelker at awi.de
> t: +49 471 4831 1848
> 
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support



More information about the MITgcm-support mailing list