Oasis3 4.0.2
|
00001 MODULE mod_analysis 00002 ! 00003 ! -- analysis.h 18-08-95 Version 2.0beta Author: Laurent Terray 00004 ! ********** 01-02-96 Version 2.0 : addition of cdqdt,cgrdmap,nlumap 00005 ! and nmapfl 00006 ! 05-08-96 Version 2.1 : addition of nlusub, cgrdsub 00007 ! ctypsub and nsubfl (subgrid) 00008 ! 29-08-96 Version 2.1 : new input for subgrid, mozaic 00009 ! and anais, maximum number of 00010 ! neighbors. New input for redglo 00011 ! 14-04-99 Version 2.3 : new input for extrap called by 00012 ! glored. Change periodicity 00013 ! variables. 00014 ! 05-09-00 Version 2.5 : integral flags for check[in-out] 00015 ! 18-03-02 Version 2.5 : changed in module 00016 ! 27-06-02 Version 2.5 : scrip added 00017 !@ 00018 !@ Contents : variables related to the set of analysis for each field 00019 !@ -------- 00020 !@ 00021 !@ Mask : 00022 !@ 00023 !@ -- amskval : mask value for the imported field 00024 !@ 00025 !@ MaskP : 00026 !@ 00027 !@ -- amskvalnew : mask value for the exported field 00028 !@ 00029 !@ 00030 !@ Mozaic : 00031 !@ 00032 !@ -- cgrdmap : file name for grid mapping used in mozaic (1D) 00033 !@ 00034 !@ -- nlumap : logical units associated to previous files (1D) 00035 !@ 00036 !@ -- nmapfl : mapping dataset identificator number (1D) 00037 !@ 00038 !@ -- nmapvoi : maximum number of neighbors (1D) 00039 !@ 00040 !@ Invert : 00041 !@ 00042 !@ -- cxordbf : field ordering (longitude) before interpolation (1D) 00043 !@ 00044 !@ -- cyordbf : field ordering (latitude) before interpolation (1D) 00045 !@ 00046 !@ Reverse : 00047 !@ 00048 !@ -- cxordaf : field ordering (longitude) after interpolation (1D) 00049 !@ 00050 !@ -- cyordaf : field ordering (latitude) after interpolation (1D) 00051 !@ 00052 !@ Extrap : 00053 !@ 00054 !@ -- cextmet : extrapolation method (1D) 00055 !@ 00056 !@ -- neighbor : number of neighbors used in extrapolation (1D) 00057 !@ 00058 !@ -- neighborg : number of neighbors used in extrapolation when extrap 00059 !@ is called by GLORED (1D) 00060 !@ 00061 !@ -- cgrdext : file names for data used in extrapolation WEIGHT (1D) 00062 !@ 00063 !@ -- nluext : logical units associated to previous files (1D) 00064 !@ 00065 !@ -- nextfl : extrapolation dataset identificator number (1D) 00066 !@ 00067 !@ Interp : 00068 !@ 00069 !@ -- cintmet : interpolation method (1D) 00070 !@ 00071 !@ -- cgrdtyp : source grid type (1D) 00072 !@ 00073 !@ -- csper : source grid periodicity type (P=Periodic, R=Regional) 00074 !@ 00075 !@ -- ctper : target grid periodicity type (P=Periodic, R=Regional) 00076 !@ 00077 !@ -- cfldtyp : field type (scalar or vector) (1D) 00078 !@ 00079 !@ Scrip : 00080 !@ 00081 !@ -- cmap_method : scrip remapping method ('CONSERV', 'BILINEAR', 'BICUBIC', 00082 !@ 'GAUSWGT'or 'DISTWGT') 00083 !@ -- cfldtype : field type ('SCALAR' or 'VECTOR_I' or 'VECTOR_J') 00084 !@ 00085 !@ -- cnorm_opt : normalization option ('FRACAREA', 'DESTAREA' or 'NONE') 00086 !@ 00087 !@ -- crsttype : restriction type for SCRIP search ('LATITUDE', 'LATLON', 00088 !@ or 'REDUCED') 00089 !@ 00090 !@ -- nbins : number of search bins 00091 !@ 00092 !@ -- corder : remapping order ('FIRST' or 'SECOND') 00093 !@ 00094 !@ -- nscripvoi : number of neighbour for 'GAUSWGT'or 'DISTWGT' 00095 !@ 00096 !@ -- ig_assoc_input_field : number id of the associated field for vector case 00097 !@ 00098 !@ -- cg_assoc_input_field : name of the associated field for vector case 00099 !@ 00100 !@ -- lrotate : logical for the rotation to cartesian referential in vector case 00101 !@ 00102 !@ Filling : 00103 !@ 00104 !@ -- cfilfic : file name for climatological field to complete model field (1D) 00105 !@ 00106 !@ -- nlufil : logical units connected to previous files (1D) 00107 !@ 00108 !@ -- cficmet : filling method (1D) 00109 !@ 00110 !@ -- cfldcor : field name for flux correction term due to SST filling 00111 !@ 00112 !@ -- nlucor : logical unit used to write flux correction term 00113 !@ 00114 !@ !onserv : 00115 !@ 00116 !@ -- cconmet : conservation method (1D) 00117 !@ 00118 !@ Glored, redglo : 00119 !@ 00120 !@ -- ntronca : gaussian troncature for reduced <-> global gaussian grid (1D) 00121 !@ 00122 !@ -- cmskrd : extrapolation flag to handle processing reduced grid values (1D) 00123 !@ 00124 !@ Correct : 00125 !@ 00126 !@ -- afldcoef : main field multiplicative coefficient (1D) 00127 !@ 00128 !@ -- ncofld : number of additional fields in correction formula (1D) 00129 !@ 00130 !@ -- ccofic : file names for additional data files (2D) 00131 !@ 00132 !@ -- nludat : logical units associated to previous files (2D) 00133 !@ 00134 !@ -- ccofld : symbolic names for additional fields (2D) 00135 !@ 00136 !@ -- acocoef : multiplicative coefficients for additional fields (2D) 00137 !@ 00138 !@ Blasold : 00139 !@ 00140 !@ -- afldcobo : main field multiplicative coefficient (1D) 00141 !@ 00142 !@ -- nbofld : number of additional fields in linear combination formula (1D) 00143 !@ 00144 !@ -- cbofld : symbolic names for additional fields (2D) 00145 !@ 00146 !@ -- abocoef : multiplicative coefficients for additional fields (2D) 00147 !@ 00148 !@ Blasnew : 00149 !@ 00150 !@ -- afldcobn : main field multiplicative coefficient (1D) 00151 !@ 00152 !@ -- nbnfld : number of additional fields in linear combination formula (1D) 00153 !@ 00154 !@ -- cbnfld : symbolic names for additional fields (2D) 00155 !@ 00156 !@ -- abncoef : multiplicative coefficients for additional fields (2D) 00157 !@ 00158 !@ Subgrid : 00159 !@ 00160 !@ -- cgrdsub : file name for subgrid data used in subgrid (1D) 00161 !@ 00162 !@ -- nlusub : logical units associated to previous files (1D) 00163 !@ 00164 !@ -- ctypsub : type of subgrid interpolation (solar or non solar) (1D) 00165 !@ 00166 !@ -- nsubfl : subgrid dataset identificator number (1D) 00167 !@ 00168 !@ -- nsubvoi : maximum number of neighbors (1D) 00169 !@ 00170 !@ -- cfldcoa : coarse grid field name (1D) 00171 !@ 00172 !@ -- cfldfin : fine grid field name (1D) 00173 !@ 00174 !@ -- cdqdt : first order taylor coefficient (1D) 00175 !@ 00176 !@ Checkin : 00177 !@ 00178 !@ -- ntinpflx : input field integral flag 00179 !@ 00180 !@ Checkout : 00181 !@ 00182 !@ -- ntoutflx : output field integral flag 00183 !@ 00184 !@ Checkin, Checkout, Conserv, Gaussian 00185 !@ 00186 !@ -- lsurf: Logical indicating if grid surface information has to be given 00187 !@ in auxiliary file areas or areas.nc for each field 00188 !@ -- lg_areas: Logical indicating if grid surface file has to exist. 00189 !@ 00190 !@ SCRIPR 00191 !@ 00192 !@ -- lg_vector: Logical indicating if vector fields are treated 00193 !@ 00194 ! ------------------------------------------------------------------- 00195 ! 00196 USE mod_kinds_oasis 00197 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: neighbor, ntronca, ncofld 00198 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: neighborg, nbofld, nbnfld 00199 INTEGER (kind=ip_intwp_p), DIMENSION(:,:), ALLOCATABLE :: nludat 00200 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nlufil, nlumap 00201 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nmapfl, nmapvoi, nlusub 00202 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nsubfl, nsubvoi, nluext 00203 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nextfl, nosper, notper 00204 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: ntinpflx, ntoutflx, nbins 00205 INTEGER (kind=ip_intwp_p) :: nlucor 00206 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: nscripvoi 00207 INTEGER (kind=ip_intwp_p), DIMENSION(:), ALLOCATABLE :: ig_assoc_input_field 00208 ! 00209 REAL (kind=ip_realwp_p), DIMENSION(:), ALLOCATABLE :: amskval, amskvalnew 00210 REAL (kind=ip_realwp_p), DIMENSION(:,:), ALLOCATABLE :: acocoef, abocoef, abncoef 00211 REAL (kind=ip_realwp_p), DIMENSION(:), ALLOCATABLE :: afldcoef, afldcobo, afldcobn 00212 ! 00213 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cxordbf, cyordbf 00214 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cxordaf, cyordaf 00215 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cextmet, cintmet 00216 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cgrdtyp, cfldtyp 00217 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cfilfic, cfilmet 00218 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cconmet, cfldcoa 00219 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cfldfin 00220 CHARACTER(len=8), DIMENSION(:,:),ALLOCATABLE :: ccofld, cbofld 00221 CHARACTER(len=8), DIMENSION(:,:),ALLOCATABLE :: cbnfld, ccofic 00222 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cdqdt, cgrdmap 00223 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cmskrd, cgrdsub 00224 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: ctypsub, cgrdext 00225 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: csper,ctper 00226 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cmap_method, corder 00227 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cnorm_opt, cfldtype 00228 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: crsttype 00229 CHARACTER(len=8) :: cfldcor 00230 CHARACTER(len=8), DIMENSION(:),ALLOCATABLE :: cg_assoc_input_field 00231 ! 00232 LOGICAL, DIMENSION(:),ALLOCATABLE :: lsurf, lrotate 00233 LOGICAL :: lg_areas 00234 LOGICAL :: lg_vector 00235 00236 ! ------------------------------------------------------------------- 00237 00238 END MODULE mod_analysis 00239 00240 00241 00242