/[MITgcm]/MITgcm/pkg/ptracers/ptracers_forcing.F
ViewVC logotype

Annotation of /MITgcm/pkg/ptracers/ptracers_forcing.F

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


Revision 1.6 - (hide annotations) (download)
Sun Jul 18 01:12:04 2004 UTC (19 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint54d_post, checkpoint54e_post, checkpoint55, checkpoint56, checkpoint54f_post, checkpoint55a_post, checkpoint55i_post, checkpoint55c_post, checkpoint55g_post, checkpoint55d_post, checkpoint55d_pre, checkpoint55j_post, checkpoint55h_post, checkpoint55b_post, checkpoint55f_post, checkpoint55e_post, checkpoint54c_post
Changes since 1.5: +7 -7 lines
replace surfaceTendencyPtr by surfaceForcingPtr

1 jmc 1.6 C $Header: /u/gcmpack/MITgcm/pkg/ptracers/ptracers_forcing.F,v 1.5 2003/10/26 01:10:34 heimbach Exp $
2 heimbach 1.2 C $Name: $
3 adcroft 1.1
4     #include "PTRACERS_OPTIONS.h"
5    
6     CBOP
7     C !ROUTINE: PTRACERS_FORCING
8    
9     C !INTERFACE: ==========================================================
10     SUBROUTINE PTRACERS_FORCING(
11 heimbach 1.5 I bi,bj,iMin,iMax,jMin,jMax,k,
12     U gPtracer,surfPtracer,
13 adcroft 1.1 I myIter,myTime,myThid )
14    
15     C !DESCRIPTION:
16     C Adds sources and sinks of passive tracers to the tendancy arrays
17    
18     C !USES: ===============================================================
19     IMPLICIT NONE
20     #include "SIZE.h"
21     #include "EEPARAMS.h"
22     #include "PARAMS.h"
23 jmc 1.6 c #include "FFIELDS.h"
24     c #include "DYNVARS.h"
25 adcroft 1.1 #include "GRID.h"
26    
27     C !INPUT PARAMETERS: ===================================================
28     C bi,bj :: tile indices
29 dimitri 1.4 C iMin iMax jMin jMax :: working range of tile for applying forcing
30 adcroft 1.1 C k :: vertical level number
31     C gPtracer :: the tendancy array
32     C myIter :: time-step number
33     C myTime :: model time
34     C myThid :: thread number
35 heimbach 1.5 INTEGER bi,bj,iMin, iMax, jMin, jMax,k
36 adcroft 1.1 _RL gPtracer(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr,nSx,nSy)
37 heimbach 1.5 _RL surfPtracer(1-Olx:sNx+Olx,1-Oly:sNy+Oly,nSx,nSy)
38 adcroft 1.1 INTEGER myIter
39     _RL myTime
40     INTEGER myThid
41    
42     C !OUTPUT PARAMETERS: ==================================================
43     C gPtracer :: updates tendancy array
44    
45     #ifdef ALLOW_PTRACERS
46    
47     C !LOCAL VARIABLES: ====================================================
48     C i,j :: loop indices
49     INTEGER i,j
50 dimitri 1.4 C number of surface interface layer
51     INTEGER kSurface
52 adcroft 1.1 CEOP
53    
54 dimitri 1.4 if ( buoyancyRelation .eq. 'OCEANICP' ) then
55     kSurface = Nr
56     else
57     kSurface = 1
58     endif
59    
60 jmc 1.6 C-- Surface forcing term is surfaceForcingPtr, previously computed
61 dimitri 1.4 C by PTRACERS_FORCING because it is needed by KPP_TRANSPORT_PTR.
62    
63     IF ( k .EQ. kSurface ) THEN
64     DO j=jMin,jMax
65     DO i=iMin,iMax
66 jmc 1.6 gPtracer(i,j,k,bi,bj) = gPtracer(i,j,k,bi,bj)
67     & + surfPtracer(i,j,bi,bj)
68     & *recip_drF(k)*recip_hFacC(i,j,k,bi,bj)
69 adcroft 1.1 ENDDO
70     ENDDO
71     ENDIF
72    
73     #endif /* ALLOW_PTRACERS */
74    
75     RETURN
76     END

  ViewVC Help
Powered by ViewVC 1.1.22