*IF DEF,S40_1A SLBICE1A.2 C ******************************COPYRIGHT****************************** GTS2F400.9073 C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved. GTS2F400.9074 C GTS2F400.9075 C Use, duplication or disclosure of this code is subject to the GTS2F400.9076 C restrictions as set forth in the contract. GTS2F400.9077 C GTS2F400.9078 C Meteorological Office GTS2F400.9079 C London Road GTS2F400.9080 C BRACKNELL GTS2F400.9081 C Berkshire UK GTS2F400.9082 C RG12 2SZ GTS2F400.9083 C GTS2F400.9084 C If no contract has been raised with this copy of the code, the use, GTS2F400.9085 C duplication or disclosure of it is strictly prohibited. Permission GTS2F400.9086 C to do so must first be obtained in writing from the Head of Numerical GTS2F400.9087 C Modelling at the above address. GTS2F400.9088 C ******************************COPYRIGHT****************************** GTS2F400.9089 C GTS2F400.9090 C*LL SLBICE1A.3 CLL SUBROUTINE SLABICE SLBICE1A.4 CLL ------------------ SLBICE1A.5 CLL SLBICE1A.6 CLL THIS ROUTINE IS FOR USE WITH THE 'SLAB' OCEAN MODEL ONLY. SLBICE1A.7 CLL FOR COUPLED OCEAN-ATMOSPHERE RUNS THE ROUTINE ICEFLOE SHOULD SLBICE1A.8 CLL BE USED. (OBVIOUSLY MUCH OF THE BASIC PHYSICS IS THE SAME.) SLBICE1A.9 CLL SLBICE1A.10 CLL THERMODYNAMIC SEA-ICE MODEL, BASED ON THE ZERO-LAYER MODEL OF SLBICE1A.11 CLL SEMTNER, A.J. (1976) : J.PHYS.OCEANOGR., 6, 379-389, SLBICE1A.12 CLL MODIFIED ALONG THE LINES SUGGESTED BY SLBICE1A.13 CLL GORDON, C., AND BOTTOMLEY, M. (1984) : DCTN 1. SLBICE1A.14 CLL INCLUDES A REPRESENTATION OF LEADS (WITHOUT DYNAMICS) DUE TO SLBICE1A.15 CLL HIBLER, W.D. (1979) : J.PHYS.OCEANOGR., 9, 815-846. SLBICE1A.16 CLL SLBICE1A.17 CLL THIS ROUTINE FORMS PART OF SYSTEM COMPONENT P40. SLBICE1A.18 CLL IT CAN BE COMPILED BY CFT77, BUT DOES NOT CONFORM TO ANSI SLBICE1A.19 CLL FORTRAN77 STANDARDS, BECAUSE OF THE INLINE COMMENTS SJT1F304.399 CLL AND USE OF ENDDO. SJT1F304.400 CLL IT ADHERES TO THE STANDARDS OF DOCUMENTATION PAPER 3, VERSION 5. SLBICE1A.21 CLL SLBICE1A.24 CLL ALL QUANTITIES IN THIS ROUTINE ARE IN S.I. UNITS UNLESS SLBICE1A.25 CLL OTHERWISE STATED. SLBICE1A.26 CLL SLBICE1A.27 CLL CALLED BY: SLABCNTL SLBICE1A.28 CLL SLBICE1A.29 CLL WRITTEN BY D.L.ROBERTS (12/11/90) SLBICE1A.30 CLL MODIFIED BY A.B.KEEN (02/02/93) SLBICE1A.31 CLL MODIFIED BY C.A.SENIOR (22/03/93) SJT1F304.401 CLL MODIFIED BY A.B.KEEN (05/08/93) (WHITE ICE CODE CORRECTED) SJT1F304.402 CLL MODIFIED BY C.A.SENIOR (25/02/94) SJT1F304.403 CLL MODIFIED BY J.F.THOMSON (26/05/94) SJT1F304.404 CLL Version Description of change SJC1F400.81 CLL 4.0 Increased small value used as minimum ice depth to SJC1F400.82 CLL prevent rounding errors to match that used in the SJC1F400.83 CLL coupled model and correct code for dynamic sea ice. SJC1F400.84 CLL J.F.Crossley SJC1F400.85 CLL VERSION NUMBER 1.1 SLBICE1A.32 CLL REVIEWER: W.INGRAM (01/03/93) SLBICE1A.33 CLL DOCUMENTATION: UM DOCUMENTATION PAPER 58; THE SLAB OCEAN MODEL SLBICE1A.34 CLL SLBICE1A.35 CLLEND--------------------------------------------------------------- SLBICE1A.36 C*L SLBICE1A.37SUBROUTINE SLABICE(ICY, 2SJT1F304.405 + LDSFLUX, SJT1F304.406 + NEWICE, SJT1F304.407 + OIFLUX, SJT1F304.408 + ATMSFLUX, SJT1F304.409 + ADJHCONV, SJT1F304.410 + HICE, SJT1F304.411 + HSNOW, SJT1F304.412 + SNOWRATE, SJT1F304.413 + SUBLIMZ, SJT1F304.414 + AICE, SJT1F304.415 + CARYHEAT, SJT1F304.416 + TOPMELTZ, SJT1F304.417 + BOTMELTZ, SJT1F304.418 + SLABTEMP, SJT1F304.419 + L1,L2,DT,DZ1,H0, SJT1F304.420 + L_THERM,L_IDYN,L_IDRIF, SJT1F304.421 + AICEMAX, SJT1F304.422 + AICEMIN, SJT1F304.423 + TCLIMC, SJT1F304.424 + HCLIM, SJT1F304.425 + CALIB) SJT1F304.426 C SLBICE1A.44 INTEGER L1, ! IN SIZE OF DATA VECTORS SLBICE1A.45 + L2 ! IN AMOUNT OF DATA TO BE PROCESSED SLBICE1A.46 C SLBICE1A.47 REAL ATMSFLUX(L1) ! IN NET HEAT FLUX OVER LEADS (W M-2) SJT1F304.427 + ! (FLUX INTO SLAB IN NEW THERMODYNAMICS) SJT1F304.428 +,ADJHCONV(L1) ! IN ADJUSTED HEAT CONVERGENCE W M-2 SJT1F304.429 + ! INOUT IF CALIBRATION SJT1F304.430 +,LDSFLUX(L1) ! IN NET HEAT FLUX OVER LEADS INTO ICE SJT1F304.431 + ! (NEW THERMODYNAMICS) SJT1F304.432 +,OIFLUX(L1) ! IN OCEAN TO ICE HEAT FLUX SJT1F304.433 + ! (NEW THERMODYNAMICS) SJT1F304.434 +,SNOWRATE(L1) ! IN RATE OF SNOWFALL, IN KG M-2 S-1. SJT1F304.435 +,SUBLIMZ(L1) ! IN RATE OF SUBLIMATION, IN KG M-2 S-1. SJT1F304.436 +,TOPMELTZ(L1) ! IN RATE OF MELTING OF SNOW IN W M-2. SJT1F304.437 + ! (THIS CAN BE TRANSFERRED TO ICE.) SLBICE1A.53 +,BOTMELTZ(L1) ! IN DIFFUSIVE HEAT FLUX THROUGH ICE. IF SJT1F304.438 + ! THIS IS +VE, ICE MELTS AT THE BASE. SLBICE1A.55 + ! IF IT IS -VE, ICE ACCRETES THERE. SLBICE1A.56 +,CARYHEAT(L1) ! IN ZERO EXCEPT AT POINTS WHERE ICE IS SJT1F304.439 + ! ABOUT TO FORM, WHERE IT SHOULD BE THE SLBICE1A.58 + ! NEGATIVE HEAT FLUX USED TO CREATE THE ICE. SLBICE1A.59 +,TCLIMC(L1) ! IN CLIMATOLOGICAL SEA SURFACE TEMPS K SJT1F304.440 +,HCLIM(L1) ! IN CLIMATOLOGICAL SEA-ICE EXTENTS M SJT1F304.441 REAL DT ! IN TIMESTEP FOR UPDATING THE SLAB OCEAN. SJT1F304.442 +,DZ1 ! IN THICKNESS OF THE SLAB OCEAN IN METRES. SJT1F304.443 C SJT1F304.444 REAL SLBICE1A.63 + H0 ! IN MINIMUM LOCAL DEPTH OF NEWLY-FORMED ICE, IN M. SJT1F304.445 +,AICEMAX ! IN MAX ICE CONCENTRATION ALLOWED IN AN ICY GRID BOX. SJT1F304.446 +,AICEMIN ! IN MIN ICE CONCENTRATION ALLOWED IN AN ICY GRID BOX. SJT1F304.447 C SLBICE1A.70 LOGICAL ICY(L1) ! INOUT TRUE IF BOX CONTAINS ICE. SLBICE1A.71 + ! RESET FOR NEW ICE POINTS + MELTED POINTS SJT1F304.448 +,NEWICE(L1) ! IN TRUE IF ICE IS FORMING. SJT1F304.449 +,CALIB ! IN TRUE IF CALIBRATION EXPT. SJT1F304.450 +,L_THERM ! IN TRUE FOR NEW THERMODYNAMICS. SJT1F304.451 +,L_IDYN ! IN TRUE FOR CAV FLUID ICE DYNAMICS. SJT1F304.452 +,L_IDRIF ! IN TRUE FOR ICE DEPTH ADVECTION. SJT1F304.453 C SJT1F304.454 REAL AICE(L1) ! INOUT ICE CONCENTRATION. SJT1F304.455 +,HICE(L1) ! INOUT MEAN ICE DEPTH OVER WHOLE GRID BOX. SJT1F304.456 +,HSNOW(L1) ! INOUT SNOW DEPTH, NOT AVERAGED OVER GRID SJT1F304.457 + ! BOX, JUST OVER THE ICE PORTION. SLBICE1A.75 +,SLABTEMP(L1) ! INOUT TEMPERATURE OF THE SLAB OCEAN. SJT1F304.458 C* SLBICE1A.77 C Include COMDECKS SLBICE1A.78 C SLBICE1A.79 *CALL C_DENSTY
SLBICE1A.80 *CALL C_SLAB
SLBICE1A.81 *CALL C_0_DG_C
SLBICE1A.82 *CALL C_LHEAT
SLBICE1A.83 C SLBICE1A.84 C VARIABLES LOCAL TO THIS ROUTINE ARE NOW DEFINED. SLBICE1A.85 C SLBICE1A.86 INTEGER J ! LOOP COUNTERS SLBICE1A.87 REAL XSENERGY ! TEMPORARY SCALAR VARIABLE FOR HOLDING SJT1F304.459 + ! AMOUNTS OF SURPLUS ENERGY. SLBICE1A.89 +,TEST ! ANOTHER TEMPORARY SCALAR VARIABLE. SJT1F304.460 +,DELA ! CHANGE IN AICE OVER ONE TIME STEP. SJT1F304.461 +,DELH ! CHANGE IN HICE OVER ONE TIME STEP. SJT1F304.462 +,XSSUBLIM ! REMAINING SUBLIMATION AFTER ALL SJT1F304.463 + ! SNOW HAS BEEN MELTED SJT1F304.464 +,LEADFLUX ! FLUX OVER LEADS TO CHANGE ICE DEPTH SJT1F304.465 +,WORKC ! TEMPORARY STORE SJT1F304.466 +,AICEREF ! ORIGINAL VALUES OF AICE SJT1F304.467 C SLBICE1A.99 C SLBICE1A.100 INTEGER L2BY2 ! HALF THE NUMBER OF DATA POINTS SLBICE1A.101 INTEGER L2BY2P1 ! HALF THE NUMBER OF DATA POINTS, PLUS ONE SLBICE1A.102 REAL H0R ! THE RECIPROCAL OF H0. SJT1F304.468 +,TFREEZE ! THE FREEZING POINT OF SEAWATER SJT1F304.469 +,DTBYRHOS ! THE RATIO OF THE TIMESTEP TO THE DENSITY OF SNOW. SJT1F304.470 +,DENRATIO ! THE RATIO OF THE DENSITY OF ICE TO THAT OF WATER. SJT1F304.471 +,DENRAT2 ! THE RATIO OF THE DENSITY OF SNOW TO THAT OF WATER. SJT1F304.472 +,DENRAT3 ! THE RATIO OF THE DENSITY OF SNOW TO THAT OF ICE. SJT1F304.473 +,DENRATM1 ! DENRATIO MINUS ONE. SJT1F304.474 C SLBICE1A.112 REAL QI ! THE VOLUMETRIC HEAT OF FUSION OF ICE, IN J/M**3. SJT1F304.475 +,QS ! THE VOLUMETRIC HEAT OF FUSION OF SNOW, IN J/M**3. SJT1F304.476 +,QIR ! THE RECIPROCAL OF QI. SJT1F304.477 +,QSR ! THE RECIPROCAL OF QS. SJT1F304.478 +,QIRDT ! THE RATIO OF THE TIMESTEP TO THE VOLUMETRIC HEAT SJT1F304.479 + ! OF FUSION OF ICE. SLBICE1A.118 +,QIBYDT ! THE RATIO OF THE VOLUMETRIC HEAT OF FUSION OF ICE SJT1F304.480 + ! TO THE TIMESTEP. SJT1F304.481 +,DTTOFLUX ! CONVERSION FACTOR FOR K TO WM-2 SJT1F304.482 +,FLUXTODT ! CONVERSION FACTOR FOR WM-2 TO K SJT1F304.483 +,HEATCON ! TEMPORARY STORE FOR HEAT CONVERGENCE SJT1F304.484 +,ONEEM4 ! SMALL +VE VALUE TO ELIMINATE ROUNDING PROBLEMS SJC1F400.86 C SLBICE1A.119 C SET VARIOUS CONSTANTS,CONVERTING TO S.I. UNITS WHERE NECESSARY. SLBICE1A.120 C SLBICE1A.121 PARAMETER ( TFREEZE = TFS - ZERODEGC) SJT1F304.486 PARAMETER ( DENRATIO = RHOICE / RHOSEA) SJT1F304.487 PARAMETER ( DENRAT2 = RHOSNOW / RHOSEA) SJT1F304.488 PARAMETER ( DENRAT3 = RHOSNOW / RHOICE) SJT1F304.489 PARAMETER ( DENRATM1 = DENRATIO - 1.0) SJT1F304.490 PARAMETER ( QI = LF * RHOICE) SJT1F304.491 PARAMETER ( QS = LF * RHOSNOW) SJT1F304.492 PARAMETER ( QIR = 1.0 / QI) SJT1F304.493 PARAMETER ( QSR = 1.0 / QS) SJT1F304.494 PARAMETER ( oneem4 = 1.0E-4 ) SJC1F400.87 C SLBICE1A.131 L2BY2 = L2 / 2 SJT1F304.496 L2BY2P1 = L2BY2 + 1 SJT1F304.497 H0R = 1.0 / H0 SJT1F304.498 QIRDT = QIR * DT SJT1F304.499 QIBYDT = QI / DT SJT1F304.500 DTTOFLUX = RHOCP * DZ1 / DT SJT1F304.501 FLUXTODT = 1.0 / DTTOFLUX SJT1F304.502 DTBYRHOS = DT / RHOSNOW SJT1F304.503 C SLBICE1A.139 C SLBICE1A.141 DO J = 1,L2 ! Loop over all points SJT1F304.504 C SLBICE1A.147 C TRAP AREAL FRACTIONS GREATER THAN THE SPECIFIED MAXIMUM SJT1F304.505 C THIS IS DONE NOW RATHER THAN IN TRANSA2S AS NORTHERN AND SJT1F304.506 C SOUTHERN HEMISPHERE MAX ARE REQUIRED SEPERATELY SJT1F304.507 C SLBICE1A.153 IF ( AICE(J) .GT. AICEMAX ) AICE(J) = AICEMAX SJT1F304.508 C SLBICE1A.155 C ZERO SOME VARIABLES SJT1F304.509 C SLBICE1A.158 DELH = 0.0 SLBICE1A.160 DELA = 0.0 SLBICE1A.161 WORKC = 0.0 SLBICE1A.162 C SLBICE1A.163 C NOTE THAT ATMSFLUX,TOPMELT,BOTMELT AND SUBLIMZ ARE GRID_BOX SJT1F304.510 C MEAN VALUES AND MUST BE ADJUSTED APPROPRIATELY SJT1F304.511 C SLBICE1A.176 C ATMSFLUX IS THE TOTAL DOWNWARD HEAT FLUX FROM ATMOSPHERE OVER SJT1F304.512 C THE LEADS AND IS DIVIDED BY THE LEAD FRACTION TO SJT1F304.513 C CONCENTRATE THE FLUX OVER THE LEAD AREA SJT1F304.514 C SLBICE1A.189 C TOPMELT,BOTMELT AND SUBLIMATION ARE DIVIDED BY ICE FRACTION SJT1F304.515 C TO CONCENTRATE FLUX OVER ICE AREA SJT1F304.516 C SLBICE1A.206 IF ( ICY(J) ) THEN SLBICE1A.207 C SLBICE1A.208 C UPDATE THE SNOW DEPTH. (NOTE THAT ANY NEGATIVE SUBLIMATION, SLBICE1A.209 C I.E. FROST, GETS USED HERE TO INCREASE SNOW DEPTH. IT DOES NOT SLBICE1A.210 C PENETRATE TO THE ICE SECTION OF THE CODE.) SLBICE1A.211 C SLBICE1A.212 HSNOW(J) = HSNOW(J) + DTBYRHOS * SJT1F304.517 + ( SNOWRATE(J) - ( SUBLIMZ(J) / AICE(J) ) ) SJT1F304.518 IF ( HSNOW(J) .GE. 0.0 ) THEN SLBICE1A.214 XSSUBLIM = 0.0 SJT1F304.519 ELSE SLBICE1A.216 XSSUBLIM = - ( RHOSNOW / RHOICE ) * HSNOW(J) SJT1F304.520 HSNOW(J) = 0.0 SLBICE1A.218 ENDIF SLBICE1A.219 C SLBICE1A.220 C XSSUBLIM NOW CONTAINS ANY SUBLIMATION UNUSED DUE TO LACK OF SNOW. SJT1F304.521 C CONVERTED TO M OF ICE SJT1F304.522 C SLBICE1A.222 HSNOW(J) = HSNOW(J) - DT * QSR * TOPMELTZ(J) / AICE(J) SJT1F304.523 C SLBICE1A.224 C IF SNOW GOES -VE,USE EXCESS HEAT TO MELT ICE INSTEAD. SLBICE1A.225 C SLBICE1A.226 IF ( HSNOW(J) .LT. 0.0 ) THEN SLBICE1A.227 XSENERGY = - ( QS / QI ) * HSNOW(J) SJT1F304.524 HSNOW(J) = 0.0 SLBICE1A.229 ELSE SLBICE1A.230 XSENERGY = 0.0 SLBICE1A.231 ENDIF SLBICE1A.232 C SLBICE1A.233 C CALCULATE CHANGE IN ICE DEPTH OVER THE ICE FRACTION. SLBICE1A.234 C SLBICE1A.235 DELH = - XSENERGY - XSSUBLIM SJT1F304.525 + - QIRDT * ( BOTMELTZ(J) / AICE(J) ) SJT1F304.526 IF (l_therm) delh = delh - qirdt*(oiflux(j)+caryheat(j)) SJT1F304.527 C SLBICE1A.237 C FORM WEIGHTED MEAN OF DEPTH CHANGES OVER ICE AND OVER LEADS. SLBICE1A.238 C SLBICE1A.239 LEADFLUX = DT*( LF * SNOWRATE(J) - SJT1F304.528 + ( ATMSFLUX(J) / (1.0 - AICE(J) ) ) ) SJT1F304.529 if (l_therm) leadflux = dt * ( lf * snowrate(j) SJC1F400.88 & - ( ldsflux(j) / (1.0 - aice(j) ) ) ) SJC1F400.89 & - dt * ( oiflux(j) + caryheat(j) ) SJC1F400.90 DELH = QIR * LEADFLUX * ( 1.0 - AICE(J) ) SJT1F304.531 + + DELH * AICE(J) SJT1F304.532 C SJT1F304.533 C IF CALIBRATION EXPERIMENT, CALCULATE THE HEAT CONVERGENCE SJT1F304.534 C NEEDED TO FORCE THE ICE DEPTH TO BE THE CLIMATOLOGICAL VALUE SJT1F304.535 C (only done here if no ice dynamics) SJT1F304.536 if (.not.(l_idyn.or.l_idrif)) then SJT1F304.537 IF ( CALIB ) THEN SJT1F304.538 ADJHCONV(J) = QIBYDT * ( HICE(J) + DELH - HCLIM(J) ) SJT1F304.539 END IF SJT1F304.540 C SLBICE1A.242 C SUBTRACT HEAT CONVERGENCE TERM, WHICH OPERATES OVER THE ENTIRE SLBICE1A.243 C GRID BOX. SLBICE1A.244 C SLBICE1A.245 C IN CALIBRATION EXPERIMENT THIS GIVES DELH = HCLIM - HICE SJT1F304.541 C SLBICE1A.247 DELH = DELH - QIRDT * ADJHCONV(J) SJT1F304.542 ENDIF SJT1F304.543 C SLBICE1A.250 C TEST WHETHER ALL ICE IS GOING TO MELT. SJT1F304.544 C SJT1F304.545 IF ( (HICE(J) + DELH) .LE. oneem4 ) THEN SJC1F400.91 C SLBICE1A.252 C NOW SEE WHETHER THERE IS SUFFICIENT SNOW TO MAINTAIN ICE COVER SLBICE1A.253 C BY CONVERSION OF SNOW INTO ICE. IF SO, ALL THE SNOW IS CONVERTED. SLBICE1A.254 C IT COULD BE ARGUED THAT ONLY ENOUGH SNOW TO MAINTAIN ICE COVER SJT1F304.547 C SHOULD BE CONVERTED. HOWEVER, THE WHITE ICE CODE WOULD SJT1F304.548 C THEN CONVERT ALL BUT A THIN DUSTING OF SNOW TO ICE IN ANY CASE. SLBICE1A.257 C SLBICE1A.258 TEST = HICE(J) + DELH SJT1F304.549 + + DENRAT3 * AICE(J) * HSNOW(J) SJT1F304.550 C SJT1F304.551 IF ( TEST .GT. oneem4 ) THEN SJC1F400.92 C SJT1F304.553 DELH = DELH + DENRAT3 * AICE(J) * HSNOW(J) SJT1F304.554 HSNOW(J) = 0.0 SLBICE1A.263 C SJT1F304.555 ELSE SLBICE1A.264 C SJT1F304.556 ICY(J) = .FALSE. SJT1F304.557 HICE(J) = 0.0 SJT1F304.558 AICE(J) = 0.0 SJT1F304.559 HSNOW(J) = 0.0 SJT1F304.560 SLABTEMP(J) = SLABTEMP(J) - (TEST*QI)/(RHOCP*DZ1) SJT1F304.561 C SJT1F304.562 C IN CALIBRATION MODE CATER FOR THE CASE WHERE THE MODEL HAS SJT1F304.563 C SIMULATED ICE BUT THE CLIMATOLOGY INDICATES OPEN WATER SJT1F304.564 C THIS OCCURS IN PRACTICE WHERE THE CLIMATOLOGY HAS JUST SJT1F304.565 C CHANGED FROM ICE TO WATER BUT THE MODEL KEEPS ICE SJT1F304.566 C Only if no ice dynamics included. SJT1F304.567 C SJT1F304.568 IF ( CALIB ) THEN SJC1F400.93 HEATCON = ( TCLIMC(J) - SLABTEMP(J) ) * DTTOFLUX SJC1F400.94 ADJHCONV(J) = ADJHCONV(J) + HEATCON SJC1F400.95 SLABTEMP(J) = SLABTEMP(J) + HEATCON * FLUXTODT SJC1F400.96 END IF SJT1F304.575 ENDIF SLBICE1A.270 C SLBICE1A.271 C IF ICE WILL REMAIN,CALCULATE THE CHANGE IN THE AREAL FRACTION. SLBICE1A.272 C SLBICE1A.273 ELSE ! For points where HICE > 0.0 SJT1F304.576 IF (LEADFLUX .GT. 0.0) THEN SJT1F304.577 DELA = ( 1.0 - AICE(J) )* H0R * QIR * LEADFLUX SJT1F304.578 ENDIF SLBICE1A.277 IF (DELH .LT. 0.0) THEN SLBICE1A.278 DELA = DELA + ( AICE(J) * DELH ) / ( 2.0 * HICE(J) ) SJT1F304.579 ENDIF SLBICE1A.280 C SJT1F304.580 C END OF BLOCK CHECKING IF ALL ICE MELTS SJT1F304.581 C SJT1F304.582 ENDIF SLBICE1A.281 C SJT1F304.583 C END OF IF(ICY) BLOCK SJT1F304.584 C SJT1F304.585 ENDIF SLBICE1A.282 C SJT1F304.586 C SJT1F304.587 C SPECIAL CODE FOR GRID BOXES WHERE ICE FORMATION IS JUST STARTING. SJT1F304.588 C SJT1F304.589 IF ( NEWICE(J) ) THEN SJT1F304.590 DELH = -QIRDT * CARYHEAT(J) SJT1F304.591 DELA = H0R * DELH SJT1F304.592 ENDIF SJT1F304.593 C SJT1F304.594 C END OF SPECIAL CODE FOR NEWLY-ICED GRID BOXES. SJT1F304.595 C SLBICE1A.283 C RESET ICY TO INCLUDE NEWLY-ICED POINTS. THEN UPDATE ICE DEPTHS SLBICE1A.284 C AND AREAL FRACTIONS. (NEWLY-MELTED POINTS WON'T BE UPDATED.) SLBICE1A.285 C SLBICE1A.286 C IN CALIBRATION EXPERIMENT HICE = HICE + ( HCLIM - HICE) SJT1F304.596 C = HCLIM SJT1F304.597 C SJT1F304.598 ICY(J) = ICY(J) .OR. ( NEWICE(J) ) SJT1F304.599 C SJT1F304.600 IF ( ICY(J) ) THEN SLBICE1A.288 C SJT1F304.601 C STORE THE INITIAL AREAL FRACTIONS FOR USE IN UPDATING SJT1F304.602 C SNOW DEPTHS. SJT1F304.603 C SJT1F304.604 AICEREF = AICE(J) SJT1F304.605 C SJT1F304.606 HICE(J) = HICE(J) + DELH SLBICE1A.289 AICE(J) = AICE(J) + DELA SLBICE1A.290 C SLBICE1A.292 C TRAP AREAL FRACTIONS GREATER THAN THE SPECIFIED MAXIMUM SJT1F304.607 C OR LESS THAN THE SPECIFIED MINIMUM. SLBICE1A.296 C SLBICE1A.297 IF ( AICE(J) .GT. AICEMAX ) AICE(J)=AICEMAX SJT1F304.608 C SLBICE1A.301 IF ( AICE(J) .LT. AICEMIN ) AICE(J)=AICEMIN SJT1F304.609 C SLBICE1A.309 C REDISTRIBUTE SNOW OVER THE ALTERED ICE AREA,USING THE INITIAL SLBICE1A.310 C AREAL FRACTIONS HELD IN AICEREF. SLBICE1A.311 C SLBICE1A.312 HSNOW(J) = ( HSNOW(J) * AICEREF ) / AICE(J) SJT1F304.610 C SLBICE1A.316 C THE NEXT SECTION OF CODE DEALS WITH THE FORMATION OF 'WHITE' SLBICE1A.317 C ICE, WHICH OCCURS WHEN SNOW ACCUMULATES TO SUCH AN EXTENT THAT SLBICE1A.318 C THE SNOW/ICE INTERFACE SINKS BELOW THE WATERLINE. IT BEGINS BY SLBICE1A.319 C FINDING THE HEIGHT OF THE WATERLINE ABOVE THE TOP OF THE ICE. SLBICE1A.320 C SLBICE1A.321 WORKC = ( ( HICE(J) / AICE(J) ) * DENRATM1 SJT1F304.611 + + DENRAT2 * HSNOW(J) ) / DENRAT3 SJT1F304.612 C SLBICE1A.325 C IF THIS HEIGHT IS POSITIVE, IT INDICATES THE DEPTH OF SNOW SLBICE1A.326 C THAT WILL BE CONVERTED TO ICE. SLBICE1A.327 C SLBICE1A.328 IF ( WORKC .GT. 0.0 ) THEN SLBICE1A.329 HSNOW(J) = HSNOW(J) - WORKC SLBICE1A.330 WORKC = WORKC * AICE(J) SJT1F304.613 HICE(J) = HICE(J) + DENRAT3 * WORKC SJT1F304.614 ENDIF SLBICE1A.333 ENDIF SLBICE1A.334 C SLBICE1A.335 END DO ! End of loop over all points SJT1F304.615 C SLBICE1A.337 RETURN SLBICE1A.338 END SLBICE1A.339 *ENDIF SLBICE1A.340