Changeset 4144 for palm/trunk
- Timestamp:
- Aug 6, 2019 9:11:47 AM (5 years ago)
- Location:
- palm/trunk/SOURCE
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/biometeorology_mod.f90
r4127 r4144 27 27 ! ----------------- 28 28 ! $Id$ 29 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 30 ! 31 ! 4127 2019-07-30 14:47:10Z suehring 29 32 ! Output for bio_mrt added (merge from branch resler) 30 33 ! … … 4319 4322 ! 4320 4323 !-- calculation of solar azimuth angle 4321 IF (woz .LE.12.0_wp) alpha = pi - acos( ( sin(thetasr) * sin( lat * dtor ) - &4324 IF (woz <= 12.0_wp) alpha = pi - acos( ( sin(thetasr) * sin( lat * dtor ) - & 4322 4325 sin( declination * dtor ) ) / ( cos(thetasr) * cos( lat * dtor ) ) ) 4323 IF (woz .GT. 12.0_wp)alpha = pi + acos( ( sin(thetasr) * sin( lat * dtor ) - &4326 IF (woz > 12.0_wp) alpha = pi + acos( ( sin(thetasr) * sin( lat * dtor ) - & 4324 4327 sin( declination * dtor ) ) / ( cos(thetasr) * cos( lat * dtor ) ) ) 4325 4328 saa = alpha / dtor … … 4347 4350 CALL uvem_solar_position 4348 4351 4349 IF (sza .GE.90) THEN4352 IF (sza >= 90) THEN 4350 4353 vitd3_exposure(:,:) = 0.0_wp 4351 4354 ELSE … … 4446 4449 IF (consider_obstructions ) THEN 4447 4450 obstruction_temp1 = building_obstruction_f%var_3d(:,j,i) 4448 IF ( obstruction_temp1(0) .NE. 9) THEN4451 IF ( obstruction_temp1(0) /= 9 ) THEN 4449 4452 DO pobi = 0, 44 4450 4453 DO bi = 0, 7 … … 4468 4471 4469 4472 obstruction_direct_beam = obstruction( nint(startpos_saa_float), nint( sza / 10.0_wp ) ) 4470 IF (sza .GE.89.99_wp) THEN4473 IF (sza >= 89.99_wp) THEN 4471 4474 sza = 89.99999_wp 4472 4475 ENDIF -
palm/trunk/SOURCE/chem_emissions_mod.f90
r4055 r4144 27 27 ! ----------------- 28 28 ! $Id$ 29 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 30 ! 31 ! 4055 2019-06-27 09:47:29Z suehring 29 32 ! - replaced local thermo. constants w/ module definitions in 30 33 ! basic_constants_and_equations_mod (rgas_univ, p_0, r_d_cp) … … 724 727 END DO ! ind_mod 725 728 726 ELSE ! if len_index_voc .le.0729 ELSE ! if len_index_voc <= 0 727 730 728 731 ! -
palm/trunk/SOURCE/date_and_time_mod.f90
r3839 r4144 25 25 ! ----------------- 26 26 ! $Id$ 27 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 28 ! 29 ! 3839 2019-03-28 21:12:25Z moh.hefny 27 30 ! further tabs removed, unused variables removed 28 31 ! … … 191 194 192 195 !> Condition for printing an error when date_init is not provided when day_of_year_init is not given in the namelist or when the format of the date is not the one required by PALM. 193 IF ( day_of_month .GT. 0 .AND. day_of_month .LE. 31 .AND. month_of_year .GT. 0 .AND. month_of_year .LE.12) THEN196 IF ( day_of_month > 0 .AND. day_of_month <= 31 .AND. month_of_year > 0 .AND. month_of_year <= 12) THEN 194 197 195 198 IF ( month_of_year == 1 ) THEN !!month of year is read in input … … 226 229 227 230 228 IF ( day_of_year .LE.31 ) THEN231 IF ( day_of_year <= 31 ) THEN 229 232 230 233 month_of_year=1 … … 234 237 235 238 DO i_mon=2,12 !january is considered in the first case 236 IF ( day_of_year .LE. SUM(days(1:i_mon)) .AND. day_of_year .GT.SUM(days(1:(i_mon-1))) ) THEN239 IF ( day_of_year <= SUM(days(1:i_mon)) .AND. day_of_year > SUM(days(1:(i_mon-1))) ) THEN 237 240 238 241 month_of_year=i_mon … … 249 252 !> in the second condition both day of month and month_of_year are either given in input (passed to date_init) or we are in some day successive to the initial one, so that day_of_month has already be computed in previous step 250 253 !>TBD: something to calculate the current year is missing 251 ELSEIF ( day_of_month .GT. 0 .AND. day_of_month .LE. 31 .AND. month_of_year .GT. 0 .AND. month_of_year .LE.12) THEN254 ELSEIF ( day_of_month > 0 .AND. day_of_month <= 31 .AND. month_of_year > 0 .AND. month_of_year <= 12) THEN 252 255 253 256 !> calculate month_of_year. TBD: test the condition when day_of_year==31 … … 257 260 month_of_year = 1 258 261 259 ELSE IF (day_of_year .GT. 1 .AND. day_of_year .GT.SUM(days(1:month_of_year))) THEN262 ELSE IF (day_of_year > 1 .AND. day_of_year > SUM(days(1:month_of_year))) THEN 260 263 261 264 month_of_year = month_of_year + 1 … … 319 322 320 323 !> Condition for printing an error when date_init is not provided when day_of_year_init is not given in the namelist or when the format of the date is not the one required by PALM. 321 IF ( day_of_month .GT. 0 .AND. day_of_month .LE. 31 .AND. month_of_year .GT. 0 .AND. month_of_year .LE.12) THEN324 IF ( day_of_month > 0 .AND. day_of_month <= 31 .AND. month_of_year > 0 .AND. month_of_year <= 12) THEN 322 325 323 326 IF ( month_of_year == 1 ) THEN !!month of year is read in input … … 346 349 347 350 !-- Calculate current day of the year !TBD: considetr leap years 348 IF ( (day_of_year_init + days_since_reference_point) .GT.365 ) THEN351 IF ( (day_of_year_init + days_since_reference_point) > 365 ) THEN 349 352 350 353 day_of_year=INT(MOD((day_of_year_init + days_since_reference_point), 365.0_wp)) … … 369 372 !> The first case is when date_init is not provided: we only know day_of_year_init 370 373 !DO i_mon=1,12 371 !IF (day_of_year .LE.SUM(days(1:i_mon))) THEN372 IF ( day_of_year .LE.31 ) THEN374 !IF (day_of_year <= SUM(days(1:i_mon))) THEN 375 IF ( day_of_year <= 31 ) THEN 373 376 374 377 month_of_year=1 … … 378 381 379 382 DO i_mon=2,12 !january is considered in the first case 380 IF ( day_of_year .LE. SUM(days(1:i_mon)) .AND. day_of_year .GT.SUM(days(1:(i_mon-1))) ) THEN383 IF ( day_of_year <= SUM(days(1:i_mon)) .AND. day_of_year > SUM(days(1:(i_mon-1))) ) THEN 381 384 382 385 month_of_year=i_mon … … 393 396 !> in the second condition both day of month and month_of_year are either given in input (passed to date_init) or we are in some day successive to the initial one, so that day_of_month has already be computed in previous step 394 397 !>TBD: something to calculate the current year is missing 395 ELSEIF ( day_of_month .GT. 0 .AND. day_of_month .LE. 31 .AND. month_of_year .GT. 0 .AND. month_of_year .LE.12) THEN398 ELSEIF ( day_of_month > 0 .AND. day_of_month <= 31 .AND. month_of_year > 0 .AND. month_of_year <= 12) THEN 396 399 397 400 !> calculate month_of_year. TBD: test the condition when day_of_year==31 … … 401 404 month_of_year = 1 402 405 403 ELSE IF (day_of_year .GT. 1 .AND. day_of_year .GT.SUM(days(1:month_of_year))) THEN406 ELSE IF (day_of_year > 1 .AND. day_of_year > SUM(days(1:month_of_year))) THEN 404 407 405 408 month_of_year = month_of_year + 1 -
palm/trunk/SOURCE/indoor_model_mod.f90
r3885 r4144 26 26 ! ----------------- 27 27 ! $Id$ 28 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 29 ! 30 ! 3885 2019-04-11 11:29:34Z kanani 28 31 ! Changes related to global restructuring of location messages and introduction 29 32 ! of additional debug messages … … 454 457 IF ( building_id_f%var(j,i) /= building_id_f%fill ) THEN 455 458 IF ( num_buildings_l(myid) > 0 ) THEN 456 IF ( ANY( building_id_f%var(j,i) .EQ. build_ids_l ) ) THEN459 IF ( ANY( building_id_f%var(j,i) == build_ids_l ) ) THEN 457 460 CYCLE 458 461 ELSE … … 521 524 522 525 IF ( ALLOCATED(build_ids_final) ) THEN 523 IF ( ANY( build_ids(n) .EQ.build_ids_final ) ) THEN !FK: Warum ANY?, Warum .EQ.? --> s.o526 IF ( ANY( build_ids(n) == build_ids_final ) ) THEN !FK: Warum ANY?, Warum .EQ.? --> s.o 524 527 CYCLE 525 528 ELSE -
palm/trunk/SOURCE/init_grid.f90
r4115 r4144 25 25 ! ----------------- 26 26 ! $Id$ 27 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 28 ! 29 ! 4115 2019-07-24 12:50:49Z suehring 27 30 ! Bugfix in setting near-surface flag 24, inidicating wall-bounded grid points 28 31 ! … … 1469 1472 IF ( building_id_f%var(j,i) /= building_id_f%fill ) THEN 1470 1473 IF ( num_buildings_l(myid) > 0 ) THEN 1471 IF ( ANY( building_id_f%var(j,i) .EQ.build_ids_l ) ) &1474 IF ( ANY( building_id_f%var(j,i) == build_ids_l ) ) & 1472 1475 THEN 1473 1476 CYCLE … … 1543 1546 1544 1547 IF ( ALLOCATED(build_ids_final) ) THEN 1545 IF ( ANY( build_ids(nr) .EQ.build_ids_final ) ) THEN1548 IF ( ANY( build_ids(nr) == build_ids_final ) ) THEN 1546 1549 CYCLE 1547 1550 ELSE … … 1574 1577 oro_max_l(nr) = MAXVAL( & 1575 1578 MERGE( terrain_height_f%var, 0.0_wp, & 1576 building_id_f%var(nys:nyn,nxl:nxr) .EQ.&1579 building_id_f%var(nys:nyn,nxl:nxr) == & 1577 1580 build_ids_final(nr) ) ) 1578 1581 ENDDO -
palm/trunk/SOURCE/lagrangian_particle_model_mod.f90
r4143 r4144 25 25 ! ----------------- 26 26 ! $Id$ 27 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 28 ! 29 ! 4143 2019-08-05 15:14:53Z schwenkel 27 30 ! Rename variable and change select case to if statement 28 31 ! … … 1387 1390 ! 1388 1391 !-- In case of stretching the actual k index is found iteratively 1389 IF ( dz_stretch_level .NE.-9999999.9_wp .OR. &1390 dz_stretch_level_start(1) .NE.-9999999.9_wp ) THEN1392 IF ( dz_stretch_level /= -9999999.9_wp .OR. & 1393 dz_stretch_level_start(1) /= -9999999.9_wp ) THEN 1391 1394 kp = MINLOC( ABS( tmp_particle%z - zu ), DIM = 1 ) - 1 1392 1395 ELSE … … 1648 1651 ! 1649 1652 !-- Set constants for different aerosol species 1650 IF ( TRIM(aero_species) .EQ.'nacl' ) THEN1653 IF ( TRIM(aero_species) == 'nacl' ) THEN 1651 1654 molecular_weight_of_solute = 0.05844_wp 1652 1655 rho_s = 2165.0_wp 1653 1656 vanthoff = 2.0_wp 1654 ELSEIF ( TRIM(aero_species) .EQ.'c3h4o4' ) THEN1657 ELSEIF ( TRIM(aero_species) == 'c3h4o4' ) THEN 1655 1658 molecular_weight_of_solute = 0.10406_wp 1656 1659 rho_s = 1600.0_wp 1657 1660 vanthoff = 1.37_wp 1658 ELSEIF ( TRIM(aero_species) .EQ.'nh4o3' ) THEN1661 ELSEIF ( TRIM(aero_species) == 'nh4o3' ) THEN 1659 1662 molecular_weight_of_solute = 0.08004_wp 1660 1663 rho_s = 1720.0_wp … … 1668 1671 !-- The following typical aerosol spectra are taken from Jaenicke (1993): 1669 1672 !-- Tropospheric aerosols. Published in Aerosol-Cloud-Climate Interactions. 1670 IF ( TRIM(aero_type) .EQ.'polar' ) THEN1673 IF ( TRIM(aero_type) == 'polar' ) THEN 1671 1674 na = (/ 2.17e1, 1.86e-1, 3.04e-4 /) * 1.0E6_wp 1672 1675 rm = (/ 0.0689, 0.375, 4.29 /) * 1.0E-6_wp 1673 1676 log_sigma = (/ 0.245, 0.300, 0.291 /) 1674 ELSEIF ( TRIM(aero_type) .EQ.'background' ) THEN1677 ELSEIF ( TRIM(aero_type) == 'background' ) THEN 1675 1678 na = (/ 1.29e2, 5.97e1, 6.35e1 /) * 1.0E6_wp 1676 1679 rm = (/ 0.0036, 0.127, 0.259 /) * 1.0E-6_wp 1677 1680 log_sigma = (/ 0.645, 0.253, 0.425 /) 1678 ELSEIF ( TRIM(aero_type) .EQ.'maritime' ) THEN1681 ELSEIF ( TRIM(aero_type) == 'maritime' ) THEN 1679 1682 na = (/ 1.33e2, 6.66e1, 3.06e0 /) * 1.0E6_wp 1680 1683 rm = (/ 0.0039, 0.133, 0.29 /) * 1.0E-6_wp 1681 1684 log_sigma = (/ 0.657, 0.210, 0.396 /) 1682 ELSEIF ( TRIM(aero_type) .EQ.'continental' ) THEN1685 ELSEIF ( TRIM(aero_type) == 'continental' ) THEN 1683 1686 na = (/ 3.20e3, 2.90e3, 3.00e-1 /) * 1.0E6_wp 1684 1687 rm = (/ 0.01, 0.058, 0.9 /) * 1.0E-6_wp 1685 1688 log_sigma = (/ 0.161, 0.217, 0.380 /) 1686 ELSEIF ( TRIM(aero_type) .EQ.'desert' ) THEN1689 ELSEIF ( TRIM(aero_type) == 'desert' ) THEN 1687 1690 na = (/ 7.26e2, 1.14e3, 1.78e-1 /) * 1.0E6_wp 1688 1691 rm = (/ 0.001, 0.0188, 10.8 /) * 1.0E-6_wp 1689 1692 log_sigma = (/ 0.247, 0.770, 0.438 /) 1690 ELSEIF ( TRIM(aero_type) .EQ.'rural' ) THEN1693 ELSEIF ( TRIM(aero_type) == 'rural' ) THEN 1691 1694 na = (/ 6.65e3, 1.47e2, 1.99e3 /) * 1.0E6_wp 1692 1695 rm = (/ 0.00739, 0.0269, 0.0419 /) * 1.0E-6_wp 1693 1696 log_sigma = (/ 0.225, 0.557, 0.266 /) 1694 ELSEIF ( TRIM(aero_type) .EQ.'urban' ) THEN1697 ELSEIF ( TRIM(aero_type) == 'urban' ) THEN 1695 1698 na = (/ 9.93e4, 1.11e3, 3.64e4 /) * 1.0E6_wp 1696 1699 rm = (/ 0.00651, 0.00714, 0.0248 /) * 1.0E-6_wp 1697 1700 log_sigma = (/ 0.245, 0.666, 0.337 /) 1698 ELSEIF ( TRIM(aero_type) .EQ.'user' ) THEN1701 ELSEIF ( TRIM(aero_type) == 'user' ) THEN 1699 1702 CONTINUE 1700 1703 ELSE … … 1739 1742 1740 1743 IF ( particles(n)%weight_factor - FLOOR(particles(n)%weight_factor,KIND=wp) & 1741 .GT.random_function( iran_part ) ) THEN1744 > random_function( iran_part ) ) THEN 1742 1745 particles(n)%weight_factor = FLOOR(particles(n)%weight_factor,KIND=wp) + 1.0_wp 1743 1746 ELSE … … 1746 1749 ! 1747 1750 !-- Unnecessary particles will be deleted 1748 IF ( particles(n)%weight_factor .LE.0.0_wp ) particles(n)%particle_mask = .FALSE.1751 IF ( particles(n)%weight_factor <= 0.0_wp ) particles(n)%particle_mask = .FALSE. 1749 1752 1750 1753 ENDDO … … 5103 5106 !-- Check error of the solution, and reduce dt_ros if necessary. 5104 5107 error = ABS(r_err - r_ros) / r_ros 5105 IF ( error .GT.prec ) THEN5108 IF ( error > prec ) THEN 5106 5109 dt_ros = SQRT( q_decrease * prec / error ) * dt_ros 5107 5110 r_ros = r_ros_ini … … 5404 5407 !-- For collisions, the weighting factor of at least one super-droplet 5405 5408 !-- needs to be larger or equal to one. 5406 IF ( MIN( weight(n), weight(m) ) .LT.1.0_wp ) CYCLE5409 IF ( MIN( weight(n), weight(m) ) < 1.0_wp ) CYCLE 5407 5410 ! 5408 5411 !-- Get mass of individual droplets (aerosols) … … 5429 5432 !-- (Accordingly, p_crit will be 0.0, 1.0, 2.0, ...) 5430 5433 IF ( collection_probability - FLOOR(collection_probability) & 5431 .GT.random_function( iran_part ) ) THEN5434 > random_function( iran_part ) ) THEN 5432 5435 collection_probability = FLOOR(collection_probability) + 1.0_wp 5433 5436 ELSE … … 5435 5438 ENDIF 5436 5439 5437 IF ( collection_probability .GT.0.0_wp ) THEN5440 IF ( collection_probability > 0.0_wp ) THEN 5438 5441 ! 5439 5442 !-- Super-droplet n collects droplets of super-droplet m 5440 IF ( weight(n) .LT.weight(m) ) THEN5443 IF ( weight(n) < weight(m) ) THEN 5441 5444 5442 5445 mass(n) = mass(n) + weight(n) * xm * collection_probability … … 5448 5451 ENDIF 5449 5452 5450 ELSEIF ( weight(m) .LT.weight(n) ) THEN5453 ELSEIF ( weight(m) < weight(n) ) THEN 5451 5454 5452 5455 mass(m) = mass(m) + weight(m) * xn * collection_probability … … 7615 7618 ! 7616 7619 !-- In case of stretching the actual k index must be found 7617 IF ( dz_stretch_level .NE.-9999999.9_wp .OR. &7618 dz_stretch_level_start(1) .NE.-9999999.9_wp ) THEN7620 IF ( dz_stretch_level /= -9999999.9_wp .OR. & 7621 dz_stretch_level_start(1) /= -9999999.9_wp ) THEN 7619 7622 kp = MINLOC( ABS( particle_array(n)%z - zu ), DIM = 1 ) - 1 7620 7623 ELSE -
palm/trunk/SOURCE/random_function_mod.f90
r3802 r4144 25 25 ! ----------------- 26 26 ! $Id$ 27 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 28 ! 29 ! 3802 2019-03-17 13:33:42Z raasch 27 30 ! type conversion added to avoid compiler warning about constant integer 28 31 ! division truncation … … 73 76 ! ------------ 74 77 !> Random number generator, produces numbers equally distributed in interval [0,1] 75 !> This routine is taken from the "numerical recip ies"78 !> This routine is taken from the "numerical recipes" 76 79 !------------------------------------------------------------------------------! 77 80 MODULE random_function_mod … … 137 140 ntab=32, ndiv=1+INT(REAL(im-1)/ntab), eps=1.2e-7_wp, rnmx=1.0_wp-eps ) 138 141 139 IF ( idum .le. 0 .or. random_iy .eq.0 ) THEN142 IF ( idum <= 0 .OR. random_iy == 0 ) THEN 140 143 idum = max (-idum,1) 141 144 DO j = ntab+8,1,-1 142 145 k = idum / iq 143 146 idum = ia * ( idum - k * iq ) - ir * k 144 IF ( idum .lt.0 ) idum = idum + im145 IF ( j .le.ntab ) random_iv(j) = idum147 IF ( idum < 0 ) idum = idum + im 148 IF ( j <= ntab ) random_iv(j) = idum 146 149 ENDDO 147 150 random_iy = random_iv(1) … … 150 153 k = idum / iq 151 154 idum = ia * ( idum - k * iq ) - ir * k 152 IF ( idum .lt.0 ) idum = idum + im155 IF ( idum < 0 ) idum = idum + im 153 156 j = 1 + random_iy / ndiv 154 157 random_iy = random_iv(j) 155 158 random_iv(j) = idum 156 random_function = min( am * random_iy , rnmx )159 random_function = MIN( am * random_iy , rnmx ) 157 160 158 161 END FUNCTION random_function -
palm/trunk/SOURCE/synthetic_turbulence_generator_mod.f90
r4071 r4144 25 25 ! ----------------- 26 26 ! $Id$ 27 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 28 ! 29 ! 4071 2019-07-03 20:02:00Z suehring 27 30 ! Bugfix, initialize mean_inflow_profiles in case turbulence and inflow 28 31 ! information is not read from file. … … 996 999 DO j = nysg, nyng 997 1000 DO k = nzb, nzt+1 998 IF ( a11(k) .NE. 0._wp )THEN1001 IF ( a11(k) /= 0.0_wp ) THEN 999 1002 fu_yz(k,j) = ( u(k,j,i) - u_init(k) ) / a11(k) 1000 1003 ELSE 1001 fu_yz(k,j) = 0. _wp1004 fu_yz(k,j) = 0.0_wp 1002 1005 ENDIF 1003 1006 1004 IF ( a22(k) .NE. 0._wp )THEN1007 IF ( a22(k) /= 0.0_wp ) THEN 1005 1008 fv_yz(k,j) = ( v(k,j,i) - & 1006 1009 a21(k) * fu_yz(k,j) - v_init(k) ) / a22(k) 1007 1010 ELSE 1008 fv_yz(k,j) = 0. _wp1011 fv_yz(k,j) = 0.0_wp 1009 1012 ENDIF 1010 1013 1011 IF ( a33(k) .NE. 0._wp )THEN1014 IF ( a33(k) /= 0.0_wp ) THEN 1012 1015 fw_yz(k,j) = ( w(k,j,i) - & 1013 1016 a31(k) * fu_yz(k,j) - a32(k) * & … … 1029 1032 DO k = nzb, nzt+1 1030 1033 1031 IF ( a11(k) .NE. 0._wp )THEN1034 IF ( a11(k) /= 0.0_wp ) THEN 1032 1035 fu_xz(k,i) = ( u(k,j,i) - u_init(k) ) / a11(k) 1033 1036 ELSE 1034 fu_xz(k,i) = 0. _wp1037 fu_xz(k,i) = 0.0_wp 1035 1038 ENDIF 1036 1039 1037 IF ( a22(k) .NE. 0._wp )THEN1040 IF ( a22(k) /= 0.0_wp ) THEN 1038 1041 fv_xz(k,i) = ( v(k,j,i) - & 1039 1042 a21(k) * fu_xz(k,i) - v_init(k) ) / a22(k) 1040 1043 ELSE 1041 fv_xz(k,i) = 0. _wp1044 fv_xz(k,i) = 0.0_wp 1042 1045 ENDIF 1043 1046 1044 IF ( a33(k) .NE. 0._wp )THEN1047 IF ( a33(k) /= 0.0_wp ) THEN 1045 1048 fw_xz(k,i) = ( w(k,j,i) - & 1046 1049 a31(k) * fu_xz(k,i) - & -
palm/trunk/SOURCE/time_integration.f90
r4126 r4144 25 25 ! ----------------- 26 26 ! $Id$ 27 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 28 ! 29 ! 4126 2019-07-30 11:09:11Z gronemeier 27 30 ! renamed routine to calculate uv exposure 28 31 ! … … 1565 1568 ! 1566 1569 !-- Call emission routine only once an hour 1567 IF ( hour_of_year .GT.hour_call_emis ) THEN1570 IF ( hour_of_year > hour_call_emis ) THEN 1568 1571 CALL chem_emissions_setup( chem_emis_att, chem_emis, n_matched_vars ) 1569 1572 hour_call_emis = hour_of_year -
palm/trunk/SOURCE/wind_turbine_model_mod.f90
r4056 r4144 26 26 ! ----------------- 27 27 ! $Id$ 28 ! relational operators .EQ., .NE., etc. replaced by ==, /=, etc. 29 ! 30 ! 4056 2019-06-27 13:53:16Z Giersch 28 31 ! CASE DEFAULT action in wtm_actions needs to be CONTINUE. Otherwise an abort 29 32 ! will happen for location values that are not implemented as CASE statements … … 1522 1525 ! lct(1) = lct(1) 1523 1526 1524 IF ( ( trad1(lct(1)) - cur_r ) .GT.0.0 ) THEN1527 IF ( ( trad1(lct(1)) - cur_r ) > 0.0 ) THEN 1525 1528 lct(1) = lct(1) - 1 1526 1529 ENDIF … … 1534 1537 t2 = ttoint2(trow) 1535 1538 1536 IF ( t1 .EQ. t2 )THEN ! if both are the same, the weights are NaN1537 weight_a = 0.5_wp ! then do interpolate in between same twice1538 weight_b = 0.5_wp ! using 0.5 as weight1539 IF ( t1 == t2 ) THEN ! if both are the same, the weights are NaN 1540 weight_a = 0.5_wp ! then do interpolate in between same twice 1541 weight_b = 0.5_wp ! using 0.5 as weight 1539 1542 ENDIF 1540 1543
Note: See TracChangeset
for help on using the changeset viewer.