/[MITgcm]/MITgcm/model/src/freeze_surface.F
ViewVC logotype

Contents of /MITgcm/model/src/freeze_surface.F

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


Revision 1.6 - (show annotations) (download)
Sat Dec 4 00:12:14 2004 UTC (19 years, 6 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint57t_post, checkpoint57o_post, checkpoint58e_post, checkpoint57m_post, checkpoint57s_post, checkpoint57k_post, checkpoint57d_post, checkpoint57g_post, checkpoint57b_post, checkpoint57c_pre, checkpoint57i_post, checkpoint57y_post, checkpoint57e_post, checkpoint57g_pre, checkpoint57y_pre, checkpoint57f_pre, checkpoint57a_post, checkpoint57v_post, checkpoint57r_post, checkpoint58, checkpoint57a_pre, checkpoint57, eckpoint57e_pre, checkpoint57h_done, checkpoint58f_post, checkpoint57x_post, checkpoint57n_post, checkpoint58d_post, checkpoint58c_post, checkpoint57w_post, checkpoint57p_post, checkpint57u_post, checkpoint57f_post, checkpoint58a_post, checkpoint57q_post, checkpoint58g_post, checkpoint57z_post, checkpoint57c_post, checkpoint57j_post, checkpoint58b_post, checkpoint57h_pre, checkpoint57l_post, checkpoint57h_post
Changes since 1.5: +2 -2 lines
depth convergence accelerator: replace deltaTtracer by dTtracerLev(k)

1 C $Header: /u/gcmpack/MITgcm/model/src/freeze_surface.F,v 1.5 2004/10/19 02:39:58 jmc Exp $
2 C $Name: $
3
4 #include "PACKAGES_CONFIG.h"
5 #include "CPP_OPTIONS.h"
6
7 CBOP
8 C !ROUTINE: FREEZE_SURFACE
9 C !INTERFACE:
10 SUBROUTINE FREEZE_SURFACE( myTime, myIter, myThid )
11 C !DESCRIPTION: \bv
12 C *==========================================================*
13 C | S/R FREEZE_SURFACE
14 C | o Check water temperature and limit range of temperature
15 C | appropriately.
16 C *==========================================================*
17 C \ev
18
19 C !USES:
20 IMPLICIT NONE
21 C == Global variables ==
22 #include "SIZE.h"
23 #include "EEPARAMS.h"
24 #include "PARAMS.h"
25 #include "DYNVARS.h"
26 #include "GRID.h"
27 #include "FFIELDS.h"
28
29 C !INPUT/OUTPUT PARAMETERS:
30 C == Routine Arguments ==
31 C myTime - Current time in simulation
32 C myIter - Current iteration number in simulation
33 C myThid :: Thread no. that called this routine.
34 _RL myTime
35 INTEGER myIter
36 INTEGER myThid
37
38 C !LOCAL VARIABLES:
39 C == Local variables ==
40 C Tfreezing :: Freezing threshold temperature.
41 INTEGER bi,bj,i,j,k
42 _RL Tfreezing
43 CEOP
44
45 IF ( usingPCoords ) THEN
46 k = Nr
47 ELSE
48 k = 1
49 ENDIF
50
51 Tfreezing = -1.9 _d 0
52
53 C Check for water that should have frozen
54 DO bj=myByLo(myThid),myByHi(myThid)
55 DO bi=myBxLo(myThid),myBxHi(myThid)
56 DO j=1-OLy,sNy+OLy
57 DO i=1-OLx,sNx+OLx
58 IF (theta(i,j,k,bi,bj) .LT. Tfreezing) THEN
59 surfaceForcingTice(i,j,bi,bj) =
60 & ( Tfreezing - theta(i,j,k,bi,bj) )
61 & *drF(k)*hFacC(i,j,k,bi,bj) / dTtracerLev(k)
62 theta(i,j,k,bi,bj) = Tfreezing
63 ELSE
64 surfaceForcingTice(i,j,bi,bj) = 0. _d 0
65 ENDIF
66 ENDDO
67 ENDDO
68 ENDDO
69 ENDDO
70
71 RETURN
72 END

  ViewVC Help
Powered by ViewVC 1.1.22