1 |
adcroft |
1.1 |
C $Header: $ |
2 |
|
|
C $Name: $ |
3 |
|
|
|
4 |
|
|
c ================================================================== |
5 |
|
|
c HEADER flt |
6 |
|
|
c ================================================================== |
7 |
|
|
c |
8 |
|
|
c o This header file contains variables that are used by the |
9 |
|
|
c flt package. |
10 |
|
|
c |
11 |
|
|
c ================================================================== |
12 |
|
|
c HEADER flt |
13 |
|
|
c ================================================================== |
14 |
|
|
c |
15 |
|
|
c |
16 |
|
|
c max_npart - total number of floats |
17 |
|
|
c (this is read from the input files) |
18 |
|
|
c |
19 |
|
|
_RL max_npart |
20 |
|
|
common /flt_n/ max_npart |
21 |
|
|
|
22 |
|
|
|
23 |
|
|
c max_npart_tile - maximum number of floats on a tile |
24 |
|
|
c normally npart_tile < max_npart, but could be the same |
25 |
|
|
c for safety |
26 |
|
|
c max_npart_exch - maximum number of floats on a tile that can be |
27 |
|
|
c exchanged at one time |
28 |
|
|
c normally max_npart_exch < max_npart_tile, |
29 |
|
|
c but could be the same for safety |
30 |
|
|
c |
31 |
|
|
INTEGER max_npart_tile, max_npart_exch |
32 |
|
|
parameter (max_npart_tile = 300) |
33 |
|
|
parameter (max_npart_exch = 50) |
34 |
|
|
|
35 |
|
|
c npart_tile - actual number of floats per tile |
36 |
|
|
c |
37 |
|
|
INTEGER npart_tile(nSx,nSy) |
38 |
|
|
common /flt_t/ npart_tile |
39 |
|
|
|
40 |
|
|
c npart - float identifier |
41 |
|
|
c xpart - x position of float (in units of XC) |
42 |
|
|
c ypart - y position of float (in units of YC) |
43 |
|
|
c kpart - vertical level of float (might be decimal |
44 |
|
|
c number in case of 3D floats) |
45 |
|
|
c tstart - start date of integration of float, in s. |
46 |
|
|
c Note: If tstart=-1 floats are integrated right from the |
47 |
|
|
c beginning |
48 |
|
|
c tend - end date of integration of float, in s. |
49 |
|
|
c Note: If tend=-1 floats are integrated till the end of |
50 |
|
|
c integration |
51 |
|
|
c kfloat - target depth of float. |
52 |
|
|
c iup - flag if the float |
53 |
|
|
c should profile ( > 0 = return cycle, in s, to surface) |
54 |
|
|
c remain at depth ( = 0 ) |
55 |
|
|
c is a 3D float ( = -1 ). |
56 |
|
|
c should be advected WITHOUT additional noise ( = -2 ). |
57 |
|
|
c This implies that the float is non-profiling |
58 |
|
|
c is a mooring ( = -3 ), i.e. the float is not advected |
59 |
|
|
c itop - time of float the surface, in s |
60 |
|
|
c |
61 |
|
|
_RL npart(max_npart_tile,nSx,nSy) |
62 |
|
|
_RL tstart(max_npart_tile,nSx,nSy) |
63 |
|
|
_RL tend(max_npart_tile,nSx,nSy) |
64 |
|
|
_RL xpart(max_npart_tile,nSx,nSy) |
65 |
|
|
_RL ypart(max_npart_tile,nSx,nSy) |
66 |
|
|
_RL kpart(max_npart_tile,nSx,nSy) |
67 |
|
|
_RL kfloat(max_npart_tile,nSx,nSy) |
68 |
|
|
_RL iup(max_npart_tile,nSx,nSy) |
69 |
|
|
_RL itop(max_npart_tile,nSx,nSy) |
70 |
|
|
|
71 |
|
|
common /flt_v/ npart,tstart,tend,xpart,ypart,kpart,kfloat,iup,itop |
72 |
|
|
|
73 |
|
|
c flt_int_traj - period between storing model state at float position, in s |
74 |
|
|
c flt_int_prof - period between float vertical profiles, in s |
75 |
|
|
c |
76 |
|
|
c note: flt_int_prof is the time between getting profiles, NOT the |
77 |
|
|
c the return cycle of the float to the surface. The latter can |
78 |
|
|
c be specified individually for every float. Because the mechanism |
79 |
|
|
c for returning to the surface is called in the profiling routine |
80 |
|
|
c flt_int_prof has to be the minimum of all iup(max_npart). |
81 |
|
|
c The subsampling of profiles can be done later in the analysis. |
82 |
|
|
c |
83 |
|
|
_RL flt_int_traj, flt_int_prof |
84 |
|
|
common /flt_param_i/ flt_int_traj, flt_int_prof |
85 |
|
|
|
86 |
|
|
c flt_surf - "surface" level of the floats. |
87 |
|
|
c Can be deeper than 1, e.g. if no mixed layer model is used |
88 |
|
|
_RL flt_surf |
89 |
|
|
parameter (flt_surf = 1.) |
90 |
|
|
|
91 |
|
|
c flt_nan - qualifier for a float that is not yet released or that died |
92 |
|
|
c |
93 |
|
|
_RL flt_nan |
94 |
|
|
parameter (flt_nan = -999.) |
95 |
|
|
|
96 |
|
|
c flt_noise - range of noise added to the velocity component |
97 |
|
|
c (randomly). The noise can be added or subtracted, |
98 |
|
|
c the range is +/- flt_noise/2 |
99 |
|
|
c |
100 |
|
|
_RL flt_noise |
101 |
|
|
common /flt_param_n/ flt_noise |
102 |
|
|
|
103 |
|
|
c flt_file - name of the file containing the initial/restart positions. |
104 |
|
|
c At initialization the program first looks for a global |
105 |
|
|
c file flt_file.data. If that is not found it looks |
106 |
|
|
c for flt_file.iG.jG.data. That is also written as a restart |
107 |
|
|
c |
108 |
|
|
CHARACTER*(MAX_LEN_FNAM) flt_file |
109 |
|
|
common /flt_param_d/ flt_file |