/[MITgcm]/MITgcm/pkg/gmredi/gmredi_init.F
ViewVC logotype

Annotation of /MITgcm/pkg/gmredi/gmredi_init.F

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


Revision 1.8 - (hide annotations) (download)
Thu Nov 14 22:43:49 2002 UTC (21 years, 7 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint51k_post, checkpoint47e_post, checkpoint52l_pre, hrcube4, hrcube5, checkpoint47c_post, checkpoint50c_post, checkpoint52d_pre, checkpoint48e_post, checkpoint50g_post, checkpoint52j_pre, checkpoint51o_pre, checkpoint48c_post, checkpoint51l_post, checkpoint48i_post, checkpoint50d_pre, checkpoint52k_post, checkpoint51, checkpoint52, checkpoint50d_post, checkpoint52f_post, checkpoint50b_pre, checkpoint51f_post, checkpoint48b_post, checkpoint51d_post, checkpoint48c_pre, checkpoint51t_post, checkpoint51n_post, checkpoint52i_pre, hrcube_2, hrcube_3, checkpoint51s_post, checkpoint48d_pre, checkpoint51j_post, checkpoint47i_post, checkpoint52e_pre, checkpoint52e_post, checkpoint51n_pre, checkpoint47d_post, checkpoint48d_post, checkpoint48f_post, checkpoint52b_pre, checkpoint51l_pre, checkpoint47d_pre, checkpoint48h_post, checkpoint51q_post, checkpoint51b_pre, checkpoint47g_post, checkpoint52b_post, checkpoint52c_post, checkpoint51h_pre, checkpoint52h_pre, checkpoint50f_post, checkpoint50a_post, checkpoint50f_pre, hrcube_1, checkpoint51m_post, checkpoint47a_post, branchpoint-genmake2, checkpoint51r_post, checkpoint51i_post, checkpoint51b_post, checkpoint47b_post, checkpoint52d_post, checkpoint50c_pre, checkpoint51c_post, checkpoint52a_pre, checkpoint50h_post, checkpoint52i_post, checkpoint50e_pre, checkpoint50i_post, checkpoint51i_pre, checkpoint48a_post, checkpoint47j_post, branch-exfmods-tag, checkpoint52j_post, checkpoint47f_post, checkpoint50e_post, branch-netcdf, checkpoint52l_post, checkpoint51e_post, checkpoint47, checkpoint48, checkpoint49, checkpoint51o_post, checkpoint50, checkpoint51f_pre, checkpoint47h_post, checkpoint52a_post, checkpoint51g_post, ecco_c52_e35, checkpoint50b_post, checkpoint52f_pre, checkpoint51a_post, checkpoint51p_post, checkpoint48g_post, checkpoint51u_post
Branch point for: branch-exfmods-curt, branch-genmake2, branch-nonh, tg2-branch, netcdf-sm0, checkpoint51n_branch
Changes since 1.7: +2 -2 lines
o * "clean" adjoint code (in terms of extensive recomputations)
    can now be obtained for all GMREDI options (i.e. for
    - GM_VISBECK_VARIABLE_K
    - GM_NON_UNITY_DIAGONAL
    - GM_EXTRA_DIAGONAL
    - GM_BOLUS_ADVEC )
  * However, wrong gradient check problem remains unsolved.
  * New CPP options have been introduced for different
    tapering schemes

1 heimbach 1.8 C $Header: /u/gcmpack/MITgcm/pkg/gmredi/gmredi_init.F,v 1.7 2002/03/24 02:33:16 heimbach Exp $
2     C $Name: checkpoint46 $
3 adcroft 1.1
4     #include "GMREDI_OPTIONS.h"
5    
6     SUBROUTINE GMREDI_INIT( myThid )
7     C /==========================================================\
8     C | SUBROUTINE GMREDI_INIT |
9     C | o Routine to initialize GM/Redi variables and constants. |
10     C |==========================================================|
11     C | Initialize GM/Redi parameters, read in data.gmredi |
12     C \==========================================================/
13     IMPLICIT NONE
14    
15     C === Global variables ===
16     #include "SIZE.h"
17     #include "EEPARAMS.h"
18     #include "PARAMS.h"
19     #include "GRID.h"
20     #include "GMREDI.h"
21     #include "GMREDI_DIAGS.h"
22    
23     C === Routine arguments ===
24     C myThid - Number of this instance of KPP_INIT
25     INTEGER myThid
26    
27     #ifdef ALLOW_GMREDI
28    
29     C === Local variables ===
30     C msgBuf - Informational/error meesage buffer
31     C iUnit - Work variable for IO unit number
32     CHARACTER*(MAX_LEN_MBUF) msgBuf
33     INTEGER iUnit
34 jmc 1.6 INTEGER i,j,k,bi,bj
35    
36     DO bj = myByLo(myThid), myByHi(myThid)
37     DO bi = myBxLo(myThid), myBxHi(myThid)
38    
39     C Initialize arrays in common blocks :
40     DO k=1,Nr
41     DO j=1-Oly,sNy+OLy
42     DO i=1-Olx,sNx+Olx
43 heimbach 1.7 Kwx(i,j,k,bi,bj) = 0. _d 0
44     Kwy(i,j,k,bi,bj) = 0. _d 0
45     Kwz(i,j,k,bi,bj) = 0. _d 0
46 jmc 1.6 #ifdef GM_EXTRA_DIAGONAL
47 heimbach 1.7 Kuz(i,j,k,bi,bj) = 0. _d 0
48     Kvz(i,j,k,bi,bj) = 0. _d 0
49 jmc 1.6 #endif
50     #ifdef GM_NON_UNITY_DIAGONAL
51 heimbach 1.7 Kux(i,j,k,bi,bj) = 0. _d 0
52     Kvy(i,j,k,bi,bj) = 0. _d 0
53 jmc 1.6 #endif
54     #ifdef GM_BOLUS_ADVEC
55 heimbach 1.7 GM_PsiX(i,j,k,bi,bj) = 0. _d 0
56     GM_PsiY(i,j,k,bi,bj) = 0. _d 0
57 jmc 1.6 #endif
58     #ifdef GM_VISBECK_VARIABLE_K
59 heimbach 1.7 VisbeckK(i,j,bi,bj) = 0. _d 0
60 jmc 1.6 #endif
61     ENDDO
62     ENDDO
63     ENDDO
64 adcroft 1.1
65 jmc 1.5 #ifdef ALLOW_TIMEAVE
66 adcroft 1.1 C Initialize averages to zero
67 jmc 1.5 CALL TIMEAVE_RESET(GM_Kwx_T,Nr, bi,bj,myThid)
68     CALL TIMEAVE_RESET(GM_Kwy_T,Nr, bi,bj,myThid)
69     CALL TIMEAVE_RESET(GM_Kwz_T,Nr, bi,bj,myThid)
70 adcroft 1.1 DO k=1,Nr
71 heimbach 1.7 GM_TimeAve(k,bi,bj)=0. _d 0
72 adcroft 1.1 ENDDO
73     #ifdef GM_VISBECK_VARIABLE_K
74 jmc 1.5 CALL TIMEAVE_RESET(Visbeck_K_T, 1, bi,bj,myThid)
75 adcroft 1.1 #endif
76 jmc 1.6 #ifdef GM_BOLUS_ADVEC
77     CALL TIMEAVE_RESET(GM_PsiXtave,Nr, bi,bj,myThid)
78     CALL TIMEAVE_RESET(GM_PsiYtave,Nr, bi,bj,myThid)
79     #endif
80     #endif /* ALLOW_TIMEAVE */
81    
82     C- end bi,bj loops
83 adcroft 1.1 ENDDO
84     ENDDO
85     #endif /* ALLOW_GMREDI */
86    
87     return
88     end

  ViewVC Help
Powered by ViewVC 1.1.22