165 |
|
|
166 |
C- enthalpy of new ice to form : |
C- enthalpy of new ice to form : |
167 |
IF ( iceFrac.LE.0. _d 0 ) THEN |
IF ( iceFrac.LE.0. _d 0 ) THEN |
168 |
qicen(1)= -cpwater*Tmlt1 |
qicen(1)= -cpWater*Tmlt1 |
169 |
& + cpice *(Tmlt1-Tf) + Lfresh*(1. _d 0-Tmlt1/Tf) |
& + cpIce *(Tmlt1-Tf) + Lfresh*(1. _d 0-Tmlt1/Tf) |
170 |
qicen(2)= -cpice *Tf + Lfresh |
qicen(2)= -cpIce *Tf + Lfresh |
171 |
ENDIF |
ENDIF |
172 |
qicAv = rhoi*(qicen(1)+qicen(2))*0.5 _d 0 |
qicAv = rhoi*(qicen(1)+qicen(2))*0.5 _d 0 |
173 |
newIce = esurp*deltaTice/qicAv |
newIce = esurp*deltaTice/qicAv |
174 |
|
|
175 |
IF (icFrac(i,j).EQ.0. _d 0) THEN |
IF (icFrac(i,j).EQ.0. _d 0) THEN |
176 |
c IF (newIce.GE.himin*iceMaskmax) THEN |
c IF (newIce.GE.hIceMin*iceMaskMax) THEN |
177 |
C- jmc: above is the original version, but below seems more logical: |
C- jmc: above is the original version, but below seems more logical: |
178 |
IF (newIce.GE.himin0*iceMaskmin) THEN |
IF (newIce.GE.hThinIce*iceMaskMin) THEN |
179 |
C- if there is no ice in grid and enough ice to form: |
C- if there is no ice in grid and enough ice to form: |
180 |
iceThick = MAX(himin0,newIce/iceMaskmax) |
iceThick = MAX(hThinIce,newIce/iceMaskMax) |
181 |
newIceFrac = MIN(newIce/himin0,iceMaskmax) |
newIceFrac = MIN(newIce/hThinIce,iceMaskMax) |
182 |
iceFrac = newIceFrac |
iceFrac = newIceFrac |
183 |
sst=Tf |
sst=Tf |
184 |
ENDIF |
ENDIF |
185 |
ELSE |
ELSE |
186 |
C- if there is already some ice |
C- if there is already some ice |
187 |
newIceFrac=MIN(newIce/iceThick,iceMaskmax-icFrac(i,j)) |
newIceFrac=MIN(newIce/iceThick,iceMaskMax-icFrac(i,j)) |
188 |
iceFrac = icFrac(i,j) + newIceFrac |
iceFrac = icFrac(i,j) + newIceFrac |
189 |
C- spread snow out over ice |
C- spread snow out over ice |
190 |
snowThick = snowThick*icFrac(i,j)/iceFrac |
snowThick = snowThick*icFrac(i,j)/iceFrac |
193 |
C- oceanic fluxes: |
C- oceanic fluxes: |
194 |
flx2oc(i,j)= iceThick*newIceFrac*qicAv/deltaTice |
flx2oc(i,j)= iceThick*newIceFrac*qicAv/deltaTice |
195 |
frw2oc(i,j)=-(rhoi*iceThick)*newIceFrac/deltaTice |
frw2oc(i,j)=-(rhoi*iceThick)*newIceFrac/deltaTice |
196 |
fsalt(i,j)= -(rhoi*iceThick*saltice)*newIceFrac/deltaTice |
fsalt(i,j)= -(rhoi*iceThick*saltIce)*newIceFrac/deltaTice |
197 |
|
|
198 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
199 |
#ifdef ALLOW_DBUG_THSICE |
#ifdef ALLOW_DBUG_THSICE |