extreme salinity values if ICE MODEL used in COAWST branch

Discussion about modeling ice with ROMS

Moderators: arango, robertson

Post Reply
Message
Author
c.drinkorn
Posts: 110
Joined: Thu Mar 08, 2018 2:47 am
Location: German Research Centre for Geosciences

extreme salinity values if ICE MODEL used in COAWST branch

#1 Unread post by c.drinkorn »

Hi,

I am trying to solve an issue with salinity in my COAWST branch. It only appears with the ICE MODEL switched on. I get extreme (negative) salinity values. This also causes ice_frazil to prompt a trouble message because gamma gets negative:
trouble in ice_frazil 316 197 31
0.927691919473818 -2326.46955514672 126.327296844467
32.1906706270487 -2.68731957340148 0.463583060465981
I assume the very large negative salinity is no good. I looked into ice_frazil and the only way gamma can go negative is negative salinities, it seems to me.
I couldn't figure where this comes from. It's troubling me to follow all the ways back and forth between bulk_flux and ice_thermo etc. I might need help of someone who is more familiar with this. :D

I'd appreciate any help!

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: extreme salinity values if ICE MODEL used in COAWST branch

#2 Unread post by kate »

I don't know where those salinities come from. The ice_frazil routine makes the coupled ice-ocean model more sensitive to some issues than the stand-alone ocean model. I know that ice_frazil complains when the level thickness Hz goes negative too. What I would do is add a check to diag.F to complain if salinity goes too low for whatever reason. The model used to blow up in rho_eos for negative salinities, but now there is a MAX operator there to prevent those blow-ups. You do know the i,j,k indices of the bad salt, so you might want to visualize what's going on to see where that is relative to land, rivers, boundaries, etc.

c.drinkorn
Posts: 110
Joined: Thu Mar 08, 2018 2:47 am
Location: German Research Centre for Geosciences

Re: extreme salinity values if ICE MODEL used in COAWST branch

#3 Unread post by c.drinkorn »

Hi Kate,

thanks for the suggestion on adding a bad salinity alarm to diag! I did so and could therefore make the model stop running already when salt goes negative. Looking at the fields in rst then made it obvious that something suddenly goes wrong with the atmosphere-ocean saltflux. After looking into bulk_flux forever trying to find the reason for this, I finally just replaced the routine by the one from your branch and suddenly the problem was gone. I compared the compiled routines and I think (hope!) I found the reason:
For the ICE_MODEL switched on, in your branch the absolute saltflux is first being calculated by subtracting rain from evaporation and multiplying it by the inverse of freshwater density (cff):

Code: Select all

stflx(i,j,isalt)=cff*(evap(i,j)-rain(i,j))
But before masking the field it is being transferred to a relative flux compared to the ice concentration:

Code: Select all

stflx(i,j,isalt) = (1.0_r8-ai(i,j,listp))*stflx(i,j,isalt)
Then masked and later on passed to the variable EminusP.
In the COAWST branch EminusP is calculated directly from evap and rain:

Code: Select all

EminusP(i,j)=cff*(evap(i,j)-rain(i,j))
and then masked. It is never transferred into a field relative to the ice concentration.
Not to be confused with evap which is being transferred to a relative field in both branches - however in your branch it is being done AFTER the calculation of stflx and in the COAWST branch BEFORE the calculation of EminusP. So in other words: EminusP in your branch is a totally relative field while in the COAWST branch it is only evaporation which is being set into relation to the ice concentration. This probably also explains why I had quite high positive values of saltflux into the ocean before and now mostly negative ones. :idea:
But I am not 100% sure. The most part of the ice model is still a mystery to me. So I'll leave it to experts to judge whether this could in fact have been the reason...
As far as I can foresee things for my model right now, when starting off with 50% ice concentration everywhere, the model neatly removes ice now where it shouldn't go and grows it to reasonable amounts where it should stabilize. I'm happy. :D

Post Reply