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

Contents of /MITgcm/pkg/gmredi/gmredi_calc_uvflow.F

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


Revision 1.2 - (show annotations) (download)
Thu Nov 14 22:43:49 2002 UTC (21 years, 5 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, checkpoint50, 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, checkpoint48h_post, checkpoint51q_post, checkpoint51b_pre, checkpoint47g_post, checkpoint52b_post, checkpoint52c_post, checkpoint51h_pre, checkpoint52h_pre, checkpoint50f_post, checkpoint50a_post, checkpoint50f_pre, hrcube_1, checkpoint52f_pre, checkpoint47j_post, checkpoint47a_post, branch-exfmods-tag, branchpoint-genmake2, checkpoint51r_post, checkpoint51i_post, checkpoint51b_post, checkpoint51c_post, checkpoint47b_post, checkpoint52d_post, checkpoint50c_pre, checkpoint52a_pre, checkpoint50h_post, checkpoint52i_post, checkpoint50e_pre, checkpoint50i_post, checkpoint51i_pre, checkpoint48a_post, checkpoint52j_post, checkpoint47f_post, checkpoint50e_post, branch-netcdf, checkpoint52l_post, checkpoint51e_post, checkpoint47d_pre, checkpoint47, checkpoint48, checkpoint49, checkpoint51o_post, checkpoint51f_pre, checkpoint47h_post, checkpoint52a_post, checkpoint51g_post, ecco_c52_e35, checkpoint50b_post, checkpoint51m_post, checkpoint51a_post, checkpoint51p_post, checkpoint48g_post, checkpoint51u_post
Branch point for: branch-exfmods-curt, branch-genmake2, branch-nonh, tg2-branch, ecco-branch, netcdf-sm0, checkpoint51n_branch
Changes since 1.1: +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 C $Header: /u/gcmpack/MITgcm/pkg/gmredi/gmredi_calc_uvflow.F,v 1.1 2002/03/06 01:42:37 jmc Exp $
2 C $Name: checkpoint46 $
3
4 #include "GMREDI_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: GMREDI_CALC_UVFLOW
8 C !INTERFACE:
9 SUBROUTINE GMREDI_CALC_UVFLOW(
10 U uTrans, vTrans,
11 I bi, bj, k, myThid)
12 C !DESCRIPTION: \bv
13 C *==========================================================*
14 C | o SUBROUTINE GMREDI_CALC_UVFLOW
15 C | Add GM-bolus flow to Eulerian horizontal transport
16 C *==========================================================*
17 C \ev
18
19 C !USES:
20 IMPLICIT NONE
21
22 C == GLobal variables ==
23 #include "SIZE.h"
24 #include "EEPARAMS.h"
25 #include "PARAMS.h"
26 #include "GRID.h"
27 #include "GMREDI.h"
28
29 C !INPUT/OUTPUT PARAMETERS:
30 C == Routine arguments ==
31 C bi,bj :: tile indices
32 C k :: level index
33 C myThid :: thread number
34 C uTrans :: zonal volume transport (updated)
35 C vTrans :: meridional volume transport (updated)
36 INTEGER bi, bj, k, myThid
37 _RL uTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
38 _RL vTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
39
40 #ifdef ALLOW_GMREDI
41 #ifdef GM_BOLUS_ADVEC
42
43 C !LOCAL VARIABLES:
44 C == Local variables ==
45 C i, j :: loop indices
46 INTEGER i, j
47 INTEGER kp1
48 _RL maskp1
49 CEOP
50
51 IF (GM_AdvForm .AND. .NOT.GM_AdvSeparate) THEN
52
53 kp1 = MIN(k+1,Nr)
54 maskp1 = 1.
55 IF (k.GE.Nr) maskp1 = 0.
56 DO j=1-OLy,sNy+OLy
57 DO i=1-OLx,sNx+OLx
58 uTrans(i,j) = uTrans(i,j)
59 & + dyG(i,j,bi,bj)*( GM_PsiX(i,j,kp1,bi,bj)*maskp1
60 & -GM_PsiX(i,j,k,bi,bj) )
61 & *maskW(i,j,k,bi,bj)
62 vTrans(i,j) = vTrans(i,j)
63 & + dxG(i,j,bi,bj)*( GM_PsiY(i,j,kp1,bi,bj)*maskp1
64 & -GM_PsiY(i,j,k,bi,bj) )
65 & *maskS(i,j,k,bi,bj)
66 ENDDO
67 ENDDO
68
69 ENDIF
70 #endif /* GM_BOLUS_ADVEC */
71 #endif /* ALLOW_GMREDI */
72
73 RETURN
74 END

  ViewVC Help
Powered by ViewVC 1.1.22