1 |
C $Header: /u/gcmpack/MITgcm/pkg/profiles/profiles.h,v 1.6 2006/10/25 22:19:57 gforget Exp $ |
2 |
C $Name: $ |
3 |
|
4 |
C============================================================ |
5 |
C NOBSMAX : maximal number of profiles |
6 |
C============================================================ |
7 |
INTEGER NOBSGLOB |
8 |
PARAMETER ( NOBSGLOB = 200000 ) |
9 |
INTEGER NFILESPROFMAX |
10 |
PARAMETER ( NFILESPROFMAX=10 ) |
11 |
INTEGER NVARMAX |
12 |
PARAMETER ( NVARMAX=6 ) |
13 |
INTEGER NLEVELMAX |
14 |
PARAMETER ( NLEVELMAX=100 ) |
15 |
INTEGER NUM_INTERP_POINTS |
16 |
PARAMETER (NUM_INTERP_POINTS = 4) |
17 |
|
18 |
C=========================================================== |
19 |
C variables |
20 |
C=========================================================== |
21 |
_RL prof_time(NFILESPROFMAX,NOBSGLOB,nsx,nsy), |
22 |
& prof_lon(NFILESPROFMAX,NOBSGLOB,nsx,nsy), |
23 |
& prof_lat(NFILESPROFMAX,NOBSGLOB,nsx,nsy) |
24 |
|
25 |
#ifdef ALLOW_PROFILES_GENERICGRID |
26 |
_RL prof_interp_xC11(NFILESPROFMAX,NOBSGLOB,nsx,nsy) |
27 |
_RL prof_interp_yC11(NFILESPROFMAX,NOBSGLOB,nsx,nsy) |
28 |
_RL prof_interp_xCNINJ(NFILESPROFMAX,NOBSGLOB,nsx,nsy) |
29 |
_RL prof_interp_yCNINJ(NFILESPROFMAX,NOBSGLOB,nsx,nsy) |
30 |
_RL prof_interp_weights(NFILESPROFMAX,NOBSGLOB, |
31 |
& NUM_INTERP_POINTS,nsx,nsy) |
32 |
integer prof_interp_i(NFILESPROFMAX,NOBSGLOB, |
33 |
& NUM_INTERP_POINTS,nsx,nsy) |
34 |
integer prof_interp_j(NFILESPROFMAX,NOBSGLOB, |
35 |
& NUM_INTERP_POINTS,nsx,nsy) |
36 |
#endif |
37 |
|
38 |
integer prof_ind_glob(NFILESPROFMAX,NOBSGLOB,nsx,nsy) |
39 |
_RL prof_depth(NFILESPROFMAX,NLEVELMAX,nsx,nsy) |
40 |
_RL prof_mask1D_cur(NLEVELMAX,nsx,nsy) |
41 |
_RL prof_etan_mean(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
42 |
|
43 |
integer profNo(NFILESPROFMAX,nsx,nsy) |
44 |
integer profDepthNo(NFILESPROFMAX,nsx,nsy) |
45 |
|
46 |
logical vec_quantities(NFILESPROFMAX,NVARMAX,nsx,nsy) |
47 |
integer fidforward(NFILESPROFMAX,nsx,nsy), |
48 |
& fidadjoint(NFILESPROFMAX,nsx,nsy), |
49 |
& fidtangent(NFILESPROFMAX,nsx,nsy) |
50 |
integer fiddata(NFILESPROFMAX,nsx,nsy) |
51 |
character*(8) prof_names(NVARMAX) |
52 |
character*(12) prof_namesmask(NVARMAX) |
53 |
character*(14) prof_namesweight(NVARMAX) |
54 |
|
55 |
_RL profiles_data_buff(NLEVELMAX,1000,NVARMAX,nsx,nsy) |
56 |
_RL profiles_weight_buff(NLEVELMAX,1000,NVARMAX,nsx,nsy) |
57 |
integer profiles_minind_buff(nsx,nsy) |
58 |
integer profiles_maxind_buff(nsx,nsy) |
59 |
integer profiles_curfile_buff(nsx,nsy) |
60 |
|
61 |
integer profilesfile_equi_type |
62 |
integer prof_num_var_tot(NFILESPROFMAX,nsx,nsy) |
63 |
integer prof_num_var_cur(NFILESPROFMAX,NVARMAX,nsx,nsy) |
64 |
|
65 |
C=========================================================== |
66 |
C Common Blocks |
67 |
C=========================================================== |
68 |
|
69 |
COMMON /profiles_r/ prof_time, prof_lon, prof_lat, |
70 |
& prof_depth, prof_mask1D_cur, prof_etan_mean |
71 |
COMMON /profiles_i/ prof_ind_glob, profNo, profDepthNo, |
72 |
& fidforward, fidadjoint, fidtangent, fiddata, |
73 |
& prof_num_var_tot, prof_num_var_cur, profilesfile_equi_type |
74 |
COMMON /profiles_l/ vec_quantities |
75 |
COMMON /profiles_c/ prof_names, prof_namesmask, prof_namesweight |
76 |
|
77 |
#ifdef ALLOW_PROFILES_GENERICGRID |
78 |
COMMON /profiles_GenericGrid_r/ prof_interp_weights, |
79 |
& prof_interp_xC11, prof_interp_yC11, |
80 |
& prof_interp_xCNINJ, prof_interp_yCNINJ |
81 |
COMMON /profiles_GenericGrid_i/ |
82 |
& prof_interp_i, prof_interp_j |
83 |
#endif |
84 |
|
85 |
COMMON /profiles_buff_r/ profiles_data_buff, profiles_weight_buff |
86 |
COMMON /profiles_buff_i/ |
87 |
& profiles_minind_buff, profiles_maxind_buff, profiles_curfile_buff |
88 |
|
89 |
|
90 |
COMMON /profiles_cost_r/ |
91 |
& objf_profiles, |
92 |
& num_profiles, |
93 |
& mult_profiles |
94 |
_RL objf_profiles(NFILESPROFMAX,NVARMAX,nsx,nsy) |
95 |
_RL num_profiles(NFILESPROFMAX,NVARMAX,nsx,nsy) |
96 |
_RL mult_profiles(NFILESPROFMAX,NVARMAX) |
97 |
|
98 |
COMMON /profiles_cost_c/ |
99 |
& profilesfiles |
100 |
character*(MAX_LEN_FNAM) profilesfiles(50) |
101 |
|
102 |
COMMON /profiles_ctrl_dummy/ |
103 |
& profiles_dummy |
104 |
_RL profiles_dummy(NFILESPROFMAX,NVARMAX,nsx,nsy) |
105 |
|
106 |
|