source: CPL/oasis3/trunk/src/mod/oasis3/src/mod_analysis.F90 @ 1677

Last change on this file since 1677 was 1677, checked in by aclsce, 12 years ago

Imported oasis3 (tag ipslcm5a) from cvs server to svn server (igcmg project).

File size: 8.2 KB
Line 
1MODULE mod_analysis
2!
3! -- analysis.h   18-08-95   Version 2.0beta   Author: Laurent Terray
4!    **********   01-02-96   Version 2.0 : addition of cdqdt,cgrdmap,nlumap
5!                                          and nmapfl
6!                 05-08-96   Version 2.1 : addition of nlusub, cgrdsub
7!                                          ctypsub and nsubfl (subgrid)
8!                 29-08-96   Version 2.1 : new input for subgrid, mozaic
9!                                          and anais, maximum number of
10!                                          neighbors. New input for redglo
11!                 14-04-99   Version 2.3 : new input for extrap called by
12!                                          glored. Change periodicity
13!                                          variables.
14!                 05-09-00   Version 2.5 : integral flags for check[in-out]
15!                 18-03-02   Version 2.5 : changed in module
16!                 27-06-02   Version 2.5 : scrip added
17!@
18!@  Contents : variables related to the set of analysis for each field
19!@  --------
20!@
21!@ Mask :
22!@
23!@ -- amskval : mask value for the imported field
24!@
25!@ MaskP :
26!@
27!@ -- amskvalnew : mask value for the exported field
28!@
29!@
30!@ Mozaic :
31!@
32!@ -- cgrdmap : file name for grid mapping used in mozaic (1D)
33!@
34!@ -- nlumap  : logical units associated to previous files (1D)
35!@
36!@ -- nmapfl  : mapping dataset identificator number (1D)
37!@
38!@ -- nmapvoi : maximum number of neighbors (1D)
39!@
40!@ Invert :
41!@
42!@ -- cxordbf : field ordering (longitude) before interpolation (1D)
43!@
44!@ -- cyordbf : field ordering (latitude) before interpolation (1D)
45!@
46!@ Reverse :
47!@
48!@ -- cxordaf : field ordering (longitude) after interpolation (1D)
49!@
50!@ -- cyordaf : field ordering (latitude) after interpolation (1D)
51!@
52!@ Extrap :
53!@
54!@ -- cextmet : extrapolation method (1D)
55!@
56!@ -- neighbor : number of neighbors used in extrapolation (1D)
57!@
58!@ -- neighborg : number of neighbors used in extrapolation when extrap
59!@                is called by GLORED (1D)
60!@
61!@ -- cgrdext : file names for data used in extrapolation WEIGHT (1D)
62!@
63!@ -- nluext  : logical units associated to previous files (1D)
64!@
65!@ -- nextfl  : extrapolation dataset identificator number (1D)
66!@
67!@ Interp :
68!@
69!@ -- cintmet : interpolation method (1D)
70!@
71!@ -- cgrdtyp : source grid type (1D)
72!@
73!@ -- csper   : source grid periodicity type (Periodic, Regional, Overlap)
74!@
75!@ -- ctper   : target grid periodicity type (Periodic, Regional, Overlap)
76!@
77!@ -- cfldtyp : field type (scalar or vector) (1D)
78!@
79!@ Scrip :
80!@
81!@ -- cmap_method : scrip remapping method ('CONSERV', 'BILINEAR', 'BICUBIC',
82!@                                          'GAUSWGT'or 'DISTWGT')
83!@ -- cfldtype    : field type ('SCALAR' or 'VECTOR_I' or `VECTOR_J')
84!@
85!@ -- cnorm_opt   : normalization option ('FRACAREA', 'DESTAREA' or 'NONE')
86!@
87!@ -- crsttype    : restriction type for SCRIP search ('LATITUDE', 'LATLON',
88!@                                                     or 'REDUCED')
89!@
90!@ -- nbins       : number of search bins
91!@
92!@ -- corder      : remapping order ('FIRST' or 'SECOND')
93!@
94!@ --  nscripvoi  : number of neighbour for 'GAUSWGT'or 'DISTWGT'
95!@
96!@ -- ig_assoc_input_field : number id of the associated field for vector case
97!@
98!@ -- cg_assoc_input_field : name of the associated field for vector case
99!@
100!@ -- lrotate :  logical for the rotation to cartesian referential in vector case
101!@
102!@ Filling :
103!@
104!@ -- cfilfic : file name for climatological field to complete model field (1D)
105!@
106!@ -- nlufil  : logical units connected to previous files (1D)
107!@
108!@ -- cficmet : filling method (1D)
109!@
110!@ -- cfldcor : field name for flux correction term due to SST filling
111!@
112!@ -- nlucor  : logical unit used to write flux correction term
113!@
114!@ !onserv :
115!@
116!@ -- cconmet : conservation method (1D)
117!@
118!@ Glored, redglo :
119!@
120!@ -- ntronca : gaussian troncature for reduced <-> global gaussian grid (1D)
121!@
122!@ -- cmskrd : extrapolation flag to handle processing reduced grid values (1D)
123!@
124!@ Correct :
125!@
126!@ -- afldcoef : main field multiplicative coefficient (1D)
127!@
128!@ -- ncofld : number of additional fields in correction formula (1D)
129!@
130!@ -- ccofic : file names for additional data files (2D)
131!@
132!@ -- nludat : logical units associated to previous files (2D)
133!@
134!@ -- ccofld : symbolic names for additional fields (2D)
135!@
136!@ -- acocoef : multiplicative coefficients for additional fields (2D)
137!@
138!@ Blasold :
139!@
140!@ -- afldcobo : main field multiplicative coefficient (1D)
141!@
142!@ -- nbofld : number of additional fields in linear combination formula (1D)
143!@
144!@ -- cbofld : symbolic names for additional fields (2D)
145!@
146!@ -- abocoef : multiplicative coefficients for additional fields (2D)
147!@
148!@ Blasnew :
149!@
150!@ -- afldcobn : main field multiplicative coefficient (1D)
151!@
152!@ -- nbnfld : number of additional fields in linear combination formula (1D)
153!@
154!@ -- cbnfld : symbolic names for additional fields (2D)
155!@
156!@ -- abncoef : multiplicative coefficients for additional fields (2D)
157!@
158!@ Subgrid :
159!@
160!@ -- cgrdsub : file name for subgrid data used in subgrid (1D)
161!@
162!@ -- nlusub  : logical units associated to previous files (1D)
163!@
164!@ -- ctypsub : type of subgrid interpolation (solar or non solar) (1D)
165!@
166!@ -- nsubfl  : subgrid dataset identificator number (1D)
167!@
168!@ -- nsubvoi : maximum number of neighbors (1D)
169!@
170!@ -- cfldcoa : coarse grid field name (1D)
171!@
172!@ -- cfldfin : fine grid field name (1D)
173!@
174!@ -- cdqdt   : first order taylor coefficient (1D)
175!@
176!@ Checkin :
177!@
178!@ -- ntinpflx : input field integral flag
179!@
180!@ Checkout :
181!@
182!@ -- ntoutflx : output field integral flag
183!@
184!@ Checkin, Checkout, Conserv, Gaussian
185!@
186!@ -- lsurf: Logical indicating if grid surface information has to be given
187!@            in auxiliary file areas or areas.nc
188!@
189!@ SCRIPR
190!@
191!@ -- lg_vector: Logical indicating if vector fields are treated
192!@
193!     -------------------------------------------------------------------
194!
195  USE mod_kinds_oasis
196  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: neighbor, ntronca, ncofld
197  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: neighborg, nbofld, nbnfld
198  INTEGER (kind=ip_intwp_p), DIMENSION(:,:), ALLOCATABLE :: nludat
199  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nlufil, nlumap 
200  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nmapfl, nmapvoi, nlusub
201  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nsubfl, nsubvoi, nluext
202  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nextfl, nosper, notper
203  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE ::  ntinpflx, ntoutflx, nbins
204  INTEGER (kind=ip_intwp_p) :: nlucor
205  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE ::  nscripvoi
206  INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE ::  ig_assoc_input_field
207  !
208  REAL (kind=ip_realwp_p), DIMENSION(:), ALLOCATABLE :: amskval, amskvalnew
209  REAL (kind=ip_realwp_p), DIMENSION(:,:), ALLOCATABLE :: acocoef, abocoef, abncoef
210  REAL (kind=ip_realwp_p), DIMENSION(:), ALLOCATABLE :: afldcoef, afldcobo, afldcobn
211  !
212  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cxordbf, cyordbf
213  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cxordaf, cyordaf
214  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cextmet, cintmet
215  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cgrdtyp, cfldtyp
216  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cfilfic, cfilmet 
217  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cconmet, cfldcoa
218  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cfldfin
219  CHARACTER(len=8), DIMENSION(:,:),ALLOCATABLE :: ccofld, cbofld
220  CHARACTER(len=8), DIMENSION(:,:),ALLOCATABLE :: cbnfld, ccofic
221  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cdqdt, cgrdmap
222  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cmskrd, cgrdsub
223  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: ctypsub, cgrdext
224  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: csper,ctper
225  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cmap_method, corder
226  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cnorm_opt, cfldtype
227  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: crsttype
228  CHARACTER(len=8) :: cfldcor
229  CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cg_assoc_input_field
230  !     
231  LOGICAL, DIMENSION(:),ALLOCATABLE :: lsurf, lrotate
232  LOGICAL :: lg_vector 
233
234  !    -------------------------------------------------------------------
235
236END MODULE mod_analysis
237
238
239
240
Note: See TracBrowser for help on using the repository browser.