/[MITgcm]/MITgcm_contrib/cam_devel/sigma_testing/code-sigma/ini_vel.F
ViewVC logotype

Annotation of /MITgcm_contrib/cam_devel/sigma_testing/code-sigma/ini_vel.F

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


Revision 1.1 - (hide annotations) (download)
Wed Jan 6 04:31:15 2010 UTC (15 years, 7 months ago) by cnh
Branch: MAIN
CVS Tags: HEAD
start some cam work

1 cnh 1.1 C $Header: /u/gcmpack/MITgcm/model/src/ini_vel.F,v 1.8 2009/06/14 21:45:12 jmc Exp $
2     C $Name: $
3    
4     #include "CPP_OPTIONS.h"
5    
6     CBOP
7     C !ROUTINE: INI_VEL
8     C !INTERFACE:
9     SUBROUTINE INI_VEL( myThid )
10    
11     C !DESCRIPTION: \bv
12     C *=================================================================
13     C | SUBROUTINE INI_VEL
14     C | o Initialize flow field (either to zero or from input files)
15     C *=================================================================
16     C \ev
17    
18     C !USES:
19     IMPLICIT NONE
20     C === Global variables ===
21     #include "SIZE.h"
22     #include "EEPARAMS.h"
23     #include "PARAMS.h"
24     #include "GRID.h"
25     #include "DYNVARS.h"
26    
27     C !INPUT/OUTPUT PARAMETERS:
28     C == Routine arguments ==
29     C myThid :: Number of this instance of INI_VEL
30     INTEGER myThid
31    
32     C !LOCAL VARIABLES:
33     C == Local variables ==
34     C i,j,k :: Loop counters
35     C bi,bj :: tile indices
36     INTEGER bi,bj,i,j,k
37     CEOP
38    
39     C-- Initialise velocity fields to zero
40     C
41     C If you want to specify an analytic initial state for the flow
42     C field then customize the following section of code.
43     C It is, however, often easier to generate initial conditions
44     C off-line and read them from input files...
45     C
46     DO bj = myByLo(myThid), myByHi(myThid)
47     DO bi = myBxLo(myThid), myBxHi(myThid)
48     DO k=1,Nr
49     DO j=1-Oly,sNy+Oly
50     DO i=1-Olx,sNx+Olx
51     uVel(i,j,k,bi,bj)=0. _d 0
52     vVel(i,j,k,bi,bj)=0. _d 0
53     ENDDO
54     ENDDO
55     ENDDO
56     ENDDO
57     ENDDO
58    
59     IF (uVelInitFile .NE. ' ' .OR. vVelInitFile .NE. ' ') THEN
60     C Read an initial state for each component if required
61     IF (uVelInitFile .NE. ' ')
62     & CALL READ_FLD_XYZ_RL( uVelInitFile, ' ', uVel, 0, myThid )
63    
64     IF (vVelInitFile .NE. ' ')
65     & CALL READ_FLD_XYZ_RL( vVelInitFile, ' ', vVel, 0, myThid )
66    
67     CALL EXCH_UV_XYZ_RL(uVel,vVel,.TRUE.,myThid)
68     ENDIF
69    
70     DO bj = myByLo(myThid), myByHi(myThid)
71     DO bi = myBxLo(myThid), myBxHi(myThid)
72     DO k=1,Nr
73     DO j=1-Oly,sNy+Oly
74     DO i=1-Olx,sNx+Olx
75     uVel(i,j,k,bi,bj)=uVel(i,j,k,bi,bj)*_maskW(i,j,k,bi,bj)
76     vVel(i,j,k,bi,bj)=vVel(i,j,k,bi,bj)*_maskS(i,j,k,bi,bj)
77     ENDDO
78     ENDDO
79     ENDDO
80     ENDDO
81     ENDDO
82    
83     CcnhSigmaTestingBegin
84     CALL SIGMA_TESTING_SET_VELS( myThid )
85     CcnhSigmaTestingEnd
86    
87     RETURN
88     END

  ViewVC Help
Powered by ViewVC 1.1.22