Changeset 1783 for palm/trunk/SOURCE/modules.f90
- Timestamp:
- Mar 6, 2016 6:36:17 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/modules.f90
r1780 r1783 19 19 ! Current revisions: 20 20 ! ------------------ 21 ! 21 ! netcdf variables moved to the netcdf-interface module 22 22 ! 23 23 ! Former revisions: … … 614 614 return_addres, return_username, & 615 615 timestep_scheme = 'runge-kutta-3' 616 CHARACTER (LEN=40) :: avs_data_file, output_format_netcdf, & 617 topography = 'flat' 616 CHARACTER (LEN=40) :: avs_data_file, topography = 'flat' 618 617 CHARACTER (LEN=64) :: host = ' ' 619 618 CHARACTER (LEN=80) :: log_message, run_identifier … … 629 628 CHARACTER (LEN=20), DIMENSION(300) :: data_output_pr = ' ' 630 629 CHARACTER (LEN=20), DIMENSION(200) :: data_output_pr_user = ' ' 631 CHARACTER (LEN=20), DIMENSION(11) :: netcdf_precision = ' '632 633 630 CHARACTER (LEN=20), DIMENSION(max_masks,0:1,100) :: domask = ' ' 634 631 CHARACTER (LEN=20), DIMENSION(0:1,100) :: do2d = ' ', do3d = ' ' … … 653 650 maximum_parallel_io_streams = -1, max_pr_user = 0, & 654 651 mgcycles = 0, mg_cycles = -1, mg_switch_to_pe0_level = 0, mid, & 655 nlsf = 1000, ntnudge = 1000, n etcdf_data_format = 2, ngsrb = 2, &652 nlsf = 1000, ntnudge = 1000, ngsrb = 2, & 656 653 nr_timesteps_this_run = 0, & 657 654 nsor = 20, nsor_ini = 100, n_sor, normalizing_region = 0, & … … 1153 1150 1154 1151 1155 !------------------------------------------------------------------------------!1156 ! Description:1157 ! ------------1158 !> Definition of parameters and variables for netcdf control.1159 !------------------------------------------------------------------------------!1160 MODULE netcdf_control1161 1162 USE control_parameters, ONLY: max_masks1163 USE kinds1164 #if defined( __netcdf )1165 USE netcdf1166 #endif1167 1168 INTEGER(iwp), PARAMETER :: dopr_norm_num = 7, dopts_num = 29, dots_max = 1001169 1170 INTEGER(iwp) :: dots_num = 231171 1172 CHARACTER (LEN=6), DIMENSION(dopr_norm_num) :: dopr_norm_names = &1173 (/ 'wpt0 ', 'ws2 ', 'tsw2 ', 'ws3 ', 'ws2tsw', 'wstsw2', &1174 'z_i ' /)1175 1176 CHARACTER (LEN=6), DIMENSION(dopr_norm_num) :: dopr_norm_longnames = &1177 (/ 'wpt0 ', 'w*2 ', 't*w2 ', 'w*3 ', 'w*2t*w', 'w*t*w2', &1178 'z_i ' /)1179 1180 CHARACTER (LEN=7), DIMENSION(dopts_num) :: dopts_label = &1181 (/ 'tnpt ', 'x_ ', 'y_ ', 'z_ ', 'z_abs ', 'u ', &1182 'v ', 'w ', 'u" ', 'v" ', 'w" ', 'npt_up ', &1183 'w_up ', 'w_down ', 'radius ', 'r_min ', 'r_max ', 'npt_max', &1184 'npt_min', 'x*2 ', 'y*2 ', 'z*2 ', 'u*2 ', 'v*2 ', &1185 'w*2 ', 'u"2 ', 'v"2 ', 'w"2 ', 'npt*2 ' /)1186 1187 CHARACTER (LEN=7), DIMENSION(dopts_num) :: dopts_unit = &1188 (/ 'number ', 'm ', 'm ', 'm ', 'm ', 'm/s ', &1189 'm/s ', 'm/s ', 'm/s ', 'm/s ', 'm/s ', 'number ', &1190 'm/s ', 'm/s ', 'm ', 'm ', 'm ', 'number ', &1191 'number ', 'm2 ', 'm2 ', 'm2 ', 'm2/s2 ', 'm2/s2 ', &1192 'm2/s2 ', 'm2/s2 ', 'm2/s2 ', 'm2/s2 ', 'number2' /)1193 1194 CHARACTER (LEN=13), DIMENSION(dots_max) :: dots_label = &1195 (/ 'E ', 'E* ', 'dt ', &1196 'u* ', 'th* ', 'umax ', &1197 'vmax ', 'wmax ', 'div_new ', &1198 'div_old ', 'z_i_wpt ', 'z_i_pt ', &1199 'w* ', 'w"pt"0 ', 'w"pt" ', &1200 'wpt ', 'pt(0) ', 'pt(z_mo) ', &1201 'w"u"0 ', 'w"v"0 ', 'w"q"0 ', &1202 'ol ', 'q* ', &1203 ( 'unknown ', i9 = 1, dots_max-23 ) /)1204 1205 CHARACTER (LEN=13), DIMENSION(dots_max) :: dots_unit = &1206 (/ 'm2/s2 ', 'm2/s2 ', 's ', &1207 'm/s ', 'K ', 'm/s ', &1208 'm/s ', 'm/s ', 's-1 ', &1209 's-1 ', 'm ', 'm ', &1210 'm/s ', 'K m/s ', 'K m/s ', &1211 'K m/s ', 'K ', 'K ', &1212 'm2/s2 ', 'm2/s2 ', 'kg m/s ', &1213 'm ', 'kg/kg ', &1214 ( 'unknown ', i9 = 1, dots_max-23 ) /)1215 1216 CHARACTER (LEN=9), DIMENSION(300) :: dopr_unit = 'unknown'1217 1218 CHARACTER (LEN=7), DIMENSION(0:1,100) :: do2d_unit, do3d_unit1219 1220 CHARACTER (LEN=16), DIMENSION(25) :: prt_var_names = &1221 (/ 'pt_age ', 'pt_dvrp_size ', 'pt_origin_x ', &1222 'pt_origin_y ', 'pt_origin_z ', 'pt_radius ', &1223 'pt_speed_x ', 'pt_speed_y ', 'pt_speed_z ', &1224 'pt_weight_factor', 'pt_x ', 'pt_y ', &1225 'pt_z ', 'pt_color ', 'pt_group ', &1226 'pt_tailpoints ', 'pt_tail_id ', 'pt_density_ratio', &1227 'pt_exp_arg ', 'pt_exp_term ', 'not_used ', &1228 'not_used ', 'not_used ', 'not_used ', &1229 'not_used ' /)1230 1231 CHARACTER (LEN=16), DIMENSION(25) :: prt_var_units = &1232 (/ 'seconds ', 'meters ', 'meters ', &1233 'meters ', 'meters ', 'meters ', &1234 'm/s ', 'm/s ', 'm/s ', &1235 'factor ', 'meters ', 'meters ', &1236 'meters ', 'none ', 'none ', &1237 'none ', 'none ', 'ratio ', &1238 'none ', 'none ', 'not_used ', &1239 'not_used ', 'not_used ', 'not_used ', &1240 'not_used ' /)1241 1242 INTEGER(iwp) :: id_dim_prtnum, id_dim_time_pr, id_dim_time_prt, &1243 id_dim_time_pts, id_dim_time_sp, id_dim_time_ts, id_dim_x_sp, &1244 id_dim_y_sp, id_dim_zu_sp, id_dim_zw_sp, id_set_pr, &1245 id_set_prt, id_set_pts, id_set_sp, id_set_ts, id_var_prtnum, &1246 id_var_rnop_prt, id_var_time_pr, id_var_time_prt, &1247 id_var_time_pts, id_var_time_sp, id_var_time_ts, id_var_x_sp, &1248 id_var_y_sp, id_var_zu_sp, id_var_zw_sp, nc_stat1249 1250 INTEGER(iwp), DIMENSION(0:1) :: id_dim_time_xy, id_dim_time_xz, &1251 id_dim_time_yz, id_dim_time_3d, id_dim_x_xy, id_dim_xu_xy, &1252 id_dim_x_xz, id_dim_xu_xz, id_dim_x_yz, id_dim_xu_yz, &1253 id_dim_x_3d, id_dim_xu_3d, id_dim_y_xy, id_dim_yv_xy, &1254 id_dim_y_xz, id_dim_yv_xz, id_dim_y_yz, id_dim_yv_yz, &1255 id_dim_y_3d, id_dim_yv_3d, id_dim_zu_xy, id_dim_zu1_xy, &1256 id_dim_zu_xz, id_dim_zu_yz, id_dim_zu_3d, id_dim_zw_xy, &1257 id_dim_zw_xz, id_dim_zw_yz, id_dim_zw_3d, id_set_xy, &1258 id_set_xz, id_set_yz, id_set_3d, id_var_ind_x_yz, &1259 id_var_ind_y_xz, id_var_ind_z_xy, id_var_time_xy, &1260 id_var_time_xz, id_var_time_yz, id_var_time_3d, id_var_x_xy, &1261 id_var_xu_xy, id_var_x_xz, id_var_xu_xz, id_var_x_yz, &1262 id_var_xu_yz, id_var_x_3d, id_var_xu_3d, id_var_y_xy, &1263 id_var_yv_xy, id_var_y_xz, id_var_yv_xz, id_var_y_yz, &1264 id_var_yv_yz, id_var_y_3d, id_var_yv_3d, id_var_zusi_xy, &1265 id_var_zusi_3d, id_var_zu_xy, id_var_zu1_xy, id_var_zu_xz, &1266 id_var_zu_yz, id_var_zu_3d, id_var_zwwi_xy, id_var_zwwi_3d, &1267 id_var_zw_xy, id_var_zw_xz, id_var_zw_yz, id_var_zw_3d1268 1269 INTEGER(iwp), DIMENSION(10) :: id_var_dospx, id_var_dospy1270 INTEGER(iwp), DIMENSION(20) :: id_var_prt1271 INTEGER(iwp), DIMENSION(11) :: nc_precision1272 INTEGER(iwp), DIMENSION(dopr_norm_num) :: id_var_norm_dopr1273 1274 INTEGER(iwp), DIMENSION(dopts_num,0:10) :: id_var_dopts1275 INTEGER(iwp), DIMENSION(0:1,100) :: id_var_do2d, id_var_do3d1276 INTEGER(iwp), DIMENSION(100,0:9) :: id_dim_z_pr, id_var_dopr, &1277 id_var_z_pr1278 INTEGER(iwp), DIMENSION(dots_max,0:9) :: id_var_dots1279 1280 !1281 !-- masked output1282 CHARACTER (LEN=7), DIMENSION(max_masks,0:1,100) :: domask_unit1283 1284 LOGICAL :: output_for_t0 = .FALSE.1285 1286 INTEGER(iwp), DIMENSION(1:max_masks,0:1) :: id_dim_time_mask, id_dim_x_mask, &1287 id_dim_xu_mask, id_dim_y_mask, id_dim_yv_mask, id_dim_zu_mask, &1288 id_dim_zw_mask, &1289 id_set_mask, &1290 id_var_time_mask, id_var_x_mask, id_var_xu_mask, &1291 id_var_y_mask, id_var_yv_mask, id_var_zu_mask, id_var_zw_mask, &1292 id_var_zusi_mask, id_var_zwwi_mask1293 1294 INTEGER(iwp), DIMENSION(1:max_masks,0:1,100) :: id_var_domask1295 1296 SAVE1297 1298 END MODULE netcdf_control1299 1152 1300 1153
Note: See TracChangeset
for help on using the changeset viewer.