1 |
dimitri |
1.1 |
C $Header: /u/gcmpack/MITgcm_contrib/ocean_inversion_project/code/PTRACERS.h,v 1.6 2003/10/28 00:27:48 dimitri Exp $ |
2 |
|
|
C $Name: $ |
3 |
|
|
|
4 |
|
|
#ifdef ALLOW_PTRACERS |
5 |
|
|
|
6 |
|
|
CBOP |
7 |
|
|
C !ROUTINE: PTRACERS.h |
8 |
|
|
C !INTERFACE: |
9 |
|
|
C #include PTRACERS.h |
10 |
|
|
|
11 |
|
|
C !DESCRIPTION: |
12 |
|
|
C Contains passive tracer fields and parameters. |
13 |
|
|
C This file is customized to compute CO2 perturbations from |
14 |
|
|
C 30 ocean regions for Gruber's ocean inversion project. |
15 |
|
|
|
16 |
|
|
C Package flag |
17 |
|
|
logical PTRACERSisON |
18 |
|
|
COMMON /PTRACERS_PACKAGE/ PTRACERSisON |
19 |
|
|
|
20 |
|
|
C NUMBER_OF_PTRACERS defines how many passive tracers are allocated/exist. |
21 |
|
|
C This CPP macro is *only* used in PTRACERS.h to set an integer parameter. |
22 |
|
|
C <Please> do not make use of it elsewhere. |
23 |
|
|
C |
24 |
|
|
C NUMBER_OF_PTRACERS can also be defined in CPP_OPTIONS.h, or in the |
25 |
|
|
C Makefile with DEFINES=-DNUMBER_OF_PTRACERS=4 |
26 |
|
|
C |
27 |
|
|
C If NUMBER_OF_PTRACERS is not specified elsewhere and ALLOW_PTRACERS |
28 |
|
|
C is set then NUMBER_OF_PTRACERS is set here (default 1) |
29 |
|
|
#ifndef NUMBER_OF_PTRACERS |
30 |
|
|
#define NUMBER_OF_PTRACERS 30 |
31 |
|
|
#endif |
32 |
|
|
|
33 |
|
|
C Number of tracers |
34 |
|
|
INTEGER PTRACERS_num |
35 |
|
|
PARAMETER(PTRACERS_num = NUMBER_OF_PTRACERS) |
36 |
|
|
|
37 |
|
|
C PTRACERS_taveFreq :: Frequency with which time-averaged PTRACERS |
38 |
|
|
C are written to post-processing files. |
39 |
|
|
|
40 |
|
|
C PTRACERS parameters |
41 |
|
|
_RL PTRACERS_taveFreq |
42 |
|
|
_RL PTRACERS_diffKh(PTRACERS_num) |
43 |
|
|
_RL PTRACERS_diffK4(PTRACERS_num) |
44 |
|
|
_RL PTRACERS_diffKr(PTRACERS_num) |
45 |
|
|
INTEGER PTRACERS_advScheme(PTRACERS_num) |
46 |
|
|
INTEGER PTRACERS_numInUse |
47 |
|
|
LOGICAL PTRACERS_useGMRedi(PTRACERS_num) |
48 |
|
|
LOGICAL PTRACERS_useKPP(PTRACERS_num) |
49 |
|
|
LOGICAL PTRACERS_useRecords |
50 |
|
|
CHARACTER*(MAX_LEN_FNAM) PTRACERS_initialFile(PTRACERS_num) |
51 |
|
|
COMMON /PTRACERS_PARAMS/ |
52 |
|
|
& PTRACERS_taveFreq, |
53 |
|
|
& PTRACERS_diffKh, |
54 |
|
|
& PTRACERS_diffK4, |
55 |
|
|
& PTRACERS_diffKr, |
56 |
|
|
& PTRACERS_numInUse, |
57 |
|
|
& PTRACERS_advScheme, |
58 |
|
|
& PTRACERS_initialFile, |
59 |
|
|
& PTRACERS_useGMRedi, |
60 |
|
|
& PTRACERS_useKPP, |
61 |
|
|
& PTRACERS_useRecords |
62 |
|
|
NAMELIST /PTRACERS_PARM01/ |
63 |
|
|
& PTRACERS_taveFreq, |
64 |
|
|
& PTRACERS_advScheme, |
65 |
|
|
& PTRACERS_diffKh, |
66 |
|
|
& PTRACERS_diffK4, |
67 |
|
|
& PTRACERS_diffKr, |
68 |
|
|
& PTRACERS_useGMRedi, |
69 |
|
|
& PTRACERS_useKPP, |
70 |
|
|
& PTRACERS_numInUse, |
71 |
|
|
& PTRACERS_initialFile, |
72 |
|
|
& PTRACERS_useRecords |
73 |
|
|
|
74 |
|
|
C pTracer :: passive tracer concentration (tr per unit volume). |
75 |
|
|
C gPtr :: work-space for time-stepping |
76 |
|
|
C gPtrNM1 :: work-space for time-stepping |
77 |
|
|
_RL pTracer (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
78 |
|
|
& PTRACERS_num) |
79 |
|
|
_RL gPtr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
80 |
|
|
& PTRACERS_num) |
81 |
|
|
_RL gPtrNM1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
82 |
|
|
& PTRACERS_num) |
83 |
|
|
_RL surfaceTendencyPtr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy, |
84 |
|
|
& PTRACERS_num) |
85 |
|
|
COMMON /PTRACERS_FIELDS/ |
86 |
|
|
& pTracer, gPtr, gPtrNM1, surfaceTendencyPtr |
87 |
|
|
|
88 |
|
|
C pTracerMasks :: masks used to define 30 ocean regions |
89 |
|
|
C for Gruber's ocean inversion project |
90 |
|
|
INTEGER pTracerMasks(1-OLx:sNx+OLx,1-OLy:sNy+OLy, |
91 |
|
|
& PTRACERS_num,nSx,nSy) |
92 |
|
|
COMMON /PTRACERS_MASKS/ pTracerMasks |
93 |
|
|
|
94 |
|
|
C pTracerTakahashi :: variable containing monthly mean |
95 |
|
|
C Takahashi CO2 flux climatology |
96 |
|
|
_RS pTracerTakahashi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,12,nSx,nSy) |
97 |
|
|
COMMON /PTRACERS_Takahashi/ pTracerTakahashi |
98 |
|
|
|
99 |
|
|
C pTracerAtmCO2 :: arrays containing atmospheric CO2 concentration |
100 |
|
|
integer pTracerAtm_Nrec |
101 |
|
|
PARAMETER(pTracerAtm_Nrec = 492) |
102 |
|
|
_RS pTracerAtmYear(pTracerAtm_Nrec) |
103 |
|
|
_RS pTracerAtmCO2 (pTracerAtm_Nrec) |
104 |
|
|
COMMON /PTRACERS_AtmCO2/ pTracerAtmYear, pTracerAtmCO2 |
105 |
|
|
|
106 |
|
|
CEOP |
107 |
|
|
#endif /* ALLOW_PTRACERS */ |