- Timestamp:
- Feb 14, 2018 5:00:09 PM (7 years ago)
- Location:
- palm/trunk/SOURCE
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/data_output_2d.f90
r2798 r2805 913 913 surf_usm_h%frac(2,m) * surf_usm_h%r_a_window(m) ) 914 914 ENDDO 915 916 915 ELSE 917 916 DO i = nxl, nxr -
palm/trunk/SOURCE/land_surface_model_mod.f90
r2798 r2805 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix in initialization of roughness over water surfaces 28 ! 29 ! 2798 2018-02-09 17:16:39Z suehring 27 30 ! Minor bugfix for initialization of pt_surface 28 31 ! … … 3382 3385 surf_lsm_h%z0q(m) = water_pars_f%pars_xy(ind_w_z0h,j,i) 3383 3386 ENDIF 3384 3385 3387 IF ( water_pars_f%pars_xy(ind_w_lambda_s,j,i) /= & 3386 3388 water_pars_f%fill ) & … … 3864 3866 ENDDO 3865 3867 ENDIF 3868 3866 3869 ! 3867 3870 !-- Initial run actions … … 4264 4267 !-- Calculate new roughness lengths (for water surfaces only, i.e. only 4265 4268 !- horizontal surfaces) 4266 CALL calc_z0_water_surface4269 IF ( .NOT. constant_roughness ) CALL calc_z0_water_surface 4267 4270 4268 4271 t_soil_h_p = t_soil_h … … 4307 4310 ENDIF 4308 4311 ENDDO 4312 4309 4313 4310 4314 … … 5897 5901 ENDIF 5898 5902 READ ( 13 ) ns_v_on_file_lsm 5899 5900 5903 ! 5901 5904 !-- Allocate temporary arrays to store surface data -
palm/trunk/SOURCE/surface_mod.f90
r2766 r2805 26 26 ! ----------------- 27 27 ! $Id$ 28 ! Bugfix in re-mapping surface elements in case of restart runs 29 ! 30 ! 2766 2018-01-22 17:17:47Z kanani 28 31 ! Removed preprocessor directive __chem 29 32 ! … … 875 878 ENDDO 876 879 880 877 881 END SUBROUTINE init_surface_arrays 878 882 … … 1610 1614 ENDDO 1611 1615 1612 1613 1616 CONTAINS 1614 1617 … … 2181 2184 IMPLICIT NONE 2182 2185 2183 CHARACTER(LEN=1) :: dum !< dummy string to create output-variable name 2184 2185 INTEGER(iwp) :: i !< running index x-direction 2186 INTEGER(iwp) :: j !< running index y-direction 2187 INTEGER(iwp) :: l !< index surface type orientation 2188 INTEGER(iwp) :: lsp !< running index chemical species 2189 INTEGER(iwp) :: m !< running index for surface elements on individual surface array 2190 INTEGER(iwp), DIMENSION(0:3) :: mm !< running index for surface elements on gathered surface array 2191 2192 TYPE(surf_type), DIMENSION(0:2) :: surf_h !< gathered horizontal surfaces, contains all surface types 2193 TYPE(surf_type), DIMENSION(0:3) :: surf_v !< gathered vertical surfaces, contains all surface types 2186 CHARACTER(LEN=1) :: dum !< dummy string to create output-variable name 2187 2188 INTEGER(iwp) :: i !< running index x-direction 2189 INTEGER(iwp) :: j !< running index y-direction 2190 INTEGER(iwp) :: l !< index surface type orientation 2191 INTEGER(iwp) :: lsp !< running index chemical species 2192 INTEGER(iwp) :: m !< running index for surface elements on individual surface array 2193 INTEGER(iwp) :: start_index_h !< start index for horizontal surface elements on gathered surface array 2194 INTEGER(iwp), DIMENSION(0:3) :: mm !< running index for surface elements on gathered surface array 2195 INTEGER(iwp), DIMENSION(0:3) :: start_index_v !< start index for vertical surface elements on gathered surface array 2196 2197 TYPE(surf_type), DIMENSION(0:2) :: surf_h !< gathered horizontal surfaces, contains all surface types 2198 TYPE(surf_type), DIMENSION(0:3) :: surf_v !< gathered vertical surfaces, contains all surface types 2194 2199 2195 2200 ! … … 2396 2401 ENDDO 2397 2402 ! 2398 !-- Gather start- and end indices 2403 !-- Gather start- and end indices 2404 start_index_h = 1 2399 2405 DO i = nxl, nxr 2400 2406 DO j = nys, nyn 2407 2408 surf_h(l)%start_index(j,i) = start_index_h 2409 surf_h(l)%end_index(j,i) = surf_h(l)%start_index(j,i) -1 2410 2401 2411 IF ( surf_def_h(l)%start_index(j,i) <= & 2402 surf_def_h(l)%end_index(j,i) ) THEN 2403 surf_h(l)%start_index(j,i) = surf_def_h(l)%start_index(j,i) 2404 surf_h(l)%end_index(j,i) = surf_def_h(l)%end_index(j,i) 2405 ENDIF 2412 surf_def_h(l)%end_index(j,i) ) & 2413 surf_h(l)%end_index(j,i) = surf_h(l)%end_index(j,i) + 1 2406 2414 IF ( l == 0 ) THEN 2407 2415 IF ( surf_lsm_h%start_index(j,i) <= & 2408 surf_lsm_h%end_index(j,i) ) THEN 2409 surf_h(l)%start_index(j,i) = surf_lsm_h%start_index(j,i) 2410 surf_h(l)%end_index(j,i) = surf_lsm_h%end_index(j,i) 2411 ENDIF 2416 surf_lsm_h%end_index(j,i) ) & 2417 surf_h(l)%end_index(j,i) = surf_h(l)%end_index(j,i) + 1 2412 2418 IF ( surf_usm_h%start_index(j,i) <= & 2413 surf_usm_h%end_index(j,i) ) THEN 2414 surf_h(l)%start_index(j,i) = surf_usm_h%start_index(j,i) 2415 surf_h(l)%end_index(j,i) = surf_usm_h%end_index(j,i) 2416 ENDIF 2419 surf_usm_h%end_index(j,i) ) & 2420 surf_h(l)%end_index(j,i) = surf_h(l)%end_index(j,i) + 1 2417 2421 ENDIF 2422 start_index_h = surf_h(l)%start_index(j,i) + 1 2418 2423 ENDDO 2419 2424 ENDDO … … 2611 2616 surf_lsm_v(l)%end_index, & 2612 2617 surf_usm_v(l)%end_index ) 2618 2619 ! 2620 !-- Gather start- and end indices 2621 start_index_v(l) = 1 2622 DO i = nxl, nxr 2623 DO j = nys, nyn 2624 2625 surf_v(l)%start_index(j,i) = start_index_v(l) 2626 surf_v(l)%end_index(j,i) = surf_v(l)%start_index(j,i) -1 2627 2628 IF ( surf_def_v(l)%start_index(j,i) <= & 2629 surf_def_v(l)%end_index(j,i) ) & 2630 surf_v(l)%end_index(j,i) = surf_v(l)%end_index(j,i) + 1 2631 IF ( l == 0 ) THEN 2632 IF ( surf_lsm_v(l)%start_index(j,i) <= & 2633 surf_lsm_v(l)%end_index(j,i) ) & 2634 surf_v(l)%end_index(j,i) = surf_v(l)%end_index(j,i) + 1 2635 IF ( surf_usm_v(l)%start_index(j,i) <= & 2636 surf_usm_v(l)%end_index(j,i) ) & 2637 surf_v(l)%end_index(j,i) = surf_v(l)%end_index(j,i) + 1 2638 ENDIF 2639 start_index_v(l) = surf_v(l)%start_index(j,i) + 1 2640 ENDDO 2641 ENDDO 2613 2642 ENDDO 2614 2643 … … 2628 2657 WRITE ( 14 ) surf_h(l)%end_index 2629 2658 2630 WRITE ( 14 ) 'surf_h(' // dum // ')%us '2631 2659 IF ( ALLOCATED ( surf_h(l)%us ) ) THEN 2660 WRITE ( 14 ) 'surf_h(' // dum // ')%us ' 2632 2661 WRITE ( 14 ) surf_h(l)%us 2633 ENDIF 2634 WRITE ( 14 ) 'surf_h(' // dum // ')%ts ' 2662 ENDIF 2635 2663 IF ( ALLOCATED ( surf_h(l)%ts ) ) THEN 2664 WRITE ( 14 ) 'surf_h(' // dum // ')%ts ' 2636 2665 WRITE ( 14 ) surf_h(l)%ts 2637 2666 ENDIF 2638 WRITE ( 14 ) 'surf_h(' // dum // ')%qs '2639 2667 IF ( ALLOCATED ( surf_h(l)%qs ) ) THEN 2668 WRITE ( 14 ) 'surf_h(' // dum // ')%qs ' 2640 2669 WRITE ( 14 ) surf_h(l)%qs 2641 2670 ENDIF 2642 WRITE ( 14 ) 'surf_h(' // dum // ')%ss '2643 2671 IF ( ALLOCATED ( surf_h(l)%ss ) ) THEN 2672 WRITE ( 14 ) 'surf_h(' // dum // ')%ss ' 2644 2673 WRITE ( 14 ) surf_h(l)%ss 2645 2674 ENDIF 2646 WRITE ( 14 ) 'surf_h(' // dum // ')%qcs '2647 2675 IF ( ALLOCATED ( surf_h(l)%qcs ) ) THEN 2676 WRITE ( 14 ) 'surf_h(' // dum // ')%qcs ' 2648 2677 WRITE ( 14 ) surf_h(l)%qcs 2649 2678 ENDIF 2650 WRITE ( 14 ) 'surf_h(' // dum // ')%ncs '2651 2679 IF ( ALLOCATED ( surf_h(l)%ncs ) ) THEN 2680 WRITE ( 14 ) 'surf_h(' // dum // ')%ncs ' 2652 2681 WRITE ( 14 ) surf_h(l)%ncs 2653 2682 ENDIF 2654 WRITE ( 14 ) 'surf_h(' // dum // ')%qrs '2655 2683 IF ( ALLOCATED ( surf_h(l)%qrs ) ) THEN 2684 WRITE ( 14 ) 'surf_h(' // dum // ')%qrs ' 2656 2685 WRITE ( 14 ) surf_h(l)%qrs 2657 2686 ENDIF 2658 WRITE ( 14 ) 'surf_h(' // dum // ')%nrs '2659 2687 IF ( ALLOCATED ( surf_h(l)%nrs ) ) THEN 2688 WRITE ( 14 ) 'surf_h(' // dum // ')%nrs ' 2660 2689 WRITE ( 14 ) surf_h(l)%nrs 2661 2690 ENDIF 2662 WRITE ( 14 ) 'surf_h(' // dum // ')%ol '2663 2691 IF ( ALLOCATED ( surf_h(l)%ol ) ) THEN 2692 WRITE ( 14 ) 'surf_h(' // dum // ')%ol ' 2664 2693 WRITE ( 14 ) surf_h(l)%ol 2665 ENDIF 2666 WRITE ( 14 ) 'surf_h(' // dum // ')%rib ' 2694 ENDIF 2667 2695 IF ( ALLOCATED ( surf_h(l)%rib ) ) THEN 2696 WRITE ( 14 ) 'surf_h(' // dum // ')%rib ' 2668 2697 WRITE ( 14 ) surf_h(l)%rib 2669 ENDIF 2670 WRITE ( 14 ) 'surf_h(' // dum // ')%pt_surface ' 2698 ENDIF 2671 2699 IF ( ALLOCATED ( surf_h(l)%pt_surface ) ) THEN 2700 WRITE ( 14 ) 'surf_h(' // dum // ')%pt_surface ' 2672 2701 WRITE ( 14 ) surf_h(l)%pt_surface 2673 ENDIF 2674 WRITE ( 14 ) 'surf_h(' // dum // ')%usws ' 2702 ENDIF 2675 2703 IF ( ALLOCATED ( surf_h(l)%usws ) ) THEN 2704 WRITE ( 14 ) 'surf_h(' // dum // ')%usws ' 2676 2705 WRITE ( 14 ) surf_h(l)%usws 2677 2706 ENDIF 2678 WRITE ( 14 ) 'surf_h(' // dum // ')%vsws '2679 2707 IF ( ALLOCATED ( surf_h(l)%vsws ) ) THEN 2708 WRITE ( 14 ) 'surf_h(' // dum // ')%vsws ' 2680 2709 WRITE ( 14 ) surf_h(l)%vsws 2681 2710 ENDIF 2682 WRITE ( 14 ) 'surf_h(' // dum // ')%shf '2683 2711 IF ( ALLOCATED ( surf_h(l)%shf ) ) THEN 2712 WRITE ( 14 ) 'surf_h(' // dum // ')%shf ' 2684 2713 WRITE ( 14 ) surf_h(l)%shf 2685 2714 ENDIF 2686 WRITE ( 14 ) 'surf_h(' // dum // ')%qsws '2687 2715 IF ( ALLOCATED ( surf_h(l)%qsws ) ) THEN 2716 WRITE ( 14 ) 'surf_h(' // dum // ')%qsws ' 2688 2717 WRITE ( 14 ) surf_h(l)%qsws 2689 2718 ENDIF 2690 WRITE ( 14 ) 'surf_h(' // dum // ')%ssws '2691 2719 IF ( ALLOCATED ( surf_h(l)%ssws ) ) THEN 2720 WRITE ( 14 ) 'surf_h(' // dum // ')%ssws ' 2692 2721 WRITE ( 14 ) surf_h(l)%ssws 2693 2722 ENDIF 2694 WRITE ( 14 ) 'surf_h(' // dum // ')%css '2695 2723 IF ( ALLOCATED ( surf_h(l)%css ) ) THEN 2724 WRITE ( 14 ) 'surf_h(' // dum // ')%css ' 2696 2725 WRITE ( 14 ) surf_h(l)%css 2697 2726 ENDIF 2698 WRITE ( 14 ) 'surf_h(' // dum // ')%cssws '2699 2727 IF ( ALLOCATED ( surf_h(l)%cssws ) ) THEN 2728 WRITE ( 14 ) 'surf_h(' // dum // ')%cssws ' 2700 2729 WRITE ( 14 ) surf_h(l)%cssws 2701 2730 ENDIF 2702 WRITE ( 14 ) 'surf_h(' // dum // ')%qcsws '2703 2731 IF ( ALLOCATED ( surf_h(l)%qcsws ) ) THEN 2732 WRITE ( 14 ) 'surf_h(' // dum // ')%qcsws ' 2704 2733 WRITE ( 14 ) surf_h(l)%qcsws 2705 2734 ENDIF 2706 WRITE ( 14 ) 'surf_h(' // dum // ')%ncsws '2707 2735 IF ( ALLOCATED ( surf_h(l)%ncsws ) ) THEN 2736 WRITE ( 14 ) 'surf_h(' // dum // ')%ncsws ' 2708 2737 WRITE ( 14 ) surf_h(l)%ncsws 2709 2738 ENDIF 2710 WRITE ( 14 ) 'surf_h(' // dum // ')%qrsws '2711 2739 IF ( ALLOCATED ( surf_h(l)%qrsws ) ) THEN 2740 WRITE ( 14 ) 'surf_h(' // dum // ')%qrsws ' 2712 2741 WRITE ( 14 ) surf_h(l)%qrsws 2713 2742 ENDIF 2714 WRITE ( 14 ) 'surf_h(' // dum // ')%nrsws '2715 2743 IF ( ALLOCATED ( surf_h(l)%nrsws ) ) THEN 2744 WRITE ( 14 ) 'surf_h(' // dum // ')%nrsws ' 2716 2745 WRITE ( 14 ) surf_h(l)%nrsws 2717 2746 ENDIF 2718 WRITE ( 14 ) 'surf_h(' // dum // ')%sasws '2719 2747 IF ( ALLOCATED ( surf_h(l)%sasws ) ) THEN 2748 WRITE ( 14 ) 'surf_h(' // dum // ')%sasws ' 2720 2749 WRITE ( 14 ) surf_h(l)%sasws 2721 2750 ENDIF … … 2731 2760 WRITE ( 14 ) surf_v(l)%end_index 2732 2761 2733 WRITE ( 14 ) 'surf_v(' // dum // ')%us '2734 2762 IF ( ALLOCATED ( surf_v(l)%us ) ) THEN 2763 WRITE ( 14 ) 'surf_v(' // dum // ')%us ' 2735 2764 WRITE ( 14 ) surf_v(l)%us 2736 2765 ENDIF 2737 WRITE ( 14 ) 'surf_v(' // dum // ')%ts '2738 2766 IF ( ALLOCATED ( surf_v(l)%ts ) ) THEN 2767 WRITE ( 14 ) 'surf_v(' // dum // ')%ts ' 2739 2768 WRITE ( 14 ) surf_v(l)%ts 2740 2769 ENDIF 2741 WRITE ( 14 ) 'surf_v(' // dum // ')%qs '2742 2770 IF ( ALLOCATED ( surf_v(l)%qs ) ) THEN 2771 WRITE ( 14 ) 'surf_v(' // dum // ')%qs ' 2743 2772 WRITE ( 14 ) surf_v(l)%qs 2744 2773 ENDIF 2745 WRITE ( 14 ) 'surf_v(' // dum // ')%ss '2746 2774 IF ( ALLOCATED ( surf_v(l)%ss ) ) THEN 2775 WRITE ( 14 ) 'surf_v(' // dum // ')%ss ' 2747 2776 WRITE ( 14 ) surf_v(l)%ss 2748 2777 ENDIF 2749 WRITE ( 14 ) 'surf_v(' // dum // ')%qcs '2750 2778 IF ( ALLOCATED ( surf_v(l)%qcs ) ) THEN 2779 WRITE ( 14 ) 'surf_v(' // dum // ')%qcs ' 2751 2780 WRITE ( 14 ) surf_v(l)%qcs 2752 2781 ENDIF 2753 WRITE ( 14 ) 'surf_v(' // dum // ')%ncs '2754 2782 IF ( ALLOCATED ( surf_v(l)%ncs ) ) THEN 2783 WRITE ( 14 ) 'surf_v(' // dum // ')%ncs ' 2755 2784 WRITE ( 14 ) surf_v(l)%ncs 2756 2785 ENDIF 2757 WRITE ( 14 ) 'surf_v(' // dum // ')%qrs '2758 2786 IF ( ALLOCATED ( surf_v(l)%qrs ) ) THEN 2787 WRITE ( 14 ) 'surf_v(' // dum // ')%qrs ' 2759 2788 WRITE ( 14 ) surf_v(l)%qrs 2760 2789 ENDIF 2761 WRITE ( 14 ) 'surf_v(' // dum // ')%nrs '2762 2790 IF ( ALLOCATED ( surf_v(l)%nrs ) ) THEN 2791 WRITE ( 14 ) 'surf_v(' // dum // ')%nrs ' 2763 2792 WRITE ( 14 ) surf_v(l)%nrs 2764 2793 ENDIF 2765 WRITE ( 14 ) 'surf_v(' // dum // ')%ol '2766 2794 IF ( ALLOCATED ( surf_v(l)%ol ) ) THEN 2795 WRITE ( 14 ) 'surf_v(' // dum // ')%ol ' 2767 2796 WRITE ( 14 ) surf_v(l)%ol 2768 2797 ENDIF 2769 WRITE ( 14 ) 'surf_v(' // dum // ')%rib '2770 2798 IF ( ALLOCATED ( surf_v(l)%rib ) ) THEN 2799 WRITE ( 14 ) 'surf_v(' // dum // ')%rib ' 2771 2800 WRITE ( 14 ) surf_v(l)%rib 2772 2801 ENDIF 2773 WRITE ( 14 ) 'surf_v(' // dum // ')%pt_surface '2774 2802 IF ( ALLOCATED ( surf_v(l)%pt_surface ) ) THEN 2803 WRITE ( 14 ) 'surf_v(' // dum // ')%pt_surface ' 2775 2804 WRITE ( 14 ) surf_v(l)%pt_surface 2776 2805 ENDIF 2777 WRITE ( 14 ) 'surf_v(' // dum // ')%shf '2778 2806 IF ( ALLOCATED ( surf_v(l)%shf ) ) THEN 2807 WRITE ( 14 ) 'surf_v(' // dum // ')%shf ' 2779 2808 WRITE ( 14 ) surf_v(l)%shf 2780 2809 ENDIF 2781 WRITE ( 14 ) 'surf_v(' // dum // ')%qsws '2782 2810 IF ( ALLOCATED ( surf_v(l)%qsws ) ) THEN 2811 WRITE ( 14 ) 'surf_v(' // dum // ')%qsws ' 2783 2812 WRITE ( 14 ) surf_v(l)%qsws 2784 2813 ENDIF 2785 WRITE ( 14 ) 'surf_v(' // dum // ')%ssws '2786 2814 IF ( ALLOCATED ( surf_v(l)%ssws ) ) THEN 2815 WRITE ( 14 ) 'surf_v(' // dum // ')%ssws ' 2787 2816 WRITE ( 14 ) surf_v(l)%ssws 2788 2817 ENDIF 2789 WRITE ( 14 ) 'surf_v(' // dum // ')%css '2790 2818 IF ( ALLOCATED ( surf_v(l)%css ) ) THEN 2819 WRITE ( 14 ) 'surf_v(' // dum // ')%css ' 2791 2820 WRITE ( 14 ) surf_v(l)%css 2792 ENDIF 2793 WRITE ( 14 ) 'surf_v(' // dum // ')%cssws ' 2821 ENDIF 2794 2822 IF ( ALLOCATED ( surf_v(l)%cssws ) ) THEN 2823 WRITE ( 14 ) 'surf_v(' // dum // ')%cssws ' 2795 2824 WRITE ( 14 ) surf_v(l)%cssws 2796 ENDIF 2797 WRITE ( 14 ) 'surf_v(' // dum // ')%qcsws ' 2825 ENDIF 2798 2826 IF ( ALLOCATED ( surf_v(l)%qcsws ) ) THEN 2827 WRITE ( 14 ) 'surf_v(' // dum // ')%qcsws ' 2799 2828 WRITE ( 14 ) surf_v(l)%qcsws 2800 ENDIF 2801 WRITE ( 14 ) 'surf_v(' // dum // ')%ncsws ' 2829 ENDIF 2802 2830 IF ( ALLOCATED ( surf_v(l)%ncsws ) ) THEN 2831 WRITE ( 14 ) 'surf_v(' // dum // ')%ncsws ' 2803 2832 WRITE ( 14 ) surf_v(l)%ncsws 2804 2833 ENDIF 2805 WRITE ( 14 ) 'surf_v(' // dum // ')%qrsws '2806 2834 IF ( ALLOCATED ( surf_v(l)%qrsws ) ) THEN 2835 WRITE ( 14 ) 'surf_v(' // dum // ')%qrsws ' 2807 2836 WRITE ( 14 ) surf_v(l)%qrsws 2808 2837 ENDIF 2809 WRITE ( 14 ) 'surf_v(' // dum // ')%nrsws '2810 2838 IF ( ALLOCATED ( surf_v(l)%nrsws ) ) THEN 2839 WRITE ( 14 ) 'surf_v(' // dum // ')%nrsws ' 2811 2840 WRITE ( 14 ) surf_v(l)%nrsws 2812 ENDIF 2813 WRITE ( 14 ) 'surf_v(' // dum // ')%sasws ' 2841 ENDIF 2814 2842 IF ( ALLOCATED ( surf_v(l)%sasws ) ) THEN 2843 WRITE ( 14 ) 'surf_v(' // dum // ')%sasws ' 2815 2844 WRITE ( 14 ) surf_v(l)%sasws 2816 2845 ENDIF 2817 WRITE ( 14 ) 'surf_v(' // dum // ')%mom_uv '2818 2846 IF ( ALLOCATED ( surf_v(l)%mom_flux_uv ) ) THEN 2847 WRITE ( 14 ) 'surf_v(' // dum // ')%mom_uv ' 2819 2848 WRITE ( 14 ) surf_v(l)%mom_flux_uv 2820 2849 ENDIF 2821 WRITE ( 14 ) 'surf_v(' // dum // ')%mom_w '2822 2850 IF ( ALLOCATED ( surf_v(l)%mom_flux_w ) ) THEN 2851 WRITE ( 14 ) 'surf_v(' // dum // ')%mom_w ' 2823 2852 WRITE ( 14 ) surf_v(l)%mom_flux_w 2824 2853 ENDIF 2825 WRITE ( 14 ) 'surf_v(' // dum // ')%mom_tke '2826 2854 IF ( ALLOCATED ( surf_v(l)%mom_flux_tke ) ) THEN 2855 WRITE ( 14 ) 'surf_v(' // dum // ')%mom_tke ' 2827 2856 WRITE ( 14 ) surf_v(l)%mom_flux_tke 2828 2857 ENDIF … … 3536 3565 surf_match_def = surf_def_h(l)%end_index(jc,ic) >= & 3537 3566 surf_def_h(l)%start_index(jc,ic) 3538 surf_match_lsm = surf_lsm_h%end_index(jc,ic) >= & 3539 surf_lsm_h%start_index(jc,ic) 3540 surf_match_usm = surf_usm_h%end_index(jc,ic) >= & 3541 surf_usm_h%start_index(jc,ic) 3567 surf_match_lsm = ( surf_lsm_h%end_index(jc,ic) >= & 3568 surf_lsm_h%start_index(jc,ic) ) & 3569 .AND. l == 0 3570 surf_match_usm = ( surf_usm_h%end_index(jc,ic) >= & 3571 surf_usm_h%start_index(jc,ic) ) & 3572 .AND. l == 0 3542 3573 3543 3574 IF ( surf_match_def ) THEN … … 3587 3618 surf_match_usm = surf_usm_v(l)%end_index(jc,ic) >= & 3588 3619 surf_usm_v(l)%start_index(jc,ic) 3589 3590 3591 3620 3592 3621 IF ( surf_match_def ) THEN … … 3634 3663 ENDIF 3635 3664 3636 3637 3665 CONTAINS 3638 3666 !------------------------------------------------------------------------------! -
palm/trunk/SOURCE/urban_surface_mod.f90
r2797 r2805 26 26 ! ----------------- 27 27 ! $Id$ 28 ! Initialization of resistances. 29 ! 30 ! 2797 2018-02-08 13:24:35Z suehring 28 31 ! Comment concerning output of ground-heat flux added. 29 32 ! … … 3473 3476 surf_usm_v(l)%ground_level(m) = .TRUE. 3474 3477 3478 ENDDO 3479 ENDDO 3480 ! 3481 !-- Initialization of resistances. 3482 DO m = 1, surf_usm_h%ns 3483 surf_usm_h%r_a(m) = 50.0_wp 3484 surf_usm_h%r_a_green(m) = 50.0_wp 3485 surf_usm_h%r_a_window(m) = 50.0_wp 3486 ENDDO 3487 DO l = 0, 3 3488 DO m = 1, surf_usm_v(l)%ns 3489 surf_usm_v(l)%r_a(m) = 50.0_wp 3490 surf_usm_v(l)%r_a_green(m) = 50.0_wp 3491 surf_usm_v(l)%r_a_window(m) = 50.0_wp 3475 3492 ENDDO 3476 3493 ENDDO
Note: See TracChangeset
for help on using the changeset viewer.