/[MITgcm]/MITgcm/pkg/streamice/streamice_solo_timestep.F
ViewVC logotype

Contents of /MITgcm/pkg/streamice/streamice_solo_timestep.F

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


Revision 1.3 - (show annotations) (download)
Wed Jun 4 13:03:11 2014 UTC (9 years, 11 months ago) by dgoldberg
Branch: MAIN
CVS Tags: checkpoint64y, checkpoint64z, checkpoint65b, checkpoint65c, checkpoint65a, checkpoint65
Changes since 1.2: +7 -2 lines
add call for timedep forcing

1 C $Header: /u/gcmpack/MITgcm/pkg/streamice/streamice_solo_timestep.F,v 1.2 2014/04/24 12:01:50 dgoldberg Exp $
2 C $Name: $
3
4 #include "STREAMICE_OPTIONS.h"
5
6 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
7
8 CBOP
9 SUBROUTINE STREAMICE_SOLO_TIMESTEP ( myThid, myIter,
10 & iLoop, myTime )
11
12 C /============================================================\
13 C | SUBROUTINE |
14 C | o |
15 C |============================================================|
16 C | |
17 C \============================================================/
18 IMPLICIT NONE
19
20 C === Global variables ===
21 #include "SIZE.h"
22 #include "GRID.h"
23 #include "EEPARAMS.h"
24 #include "PARAMS.h"
25 #include "STREAMICE.h"
26 #ifdef ALLOW_AUTODIFF_TAMC
27 # include "tamc.h"
28 # include "STREAMICE_ADV.h"
29 # include "STREAMICE_BDRY.h"
30 # include "STREAMICE_CG.h"
31 #endif
32
33
34 INTEGER myThid, myIter, iLoop
35 _RL myTime
36
37
38 #ifdef ALLOW_STREAMICE
39
40 INTEGER i, j, bi, bj, ki, kj
41 ! _RL Iratio, Imin_ratio, time_step_remain, local_u_max
42 ! _RL ratio, min_ratio
43 ! _RL local_v_max, time_step_int, min_time_step
44 CHARACTER*(MAX_LEN_MBUF) msgBuf
45 ! LOGICAL modelEnd
46
47 #ifdef ALLOW_AUTODIFF_TAMC
48 c**************************************
49 #include "streamice_ad_check_lev1_dir.h"
50 c**************************************
51 #endif
52
53 ! time_step_remain = deltaT
54 ! min_time_step = 1000.0
55 ! n_interm = 0
56
57 #ifdef ALLOW_AUTODIFF_TAMC
58
59 DO bj=myByLo(myThid),myByHi(myThid)
60 DO bi=myBxLo(myThid),myBxHi(myThid)
61 DO j=1-OLy,sNy+OLy
62 DO i=1-OLx,sNx+OLx
63 STREAMICE_ufacemask(i,j,bi,bj) = 0. _d 0
64 STREAMICE_vfacemask(i,j,bi,bj) = 0. _d 0
65 ru_old_si(i,j,bi,bj) = 0. _d 0
66 rv_old_si(i,j,bi,bj) = 0. _d 0
67 zu_old_si(i,j,bi,bj) = 0. _d 0
68 zv_old_si(i,j,bi,bj) = 0. _d 0
69 ! h_after_uflux_si(i,j,bi,bj) = 0. _d 0
70 #ifdef STREAMICE_HYBRID_STRESS
71 streamice_taubx (i,j,bi,bj) = 0. _d 0
72 streamice_tauby (i,j,bi,bj) = 0. _d 0
73 #endif
74 ENDDO
75 ENDDO
76 ENDDO
77 ENDDO
78
79 #endif
80
81
82
83 WRITE(msgBuf,'(A,I10.10,E9.2,A)')
84 & 'streamice solo_time_step: nIter',
85 & myIter, myTime/86400.0/365.0, 'seconds'
86 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
87 & SQUEEZE_RIGHT , 1)
88
89 CALL STREAMICE_DUMP( mytime, myiter, myThid )
90
91 ! NEW DIRECTIVES - DNG
92 !#ifdef ALLOW_AUTODIFF_TAMC
93 !CADJ STORE float_frac_streamice = comlev1, key = ikey_dynamics,
94 !CADJ & kind = isbyte
95 !CADJ STORE surf_el_streamice = comlev1, key = ikey_dynamics,
96 !CADJ & kind = isbyte
97 !CADJ STORE base_el_streamice = comlev1, key = ikey_dynamics,
98 !CADJ & kind = isbyte
99 !#endif
100 ! NEW DIRECTIVES - DNG
101
102 !#ifdef ALLOW_GENTIM2D_CONTROL
103 ! CALL CTRL_MAP_GENTIM2D (myTime, myIter, myThid)
104 !#endif
105
106 if (myIter.eq.0) then
107 CALL STREAMICE_UPD_FFRAC_UNCOUPLED ( myThid )
108 CALL WRITE_FLD_XY_RL
109 & ("surf_el_init","",surf_el_streamice,0,myThid)
110 endif
111 CALL STREAMICE_VELMASK_UPD (myThid)
112
113 #ifdef ALLOW_STREAMICE_FLUX_CONTROL
114 CALL STREAMICE_APPLY_FLUX_CTRL ( myTime, myIter, myThid )
115 #endif
116
117 #ifdef ALLOW_STREAMICE_TIMEDEP_FORCING
118 CALL STREAMICE_FIELDS_LOAD( myTime, myIter, myThid )
119 #endif
120
121
122 CALL STREAMICE_VEL_SOLVE( myThid )
123
124 if(.not.STREAMICE_diagnostic_only) THEN
125
126 CALL STREAMICE_ADVECT_THICKNESS ( myThid, myIter, deltaT )
127
128 endif
129
130 ! CALL AT END INSTEAD OF BEGINNING - DNG
131 CALL STREAMICE_UPD_FFRAC_UNCOUPLED ( myThid )
132
133
134
135
136 #endif
137 RETURN
138 END

  ViewVC Help
Powered by ViewVC 1.1.22