Changeset 94 for palm/trunk/SOURCE/flow_statistics.f90
- Timestamp:
- Jun 1, 2007 3:25:22 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/flow_statistics.f90
r90 r94 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! Calculation of Deardorff velocity scale adjusted to be used with the ocean 7 ! version (HAS STILL TO BE COMPLETED!!!) 7 8 ! 8 9 ! Former revisions: … … 784 785 ! 785 786 !-- Determine the boundary layer height using two different schemes. 786 !-- First scheme: Starting from the Earth's surface, look for the first 787 !-- relative minimum of the total heat flux. The corresponding height is 788 !-- accepted as the boundary layer height, if it is less than 1.5 times the 789 !-- height where the heat flux becomes negative for the first time. 787 !-- First scheme: Starting from the Earth's (Ocean's) surface, look for the 788 !-- first relative minimum (maximum) of the total heat flux. 789 !-- The corresponding height is assumed as the boundary layer height, if it 790 !-- is less than 1.5 times the height where the heat flux becomes negative 791 !-- (positive) for the first time. 790 792 !-- NOTE: This criterion is still capable of improving! 791 793 z_i(1) = 0.0 792 794 first = .TRUE. 793 DO k = nzb, nzt-1 794 IF ( first .AND. hom(k,1,18,sr) < 0.0 ) THEN 795 first = .FALSE. 796 height = zw(k) 797 ENDIF 798 IF ( hom(k,1,18,sr) < 0.0 .AND. & 799 hom(k+1,1,18,sr) > hom(k,1,18,sr) ) THEN 800 IF ( zw(k) < 1.5 * height ) THEN 801 z_i(1) = zw(k) 802 ELSE 803 z_i(1) = height 795 ! IF ( .NOT. ocean ) THEN 796 DO k = nzb, nzt-1 797 IF ( first .AND. hom(k,1,18,sr) < 0.0 ) THEN 798 first = .FALSE. 799 height = zw(k) 804 800 ENDIF 805 EXIT 806 ENDIF 807 ENDDO 801 IF ( hom(k,1,18,sr) < 0.0 .AND. & 802 hom(k+1,1,18,sr) > hom(k,1,18,sr) ) THEN 803 IF ( zw(k) < 1.5 * height ) THEN 804 z_i(1) = zw(k) 805 ELSE 806 z_i(1) = height 807 ENDIF 808 EXIT 809 ENDIF 810 ENDDO 811 ! ELSE 812 ! ENDIF 808 813 809 814 ! … … 829 834 IF ( hom(nzb,1,18,sr) > 0.0 .AND. z_i(1) /= 0.0 ) THEN 830 835 hom(nzb+8,1,pr_palm,sr) = ( g / hom(nzb+1,1,4,sr) * & 831 hom(nzb,1,18,sr) * z_i(1) )**0.333333333 836 hom(nzb,1,18,sr) * & 837 ABS( z_i(1) ) )**0.333333333 832 838 !-- so far this only works if Prandtl layer is used 833 839 hom(nzb+11,1,pr_palm,sr) = hom(nzb,1,16,sr) / hom(nzb+8,1,pr_palm,sr)
Note: See TracChangeset
for help on using the changeset viewer.