/[MITgcm]/MITgcm_contrib/natl_12/code/gad_biharm_y.F
ViewVC logotype

Annotation of /MITgcm_contrib/natl_12/code/gad_biharm_y.F

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


Revision 1.2 - (hide annotations) (download)
Thu Aug 7 13:03:31 2003 UTC (21 years, 11 months ago) by cnh
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +2 -2 lines
Mods to allow laplacian as well as biharmonic viscosity with varying resolution

1 cnh 1.2 C $Header: /u/gcmpack/MITgcm_contrib/natl_12/code/gad_biharm_y.F,v 1.1 2003/08/05 21:22:43 cnh Exp $
2 cnh 1.1 C $Name: $
3    
4     #include "GAD_OPTIONS.h"
5    
6     CBOP
7     C !ROUTINE: GAD_BIHARM_Y
8    
9     C !INTERFACE: ==========================================================
10     SUBROUTINE GAD_BIHARM_Y(
11     I bi,bj,k,
12     I yA,del2T,diffK4,
13     O dfy,
14     I myThid )
15    
16     C !DESCRIPTION:
17     C Calculates the meridional flux due to bi-harmonic diffusion of a tracer.
18     C Routine takes the laplacian of the tracer as argument and calculates
19     C the meridional gradient:
20     C \begin{equation*}
21     C F^y_{diff} = \kappa_4 \partial_y \nabla^2 \theta
22     C \end{equation*}
23    
24     C !USES: ===============================================================
25     IMPLICIT NONE
26     #include "SIZE.h"
27     #include "GRID.h"
28    
29     C !INPUT PARAMETERS: ===================================================
30     C bi,bj :: tile indices
31     C k :: vertical level
32     C yA :: area of face at V points
33     C del2T :: Laplacian of tracer
34     C myThid :: thread number
35     INTEGER bi,bj,k
36     _RS yA (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
37     _RL del2T(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
38     _RL diffK4
39     INTEGER myThid
40    
41     C !OUTPUT PARAMETERS: ==================================================
42     C dfy :: meridional diffusive flux
43     _RL dfy (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
44    
45     C !LOCAL VARIABLES: ====================================================
46     C i,j :: loop indices
47     INTEGER i,j
48     _RS gridScalingK4
49     CEOP
50    
51     C Difference of meridional fluxes ...
52     DO i=1-Olx,sNx+Olx
53     dfy(i,1-Oly) = 0.
54     ENDDO
55     DO j=1-Oly+1,sNy+Oly
56     DO i=1-Olx,sNx+Olx
57 cnh 1.2 gridScalingK4 = (_dyC(i,j,bi,bj)**4. _d 0)/(5000. _d 0**4. _d 0)
58 cnh 1.1 dfy(i,j) = diffK4
59     & *gridScalingK4
60     & *yA(i,j)
61     & *(del2T(i,j)-del2T(i,j-1))*_recip_dyC(i,j,bi,bj)
62     #ifdef ISOTROPIC_COS_SCALING
63     #ifdef COSINEMETH_III
64     & *sqCosFacV(j,bi,bj)
65     #else
66     & *CosFacV(j,bi,bj)
67     #endif
68     #endif
69     ENDDO
70     ENDDO
71    
72     RETURN
73     END

  ViewVC Help
Powered by ViewVC 1.1.22