/[MITgcm]/MITgcm/pkg/generic_advdiff/gad_init_varia.F
ViewVC logotype

Annotation of /MITgcm/pkg/generic_advdiff/gad_init_varia.F

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


Revision 1.1 - (hide annotations) (download)
Tue Jan 16 04:38:34 2007 UTC (17 years, 5 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint58w_post, checkpoint58x_post, checkpoint59q, checkpoint59p, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint59c, checkpoint59b, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint59j, checkpoint59, checkpoint58y_post, checkpoint58v_post
2nd-Order Moment Advection Scheme (Prather, 1986): first check-in
 - enable by setting #define GAD_ALLOW_SOM_ADVECT (in GAD_OPTIONS.h)
 - used without limiter (AdvScheme=80) or with Prather limiter (AdvScheme=81)
 - still needs work (not working with some options ; efficiency to improve)
   and serious testing.

1 jmc 1.1 C $Header: /u/gcmpack/MITgcm/pkg/gmredi/gmredi_init.F,v 1.10 2005/01/04 00:20:35 jmc Exp $
2     C $Name: $
3    
4     #include "GAD_OPTIONS.h"
5    
6     CBOP
7     C !ROUTINE: GAD_INIT_VARIA
8     C !INTERFACE:
9     SUBROUTINE GAD_INIT_VARIA( myThid )
10    
11     C !DESCRIPTION: \bv
12     C *==========================================================*
13     C | SUBROUTINE GAD_INIT_VARIA
14     C | o Routine to initialize GAD variables
15     C *==========================================================*
16     C \ev
17     C !USES:
18     IMPLICIT NONE
19    
20     C === Global variables ===
21     #include "SIZE.h"
22     #include "EEPARAMS.h"
23     #include "PARAMS.h"
24     c #include "GRID.h"
25     #include "GAD.h"
26     #include "GAD_SOM_VARS.h"
27    
28     C !INPUT/OUTPUT PARAMETERS:
29     C === Routine arguments ===
30     C myThid :: my Thread Id number
31     INTEGER myThid
32     CEOP
33    
34     #ifdef GAD_ALLOW_SOM_ADVECT
35     C !LOCAL VARIABLES:
36     C === Local variables ===
37     INTEGER i,j,k,bi,bj
38     INTEGER n
39    
40     DO bj = myByLo(myThid), myByHi(myThid)
41     DO bi = myBxLo(myThid), myBxHi(myThid)
42    
43     C-- Initialize 1rst Order (3:x,y,z) and 2nd Order (6:xx,yy,zz,xy,xz,yz) moments
44     DO n=1,nSOM
45     DO k=1,Nr
46     DO j=1-Oly,sNy+OLy
47     DO i=1-Olx,sNx+Olx
48     C pot.temp field:
49     som_T(i,j,k,bi,bj,n) = 0. _d 0
50     C salinity field:
51     som_S(i,j,k,bi,bj,n) = 0. _d 0
52     ENDDO
53     ENDDO
54     ENDDO
55     ENDDO
56    
57     C- end bi,bj loops
58     ENDDO
59     ENDDO
60    
61     IF ( tempSOM_Advection .OR. saltSOM_Advection ) THEN
62     IF ( startTime.EQ.baseTime .AND. nIter0.EQ.0 ) THEN
63     C- Need to synchronize here before doing master-thread IO
64     c _BARRIER
65     C- Read-in initial conditions:
66     C --- not yet coded ---
67     c CALL GAD_SOM_EXCHANGES( myThid )
68     ELSE
69     C- Read 2nd-O moments state from pickup files
70     CALL GAD_READ_PICKUP( nIter0, myThid )
71     CALL GAD_SOM_EXCHANGES( myThid )
72     ENDIF
73     ENDIF
74    
75     #endif /* GAD_ALLOW_SOM_ADVECT */
76    
77     RETURN
78     END

  ViewVC Help
Powered by ViewVC 1.1.22