Changeset 1682 for palm/trunk/SOURCE/modules.f90
- Timestamp:
- Oct 7, 2015 11:56:08 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/modules.f90
r1678 r1682 1 MODULE advection 2 1 !> @file modules.f90 3 2 !--------------------------------------------------------------------------------! 4 3 ! This file is part of PALM. … … 20 19 ! Current revisions: 21 20 ! ------------------ 22 ! 21 ! Code annotations made doxygen readable 23 22 ! 24 23 ! Former revisions: … … 300 299 ! Description: 301 300 ! ------------ 302 ! Definition of variables for special advection schemes 303 !------------------------------------------------------------------------------! 301 !> Definition of variables for special advection schemes. 302 !------------------------------------------------------------------------------! 303 MODULE advection 304 304 305 USE kinds 305 306 … … 311 312 312 313 313 314 314 !------------------------------------------------------------------------------! 315 ! Description: 316 ! ------------ 317 !> Definition of all arrays defined on the computational grid. 318 !------------------------------------------------------------------------------! 315 319 MODULE arrays_3d 316 317 !------------------------------------------------------------------------------!318 ! Description:319 ! ------------320 ! Definition of all arrays defined on the computational grid321 !------------------------------------------------------------------------------!322 320 323 321 USE kinds … … 380 378 381 379 382 383 380 !------------------------------------------------------------------------------! 381 ! Description: 382 ! ------------ 383 !> Definition of variables needed for time-averaging of 2d/3d data. 384 !------------------------------------------------------------------------------! 384 385 MODULE averaging 385 386 !------------------------------------------------------------------------------! 387 ! Description: 388 ! ------------ 389 ! Definition of variables needed for time-averaging of 2d/3d data 390 !------------------------------------------------------------------------------! 386 391 387 USE kinds 392 388 … … 403 399 404 400 405 401 !------------------------------------------------------------------------------! 402 ! Description: 403 ! ------------ 404 !> Definition of variables and constants for cloud physics. 405 !------------------------------------------------------------------------------! 406 406 MODULE cloud_parameters 407 408 !------------------------------------------------------------------------------! 409 ! Description: 410 ! ------------ 411 ! Definition of variables and constants for cloud physics 412 !------------------------------------------------------------------------------! 407 413 408 USE kinds 414 409 … … 418 413 419 414 420 REAL(wp) :: a_1 = 8.69E-4_wp, & ! :coef. in turb. parametrization (cm-2 s3)421 a_2 = -7.38E-5_wp, & ! :coef. in turb. parametrization (cm-2 s3)422 a_3 = -1.40E-2_wp, & ! :coef. in turb. parametrization423 a_term = 9.65_wp, & ! :coef. for terminal velocity (m s-1)424 a_vent = 0.78_wp, & ! :coef. for ventilation effect425 b_1 = 11.45E-6_wp, & ! :coef. in turb. parametrization (m)426 b_2 = 9.68E-6_wp, & ! :coef. in turb. parametrization (m)427 b_3 = 0.62_wp, & ! :coef. in turb. parametrization428 b_term = 9.8_wp, & ! :coef. for terminal velocity (m s-1)429 b_vent = 0.308_wp, & ! :coef. for ventilation effect430 beta_cc = 3.09E-4_wp, & ! :coef. in turb. parametrization (cm-2 s3)431 bfactor, & ! :solution effect on diffusional growth432 c_1 = 4.82E-6_wp, & ! :coef. in turb. parametrization (m)433 c_2 = 4.8E-6_wp, & ! :coef. in turb. parametrization (m)434 c_3 = 0.76_wp, & ! :coef. in turb. parametrization435 c_const = 0.93_wp, & ! :const. in Taylor-microscale Reynolds number436 c_evap = 0.7_wp, & ! :constant in evaporation437 c_sedimentation = 2.0_wp, & ! :Courant number of sedimentation process438 c_term = 600.0_wp, & ! :coef. for terminal velocity (m-1)439 cof(6) = (/ 76.18009172947146_wp, & ! :coefficients in the440 -86.50532032941677_wp, & ! :numerical441 24.01409824083091_wp, & ! :calculation of the442 -1.231739572450155_wp, & ! :gamma function415 REAL(wp) :: a_1 = 8.69E-4_wp, & !< coef. in turb. parametrization (cm-2 s3) 416 a_2 = -7.38E-5_wp, & !< coef. in turb. parametrization (cm-2 s3) 417 a_3 = -1.40E-2_wp, & !< coef. in turb. parametrization 418 a_term = 9.65_wp, & !< coef. for terminal velocity (m s-1) 419 a_vent = 0.78_wp, & !< coef. for ventilation effect 420 b_1 = 11.45E-6_wp, & !< coef. in turb. parametrization (m) 421 b_2 = 9.68E-6_wp, & !< coef. in turb. parametrization (m) 422 b_3 = 0.62_wp, & !< coef. in turb. parametrization 423 b_term = 9.8_wp, & !< coef. for terminal velocity (m s-1) 424 b_vent = 0.308_wp, & !< coef. for ventilation effect 425 beta_cc = 3.09E-4_wp, & !< coef. in turb. parametrization (cm-2 s3) 426 bfactor, & !< solution effect on diffusional growth 427 c_1 = 4.82E-6_wp, & !< coef. in turb. parametrization (m) 428 c_2 = 4.8E-6_wp, & !< coef. in turb. parametrization (m) 429 c_3 = 0.76_wp, & !< coef. in turb. parametrization 430 c_const = 0.93_wp, & !< const. in Taylor-microscale Reynolds number 431 c_evap = 0.7_wp, & !< constant in evaporation 432 c_sedimentation = 2.0_wp, & !< Courant number of sedimentation process 433 c_term = 600.0_wp, & !< coef. for terminal velocity (m-1) 434 cof(6) = (/ 76.18009172947146_wp, & !< coefficients in the 435 -86.50532032941677_wp, & !< numerical 436 24.01409824083091_wp, & !< calculation of the 437 -1.231739572450155_wp, & !< gamma function 443 438 0.1208650973866179E-2_wp, & 444 439 -0.5395239384953E-5_wp /), & 445 cp = 1005.0_wp, & ! :heat capacity of dry air (J kg-1 K-1)446 diff_coeff_l = 0.23E-4_wp, & ! :diffusivity of water vapor (m2 s-1)447 effective_coll_efficiency, & ! :effective collision efficiency448 eps_ros = 1.0E-4_wp, & ! :accuracy of Rosenbrock method449 eps_sb = 1.0E-20_wp, & ! :threshold in two-moments scheme450 k_cc = 9.44E09_wp, & ! :const. cloud-cloud kernel (m3 kg-2 s-1)451 k_cr0 = 4.33_wp, & ! :const. cloud-rain kernel (m3 kg-1 s-1)452 k_rr = 7.12_wp, & ! :const. rain-rain kernel (m3 kg-1 s-1)453 k_br = 1000._wp, & ! :const. in breakup parametrization (m-1)454 k_st = 1.2E8_wp, & ! :const. in drizzle parametrization (m-1 s-1)455 kappa_rr = 60.7_wp, & ! :const. in collision kernel (kg-1/3)456 kin_vis_air = 1.4086E-5_wp, & ! :kin. viscosity of air (m2 s-1)457 l_v = 2.5E+06_wp, & ! :latent heat of vaporization (J kg-1)458 l_d_cp, l_d_r, l_d_rv, & ! :l_v / cp, l_v / r_d, l_v / r_v459 mass_of_solute = 1.0E-17_wp, & ! :soluted NaCl (kg)460 molecular_weight_of_solute = 0.05844_wp, & ! :mol. m. NaCl (kg mol-1)461 molecular_weight_of_water = 0.01801528_wp, & ! :mol. m. H2O (kg mol-1)462 nc_const = 70.0E6_wp, & ! :cloud droplet concentration463 prec_time_const = 0.001_wp, & ! :coef. in Kessler scheme464 pirho_l, dpirho_l, & ! :pi * rho_l / 6.0; 6.0 / ( pi * rho_l )465 rho_l = 1.0E3_wp, & ! :density of water (kg m-3)466 ql_crit = 0.0005_wp, & ! :coef. in Kessler scheme467 r_d = 287.0_wp, & ! :sp. gas const. dry air (J kg-1 K-1)468 r_v = 461.51_wp, & ! :sp. gas const. water vapor (J kg-1 K-1)469 schmidt = 0.71_wp, & ! :Schmidt number470 schmidt_p_1d3, & ! :schmidt**( 1.0 / 3.0 )471 sed_qc_const, & ! :const. for sedimentation of cloud water472 sigma_gc = 1.3_wp, & ! :log-normal geometric standard deviation473 stp = 2.5066282746310005_wp, & ! :parameter in gamma function474 thermal_conductivity_l = 2.43E-2_wp, & ! :therm. cond. air (J m-1 s-1 K-1)475 vanthoff = 2.0_wp, & ! :van't Hoff factor for NaCl476 x0 = 2.6E-10_wp, & ! :separating drop mass (kg)477 xrmin = 2.6E-10_wp, & ! :minimum rain drop size (kg)478 xrmax = 5.0E-6_wp, & ! :maximum rain drop site (kg)479 dt_precipitation = 100.0_wp, & ! :timestep precipitation (s)480 w_precipitation = 9.65_wp ! :maximum terminal velocity (m s-1)440 cp = 1005.0_wp, & !< heat capacity of dry air (J kg-1 K-1) 441 diff_coeff_l = 0.23E-4_wp, & !< diffusivity of water vapor (m2 s-1) 442 effective_coll_efficiency, & !< effective collision efficiency 443 eps_ros = 1.0E-4_wp, & !< accuracy of Rosenbrock method 444 eps_sb = 1.0E-20_wp, & !< threshold in two-moments scheme 445 k_cc = 9.44E09_wp, & !< const. cloud-cloud kernel (m3 kg-2 s-1) 446 k_cr0 = 4.33_wp, & !< const. cloud-rain kernel (m3 kg-1 s-1) 447 k_rr = 7.12_wp, & !< const. rain-rain kernel (m3 kg-1 s-1) 448 k_br = 1000._wp, & !< const. in breakup parametrization (m-1) 449 k_st = 1.2E8_wp, & !< const. in drizzle parametrization (m-1 s-1) 450 kappa_rr = 60.7_wp, & !< const. in collision kernel (kg-1/3) 451 kin_vis_air = 1.4086E-5_wp, & !< kin. viscosity of air (m2 s-1) 452 l_v = 2.5E+06_wp, & !< latent heat of vaporization (J kg-1) 453 l_d_cp, l_d_r, l_d_rv, & !< l_v / cp, l_v / r_d, l_v / r_v 454 mass_of_solute = 1.0E-17_wp, & !< soluted NaCl (kg) 455 molecular_weight_of_solute = 0.05844_wp, & !< mol. m. NaCl (kg mol-1) 456 molecular_weight_of_water = 0.01801528_wp, & !< mol. m. H2O (kg mol-1) 457 nc_const = 70.0E6_wp, & !< cloud droplet concentration 458 prec_time_const = 0.001_wp, & !< coef. in Kessler scheme 459 pirho_l, dpirho_l, & !< pi * rho_l / 6.0; 6.0 / ( pi * rho_l ) 460 rho_l = 1.0E3_wp, & !< density of water (kg m-3) 461 ql_crit = 0.0005_wp, & !< coef. in Kessler scheme 462 r_d = 287.0_wp, & !< sp. gas const. dry air (J kg-1 K-1) 463 r_v = 461.51_wp, & !< sp. gas const. water vapor (J kg-1 K-1) 464 schmidt = 0.71_wp, & !< Schmidt number 465 schmidt_p_1d3, & !< schmidt**( 1.0 / 3.0 ) 466 sed_qc_const, & !< const. for sedimentation of cloud water 467 sigma_gc = 1.3_wp, & !< log-normal geometric standard deviation 468 stp = 2.5066282746310005_wp, & !< parameter in gamma function 469 thermal_conductivity_l = 2.43E-2_wp, & !< therm. cond. air (J m-1 s-1 K-1) 470 vanthoff = 2.0_wp, & !< van't Hoff factor for NaCl 471 x0 = 2.6E-10_wp, & !< separating drop mass (kg) 472 xrmin = 2.6E-10_wp, & !< minimum rain drop size (kg) 473 xrmax = 5.0E-6_wp, & !< maximum rain drop site (kg) 474 dt_precipitation = 100.0_wp, & !< timestep precipitation (s) 475 w_precipitation = 9.65_wp !< maximum terminal velocity (m s-1) 481 476 482 477 REAL(wp), DIMENSION(:), ALLOCATABLE :: hyrho, pt_d_t, t_d_pt … … 493 488 494 489 495 496 490 !------------------------------------------------------------------------------! 491 ! Description: 492 ! ------------ 493 !> Definition of general constants. 494 !------------------------------------------------------------------------------! 497 495 MODULE constants 498 499 !------------------------------------------------------------------------------! 500 ! Description: 501 ! ------------ 502 ! Definition of general constants 503 !------------------------------------------------------------------------------! 496 504 497 USE kinds 505 498 … … 512 505 END MODULE constants 513 506 514 515 516 507 508 !------------------------------------------------------------------------------! 509 ! Description: 510 ! ------------ 511 !> Definition of parameters for program control 512 !------------------------------------------------------------------------------! 517 513 MODULE control_parameters 518 514 519 !------------------------------------------------------------------------------!520 ! Description:521 ! ------------522 ! Definition of parameters for program control523 !------------------------------------------------------------------------------!524 515 USE kinds 525 516 … … 821 812 822 813 823 814 !------------------------------------------------------------------------------! 815 ! Description: 816 ! ------------ 817 !> Definition of variables used with dvrp-software. 818 !------------------------------------------------------------------------------! 824 819 MODULE dvrp_variables 825 826 !------------------------------------------------------------------------------!827 ! Description:828 ! ------------829 ! Definition of variables used with dvrp-software830 !------------------------------------------------------------------------------!831 820 832 821 USE kinds … … 941 930 942 931 943 944 932 !------------------------------------------------------------------------------! 933 ! Description: 934 ! ------------ 935 !> Definition of grid spacings. 936 !------------------------------------------------------------------------------! 945 937 MODULE grid_variables 946 947 !------------------------------------------------------------------------------!948 ! Description:949 ! ------------950 ! Definition of grid spacings951 !------------------------------------------------------------------------------!952 938 953 939 USE kinds … … 967 953 968 954 969 970 955 !------------------------------------------------------------------------------! 956 ! Description: 957 ! ------------ 958 !> Definition of array bounds, number of gridpoints, and wall flag arrays. 959 !------------------------------------------------------------------------------! 971 960 MODULE indices 972 973 !------------------------------------------------------------------------------!974 ! Description:975 ! ------------976 ! Definition of array bounds, number of gridpoints, and wall flag arrays977 !------------------------------------------------------------------------------!978 961 979 962 USE kinds … … 1015 998 1016 999 1017 1018 1000 !------------------------------------------------------------------------------! 1001 ! Description: 1002 ! ------------ 1003 !> Interfaces for special subroutines which use optional parameters. 1004 !------------------------------------------------------------------------------! 1019 1005 MODULE interfaces 1020 1006 1021 !------------------------------------------------------------------------------!1022 ! Description:1023 ! ------------1024 ! Interfaces for special subroutines which use optional parameters1025 !------------------------------------------------------------------------------!1026 1027 1007 INTERFACE 1028 1008 1009 !------------------------------------------------------------------------------! 1010 ! Description: 1011 ! ------------ 1012 !> @todo Missing subroutine description. 1013 !------------------------------------------------------------------------------! 1029 1014 SUBROUTINE global_min_max ( i1, i2, j1, j2, k1, k2, feld, mode, offset, & 1030 1015 wert, wert_ijk, wert1, wert1_ijk ) … … 1049 1034 1050 1035 1051 1036 !------------------------------------------------------------------------------! 1037 ! Description: 1038 ! ------------ 1039 !> Interfaces for subroutines with pointer arguments called in 1040 !> prognostic_equations. 1041 !------------------------------------------------------------------------------! 1052 1042 MODULE pointer_interfaces 1053 1043 1054 !------------------------------------------------------------------------------!1055 ! Description:1056 ! ------------1057 ! Interfaces for subroutines with pointer arguments called in1058 ! prognostic_equations1059 !------------------------------------------------------------------------------!1060 1061 1044 INTERFACE 1062 1045 1046 !------------------------------------------------------------------------------! 1047 ! Description: 1048 ! ------------ 1049 !> @todo Missing subroutine description. 1050 !------------------------------------------------------------------------------! 1063 1051 SUBROUTINE advec_s_bc( sk, sk_char ) 1064 1052 … … 1081 1069 1082 1070 1083 1084 1071 !------------------------------------------------------------------------------! 1072 ! Description: 1073 ! ------------ 1074 !> Definition of variables for the 1D-model. 1075 !------------------------------------------------------------------------------! 1085 1076 MODULE model_1d 1086 1087 !------------------------------------------------------------------------------!1088 ! Description:1089 ! ------------1090 ! Definition of variables for the 1D-model1091 !------------------------------------------------------------------------------!1092 1077 1093 1078 USE kinds … … 1114 1099 1115 1100 1116 1117 1101 !------------------------------------------------------------------------------! 1102 ! Description: 1103 ! ------------ 1104 !> Definition of parameters and variables for netcdf control. 1105 !------------------------------------------------------------------------------! 1118 1106 MODULE netcdf_control 1119 1120 !------------------------------------------------------------------------------!1121 ! Description:1122 ! ------------1123 ! Definition of parameters and variables for netcdf control.1124 !------------------------------------------------------------------------------!1125 1107 1126 1108 USE control_parameters, ONLY: max_masks … … 1263 1245 1264 1246 1265 1266 1247 !------------------------------------------------------------------------------! 1248 ! Description: 1249 ! ------------ 1250 !> Definition of variables which define processor topology and the exchange of 1251 !> ghost point layers. This modules must be placed in all routines which contain 1252 !> MPI-calls. 1253 !------------------------------------------------------------------------------! 1267 1254 MODULE pegrid 1268 1269 !------------------------------------------------------------------------------!1270 ! Description:1271 ! ------------1272 ! Definition of variables which define processor topology and the exchange of1273 ! ghost point layers. This modules must be placed in all routines which contain1274 ! MPI-calls.1275 !------------------------------------------------------------------------------!1276 1255 1277 1256 USE kinds … … 1334 1313 1335 1314 1336 1337 1315 !------------------------------------------------------------------------------! 1316 ! Description: 1317 ! ------------ 1318 !> Definition of variables which control PROFIL-output. 1319 !------------------------------------------------------------------------------! 1338 1320 MODULE profil_parameter 1339 1340 !------------------------------------------------------------------------------!1341 ! Description:1342 ! ------------1343 ! Definition of variables which control PROFIL-output1344 !------------------------------------------------------------------------------!1345 1321 1346 1322 USE kinds … … 1392 1368 1393 1369 1394 1395 1370 !------------------------------------------------------------------------------! 1371 ! Description: 1372 ! ------------ 1373 !> Definition of quantities used for computing spectra. 1374 !------------------------------------------------------------------------------! 1396 1375 MODULE spectrum 1397 1398 !------------------------------------------------------------------------------!1399 ! Description:1400 ! ------------1401 ! Definition of quantities used for computing spectra1402 !------------------------------------------------------------------------------!1403 1376 1404 1377 USE kinds … … 1443 1416 1444 1417 1445 1446 1418 !------------------------------------------------------------------------------! 1419 ! Description: 1420 ! ------------ 1421 !> Definition of statistical quantities, e.g. global sums. 1422 !------------------------------------------------------------------------------! 1447 1423 MODULE statistics 1448 1449 !------------------------------------------------------------------------------!1450 ! Description:1451 ! ------------1452 ! Definition of statistical quantities, e.g. global sums1453 !------------------------------------------------------------------------------!1454 1424 1455 1425 USE kinds … … 1474 1444 sums_ls_l 1475 1445 1476 REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: hom_sum, rmask, spectrum_x, &1477 spectrum_y, sums_l, sums_l_l, &1446 REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: hom_sum, rmask, spectrum_x, & 1447 spectrum_y, sums_l, sums_l_l, & 1478 1448 sums_up_fraction_l 1479 1449 REAL(wp), DIMENSION(:,:,:,:), ALLOCATABLE :: hom … … 1484 1454 1485 1455 1486 1487 1456 !------------------------------------------------------------------------------! 1457 ! Description: 1458 ! ------------ 1459 !> Definition of indices for transposed arrays. 1460 !------------------------------------------------------------------------------! 1488 1461 MODULE transpose_indices 1489 1462 1490 !------------------------------------------------------------------------------!1491 ! Description:1492 ! ------------1493 ! Definition of indices for transposed arrays1494 !------------------------------------------------------------------------------!1495 1496 1463 USE kinds 1497 1464 1498 INTEGER(iwp) :: nxl_y, nxl_yd, nxl_z, nxr_y, nxr_yd, nxr_z, nyn_x, nyn_z, 1465 INTEGER(iwp) :: nxl_y, nxl_yd, nxl_z, nxr_y, nxr_yd, nxr_z, nyn_x, nyn_z, & 1499 1466 nys_x, nys_z, nzb_x, nzb_y, nzb_yd, nzt_x, nzt_y, nzt_yd 1500 1467 1501 1502 1468 SAVE 1503 1469
Note: See TracChangeset
for help on using the changeset viewer.