Changeset 3421 for palm/trunk/SOURCE/check_parameters.f90
 Timestamp:
 Oct 24, 2018 6:39:32 PM (3 years ago)
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

palm/trunk/SOURCE/check_parameters.f90
r3377 r3421 25 25 !  26 26 ! $Id$ 27 ! Renamed output variables 28 ! Add checks for surface data output 29 ! 30 ! 3419 20181024 17:27:31Z gronemeier 27 31 ! Remove offline nesting in if clause for pressure top boundary condition 28 32 ! … … 777 781 778 782 USE statistics 783 784 USE surface_output_mod, & 785 ONLY: surface_output_check_parameters 779 786 780 787 USE synthetic_turbulence_generator_mod, & … … 1494 1501 IF ( urban_surface ) CALL usm_check_parameters 1495 1502 IF ( wind_turbine ) CALL wtm_check_parameters 1503 ! 1504 ! Checks for surface data output 1505 IF ( surface_data_output ) CALL surface_output_check_parameters 1496 1506 1497 1507 ! … … 2363 2373 hom(:,2,3,:) = SPREAD( zw, 2, statistic_regions+1 ) 2364 2374 2365 CASE ( ' pt', '#pt' )2375 CASE ( 'theta', '#theta' ) 2366 2376 IF ( .NOT. bulk_cloud_model ) THEN 2367 2377 dopr_index(i) = 4 … … 2452 2462 hom(:,2,15,:) = SPREAD( zw, 2, statistic_regions+1 ) 2453 2463 2454 CASE ( 'w" pt"' )2464 CASE ( 'w"theta"' ) 2455 2465 dopr_index(i) = 16 2456 2466 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2457 2467 hom(:,2,16,:) = SPREAD( zw, 2, statistic_regions+1 ) 2458 2468 2459 CASE ( 'w* pt*' )2469 CASE ( 'w*theta*' ) 2460 2470 dopr_index(i) = 17 2461 2471 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2462 2472 hom(:,2,17,:) = SPREAD( zw, 2, statistic_regions+1 ) 2463 2473 2464 CASE ( 'w pt' )2474 CASE ( 'wtheta' ) 2465 2475 dopr_index(i) = 18 2466 2476 dopr_unit(i) = TRIM ( heatflux_output_unit ) … … 2479 2489 IF ( constant_flux_layer ) hom(nzb,2,20,:) = zu(1) 2480 2490 2481 CASE ( 'w* pt*BC' )2491 CASE ( 'w*theta*BC' ) 2482 2492 dopr_index(i) = 21 2483 2493 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2484 2494 hom(:,2,21,:) = SPREAD( zw, 2, statistic_regions+1 ) 2485 2495 2486 CASE ( 'w ptBC' )2496 CASE ( 'wthetaBC' ) 2487 2497 dopr_index(i) = 22 2488 2498 dopr_unit(i) = TRIM ( heatflux_output_unit ) … … 2504 2514 hom(:,2,32,:) = SPREAD( zw, 2, statistic_regions+1 ) 2505 2515 2506 CASE ( ' pt*2' )2516 CASE ( 'theta*2' ) 2507 2517 dopr_index(i) = 33 2508 2518 dopr_unit(i) = 'K2' … … 2603 2613 ENDIF 2604 2614 2605 CASE ( ' lpt', '#lpt' )2615 CASE ( 'thetal', '#thetal' ) 2606 2616 IF ( .NOT. bulk_cloud_model ) THEN 2607 2617 message_string = 'data_output_pr = ' // & … … 2621 2631 ENDIF 2622 2632 2623 CASE ( ' vpt', '#vpt' )2633 CASE ( 'thetav', '#thetav' ) 2624 2634 dopr_index(i) = 44 2625 2635 dopr_unit(i) = 'K' … … 2632 2642 ENDIF 2633 2643 2634 CASE ( 'w" vpt"' )2644 CASE ( 'w"thetav"' ) 2635 2645 dopr_index(i) = 45 2636 2646 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2637 2647 hom(:,2,45,:) = SPREAD( zw, 2, statistic_regions+1 ) 2638 2648 2639 CASE ( 'w* vpt*' )2649 CASE ( 'w*thetav*' ) 2640 2650 dopr_index(i) = 46 2641 2651 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2642 2652 hom(:,2,46,:) = SPREAD( zw, 2, statistic_regions+1 ) 2643 2653 2644 CASE ( 'w vpt' )2654 CASE ( 'wthetav' ) 2645 2655 dopr_index(i) = 47 2646 2656 dopr_unit(i) = TRIM ( heatflux_output_unit ) … … 2798 2808 hom(:,2,57,:) = SPREAD( zu, 2, statistic_regions+1 ) 2799 2809 2800 CASE ( 'u" pt"' )2810 CASE ( 'u"theta"' ) 2801 2811 dopr_index(i) = 58 2802 2812 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2803 2813 hom(:,2,58,:) = SPREAD( zu, 2, statistic_regions+1 ) 2804 2814 2805 CASE ( 'u* pt*' )2815 CASE ( 'u*theta*' ) 2806 2816 dopr_index(i) = 59 2807 2817 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2808 2818 hom(:,2,59,:) = SPREAD( zu, 2, statistic_regions+1 ) 2809 2819 2810 CASE ( 'u pt_t' )2820 CASE ( 'utheta_t' ) 2811 2821 dopr_index(i) = 60 2812 2822 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2813 2823 hom(:,2,60,:) = SPREAD( zu, 2, statistic_regions+1 ) 2814 2824 2815 CASE ( 'v" pt"' )2825 CASE ( 'v"theta"' ) 2816 2826 dopr_index(i) = 61 2817 2827 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2818 2828 hom(:,2,61,:) = SPREAD( zu, 2, statistic_regions+1 ) 2819 2829 2820 CASE ( 'v* pt*' )2830 CASE ( 'v*theta*' ) 2821 2831 dopr_index(i) = 62 2822 2832 dopr_unit(i) = TRIM ( heatflux_output_unit ) 2823 2833 hom(:,2,62,:) = SPREAD( zu, 2, statistic_regions+1 ) 2824 2834 2825 CASE ( ' vpt_t' )2835 CASE ( 'thetav_t' ) 2826 2836 dopr_index(i) = 63 2827 2837 dopr_unit(i) = TRIM ( heatflux_output_unit ) … … 2855 2865 hom(:,2,72,:) = SPREAD( zu, 2, statistic_regions+1 ) 2856 2866 2857 CASE ( 'rho _air' )2867 CASE ( 'rho' ) 2858 2868 dopr_index(i) = 119 2859 2869 dopr_unit(i) = 'kg/m3' 2860 2870 hom(:,2,119,:) = SPREAD( zu, 2, statistic_regions+1 ) 2861 2871 2862 CASE ( 'rho_ air_zw' )2872 CASE ( 'rho_zw' ) 2863 2873 dopr_index(i) = 120 2864 2874 dopr_unit(i) = 'kg/m3' … … 3023 3033 unit = 'm2/s2' 3024 3034 3025 CASE ( ' lpt' )3035 CASE ( 'thetal' ) 3026 3036 IF ( .NOT. bulk_cloud_model ) THEN 3027 3037 message_string = 'output of "' // TRIM( var ) // '" requi' // & … … 3041 3051 IF ( TRIM( var ) == 'pr' ) unit = 'm' 3042 3052 3043 CASE ( 'q', ' vpt' )3053 CASE ( 'q', 'thetav' ) 3044 3054 IF ( .NOT. humidity ) THEN 3045 3055 message_string = 'output of "' // TRIM( var ) // '" requi' // & … … 3048 3058 ENDIF 3049 3059 IF ( TRIM( var ) == 'q' ) unit = 'kg/kg' 3050 IF ( TRIM( var ) == ' vpt' ) unit = 'K'3060 IF ( TRIM( var ) == 'thetav' ) unit = 'K' 3051 3061 3052 3062 CASE ( 'ql' ) … … 3084 3094 unit = 'kg/m3' 3085 3095 3086 CASE ( 'p', ' pt', 'u', 'v', 'w' )3096 CASE ( 'p', 'theta', 'u', 'v', 'w' ) 3087 3097 IF ( TRIM( var ) == 'p' ) unit = 'Pa' 3088 IF ( TRIM( var ) == ' pt' ) unit = 'K'3098 IF ( TRIM( var ) == 'theta' ) unit = 'K' 3089 3099 IF ( TRIM( var ) == 'u' ) unit = 'm/s' 3090 3100 IF ( TRIM( var ) == 'v' ) unit = 'm/s' … … 3093 3103 3094 3104 CASE ( 'ghf*', 'lwp*', 'ol*', 'qsws*', 'r_a*', & 3095 'shf*', 'ssws*', 't*', 'tsurf*', 'u *', 'z0*', 'z0h*', 'z0q*' )3105 'shf*', 'ssws*', 't*', 'tsurf*', 'us*', 'z0*', 'z0h*', 'z0q*' ) 3096 3106 IF ( k == 0 .OR. data_output(i)(ilen2:ilen) /= '_xy' ) THEN 3097 3107 message_string = 'illegal value for data_output: "' // & … … 3141 3151 IF ( TRIM( var ) == 't*' ) unit = 'K' 3142 3152 IF ( TRIM( var ) == 'tsurf*' ) unit = 'K' 3143 IF ( TRIM( var ) == 'u *') unit = 'm/s'3153 IF ( TRIM( var ) == 'us*' ) unit = 'm/s' 3144 3154 IF ( TRIM( var ) == 'z0*' ) unit = 'm' 3145 3155 IF ( TRIM( var ) == 'z0h*' ) unit = 'm'
Note: See TracChangeset
for help on using the changeset viewer.