/[MITgcm]/MITgcm_contrib/dgoldberg/streamice/streamice_upd_ffrac_uncoupled.F
ViewVC logotype

Contents of /MITgcm_contrib/dgoldberg/streamice/streamice_upd_ffrac_uncoupled.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.6 - (show annotations) (download)
Fri Sep 28 12:31:31 2012 UTC (12 years, 9 months ago) by heimbach
Branch: MAIN
Changes since 1.5: +3 -1 lines
More bug fixes.

1 C $Header: /u/gcmpack/MITgcm_contrib/dgoldberg/streamice/streamice_upd_ffrac_uncoupled.F,v 1.5 2012/09/27 20:29:01 dgoldberg Exp $
2 C $Name: $
3
4
5 C this needs changes
6
7 #include "STREAMICE_OPTIONS.h"
8
9 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
10 CBOP 0
11 SUBROUTINE STREAMICE_UPD_FFRAC_UNCOUPLED ( myThid )
12
13 C !DESCRIPTION:
14 C Initialize STREAMICE variables and constants.
15
16 C !USES:
17 IMPLICIT NONE
18 #include "SIZE.h"
19 #include "EEPARAMS.h"
20 #include "PARAMS.h"
21 #include "STREAMICE.h"
22 #include "GRID.h"
23
24 C !INPUT PARAMETERS:
25 INTEGER myThid
26 CEOP
27
28 #ifdef ALLOW_STREAMICE
29
30 INTEGER bi, bj, i, j
31 _RL OD, rhoi, rhow
32
33 rhoi = streamice_density
34 rhow = streamice_density_ocean_avg
35
36 #ifdef USE_ALT_RLOW
37 print *, "RLOWSI", R_low_si(20,1,1,1)
38 #endif
39
40 DO bj = myByLo(myThid), myByHi(myThid)
41 DO bi = myBxLo(myThid), myBxHi(myThid)
42 DO j=1-Oly,sNy+Oly
43 DO i=1-Olx,sNx+Olx
44 #ifdef USE_ALT_RLOW
45 OD = -1.0 * R_low_si (i,j,bi,bj) -
46 & H_streamice(i,j,bi,bj) * rhoi/rhow
47 #else
48 OD = -1.0 * R_low (i,j,bi,bj) -
49 & H_streamice(i,j,bi,bj) * rhoi/rhow
50 #endif
51
52
53 IF (OD .ge. 0. _d 0) THEN
54
55 c ice thickness does not take up whole ocean column -> floating
56 float_frac_streamice(i,j,bi,bj) = 0.0
57 #ifdef USE_ALT_RLOW
58 base_el_streamice(i,j,bi,bj) = R_low_si(i,j,bi,bj)+OD
59 #else
60 base_el_streamice(i,j,bi,bj) = R_low(i,j,bi,bj)+OD
61 #endif
62 surf_el_streamice(i,j,bi,bj) =
63 & (1-rhoi/rhow)*H_streamice(i,j,bi,bj)
64 ELSE
65
66
67 float_frac_streamice(i,j,bi,bj) = 1.0
68 #ifdef USE_ALT_RLOW
69 base_el_streamice(i,j,bi,bj) = R_low_si(i,j,bi,bj)
70 surf_el_streamice(i,j,bi,bj) = R_low_si(i,j,bi,bj)
71 #else
72 base_el_streamice(i,j,bi,bj) = R_low(i,j,bi,bj)
73 surf_el_streamice(i,j,bi,bj) = R_low(i,j,bi,bj)
74 #endif
75 & + H_streamice(i,j,bi,bj)
76 ENDIF
77 ENDDO
78 ENDDO
79 ENDDO
80 ENDDO
81
82 _EXCH_XY_RL(float_frac_streamice, myThid )
83 _EXCH_XY_RL(base_el_streamice, myThid )
84 _EXCH_XY_RL(surf_el_streamice, myThid )
85
86
87
88
89 #endif /* ALLOW_STREAMICE */
90
91 RETURN
92 END

  ViewVC Help
Powered by ViewVC 1.1.22