Changeset 1691 for palm/trunk/SOURCE/init_1d_model.f90
- Timestamp:
- Oct 26, 2015 4:17:44 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/init_1d_model.f90
r1683 r1691 14 14 ! PALM. If not, see <http://www.gnu.org/licenses/>. 15 15 ! 16 ! Copyright 1997-201 4Leibniz Universitaet Hannover16 ! Copyright 1997-2015 Leibniz Universitaet Hannover 17 17 !--------------------------------------------------------------------------------! 18 18 ! 19 19 ! Current revisions: 20 20 ! ----------------- 21 ! 21 ! Renamed prandtl_layer to constant_flux_layer. rif is replaced by ol and zeta. 22 22 ! 23 23 ! Former revisions: … … 72 72 !> of the wind profile is being computed. 73 73 !> All subroutines required can be found within this file. 74 !> 75 !> @todo harmonize code with new surface_layer_fluxes module 74 76 !------------------------------------------------------------------------------! 75 77 SUBROUTINE init_1d_model … … 90 92 91 93 USE control_parameters, & 92 ONLY: constant_diffusion, f, humidity, kappa, km_constant, & 93 mixing_length_1d, passive_scalar, prandtl_layer, & 94 prandtl_number, roughness_length, simulated_time_chr, & 95 z0h_factor 94 ONLY: constant_diffusion, constant_flux_layer, f, humidity, kappa, & 95 km_constant, mixing_length_1d, passive_scalar, prandtl_number, & 96 roughness_length, simulated_time_chr, z0h_factor 96 97 97 98 IMPLICIT NONE … … 166 167 ! 167 168 !-- For u*, theta* and the momentum fluxes plausible values are set 168 IF ( prandtl_layer ) THEN169 IF ( constant_flux_layer ) THEN 169 170 us1d = 0.1_wp ! without initial friction the flow would not change 170 171 ELSE … … 213 214 214 215 USE control_parameters, & 215 ONLY: constant_diffusion, dissipation_1d, humidity,&216 intermediate_timestep_count, intermediate_timestep_count_max,&217 f, g, ibc_e_b, kappa, mixing_length_1d, passive_scalar, &218 prandtl_layer, rif_max, rif_min, simulated_time_chr,&219 timestep_scheme, tsc216 ONLY: constant_diffusion, constant_flux_layer, dissipation_1d, & 217 humidity, intermediate_timestep_count, & 218 intermediate_timestep_count_max, f, g, ibc_e_b, kappa, & 219 mixing_length_1d, passive_scalar, & 220 simulated_time_chr, timestep_scheme, tsc, zeta_max, zeta_min 220 221 221 222 USE indices, & … … 334 335 !-- Finite differences of the momentum fluxes are computed using half the 335 336 !-- normal grid length (2.0*ddzw(k)) for the sake of enhanced accuracy 336 IF ( prandtl_layer ) THEN337 IF ( constant_flux_layer ) THEN 337 338 338 339 k = nzb+1 … … 465 466 ! 466 467 !-- First compute the vertical fluxes in the Prandtl-layer 467 IF ( prandtl_layer ) THEN468 IF ( constant_flux_layer ) THEN 468 469 ! 469 470 !-- Compute theta* using Rif numbers of the previous time step … … 498 499 ENDIF 499 500 500 ENDIF ! prandtl_layer501 ENDIF ! constant_flux_layer 501 502 502 503 ! … … 506 507 !-- the rif-numbers of the previous time step are used. 507 508 508 IF ( prandtl_layer ) THEN509 IF ( constant_flux_layer ) THEN 509 510 IF ( .NOT. humidity ) THEN 510 511 pt_0 = pt_init(nzb+1) … … 547 548 !-- range. It is exceeded excessively for very small velocities 548 549 !-- (u,v --> 0). 549 WHERE ( rif1d < rif_min ) rif1d = rif_min550 WHERE ( rif1d > rif_max ) rif1d = rif_max550 WHERE ( rif1d < zeta_min ) rif1d = zeta_min 551 WHERE ( rif1d > zeta_max ) rif1d = zeta_max 551 552 552 553 ! 553 554 !-- Compute u* from the absolute velocity value 554 IF ( prandtl_layer ) THEN555 IF ( constant_flux_layer ) THEN 555 556 uv_total = SQRT( u1d(nzb+1)**2 + v1d(nzb+1)**2 ) 556 557 … … 639 640 ENDIF 640 641 641 ENDIF ! prandtl_layer642 ENDIF ! constant_flux_layer 642 643 643 644 ! … … 673 674 !-- computed via the adiabatic mixing length, for the unstability has 674 675 !-- already been taken account of via the TKE (cf. also Diss.). 675 IF ( prandtl_layer ) THEN676 IF ( constant_flux_layer ) THEN 676 677 IF ( rif1d(nzb+1) >= 0.0_wp ) THEN 677 678 km1d(nzb+1) = us1d * kappa * zu(nzb+1) / & … … 805 806 806 807 uv_total = SQRT( u1d(nzb+1)**2 + v1d(nzb+1)**2 ) 807 IF ( ABS( v1d(nzb+1) ) .LT.1.0E-5_wp ) THEN808 IF ( ABS( v1d(nzb+1) ) < 1.0E-5_wp ) THEN 808 809 alpha = ACOS( SIGN( 1.0_wp , u1d(nzb+1) ) ) 809 810 ELSE
Note: See TracChangeset
for help on using the changeset viewer.