- Timestamp:
- Jan 29, 2021 3:27:59 PM (4 years ago)
- Location:
- palm/trunk
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/LIB/rrtmg/install_rrtmg
r4843 r4858 1 #!/bin/ ksh1 #!/bin/bash 2 2 3 3 # install_rrtmg - install script for creating a RRTMG library … … 27 27 # ----------------- 28 28 # $Id$ 29 # switch from ksh to bash 30 # 31 # 29 32 # 30 33 # 1613 2015-07-08 14:53:29Z maronga -
palm/trunk/LIB/rrtmg/rrlw_ncpar.f90
r1585 r4858 5 5 save 6 6 7 character(len=100) :: rrtmg_lw_input_file_name = 'RRTMG_LW' 8 7 9 real(kind=rb), parameter :: cpdair = 1003.5 ! Specific heat capacity of dry air 8 10 ! at constant pressure at 273 K -
palm/trunk/LIB/rrtmg/rrsw_ncpar.f90
r1585 r4858 5 5 save 6 6 7 character(len=100) :: rrtmg_sw_input_file_name = 'RRTMG_SW' 8 7 9 real(kind=rb), parameter :: cpdair = 1003.5 ! Specific heat capacity of dry air 8 10 ! at constant pressure at 273 K -
palm/trunk/LIB/rrtmg/rrtmg_lw_read_nc.f90
r1585 r4858 32 32 33 33 status(:) = nf90_NoErr 34 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)34 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 35 35 36 36 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 98 98 99 99 status(:) = nf90_NoErr 100 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)100 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 101 101 102 102 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 154 154 155 155 status(:) = nf90_NoErr 156 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)156 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 157 157 158 158 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 220 220 221 221 status(:) = nf90_NoErr 222 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)222 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 223 223 224 224 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 276 276 277 277 status(:) = nf90_NoErr 278 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)278 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 279 279 280 280 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 346 346 347 347 status(:) = nf90_NoErr 348 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)348 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 349 349 350 350 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 413 413 414 414 status(:) = nf90_NoErr 415 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)415 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 416 416 417 417 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 482 482 483 483 status(:) = nf90_NoErr 484 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)484 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 485 485 486 486 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 583 583 584 584 status(:) = nf90_NoErr 585 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)585 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 586 586 587 587 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 649 649 650 650 status(:) = nf90_NoErr 651 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)651 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 652 652 653 653 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 705 705 706 706 status(:) = nf90_NoErr 707 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)707 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 708 708 709 709 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 771 771 772 772 status(:) = nf90_NoErr 773 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)773 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 774 774 775 775 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 817 817 818 818 status(:) = nf90_NoErr 819 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)819 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 820 820 821 821 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 887 887 888 888 status(:) = nf90_NoErr 889 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)889 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 890 890 891 891 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 942 942 943 943 status(:) = nf90_NoErr 944 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)944 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 945 945 946 946 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) … … 993 993 994 994 status(:) = nf90_NoErr 995 status(1) = nf90_open( 'rrtmg_lw.nc',nf90_nowrite,ncid)995 status(1) = nf90_open(trim(rrtmg_lw_input_file_name),nf90_nowrite,ncid) 996 996 997 997 status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID) -
palm/trunk/LIB/rrtmg/rrtmg_sw_read_nc.f90
r1585 r4858 31 31 32 32 status(:) = nf90_NoErr 33 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)33 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 34 34 35 35 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 87 87 88 88 status(:) = nf90_NoErr 89 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)89 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 90 90 91 91 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionUpperAtmos",varID) … … 147 147 148 148 status(:) = nf90_NoErr 149 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)149 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 150 150 151 151 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 203 203 204 204 status(:) = nf90_NoErr 205 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)205 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 206 206 207 207 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 260 260 261 261 status(:) = nf90_NoErr 262 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)262 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 263 263 264 264 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 327 327 328 328 status(:) = nf90_NoErr 329 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)329 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 330 330 331 331 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 387 387 388 388 status(:) = nf90_NoErr 389 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)389 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 390 390 391 391 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 441 441 442 442 status(:) = nf90_NoErr 443 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)443 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 444 444 445 445 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 490 490 491 491 status(:) = nf90_NoErr 492 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)492 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 493 493 494 494 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 559 559 560 560 status(:) = nf90_NoErr 561 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)561 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 562 562 563 563 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 609 609 610 610 status(:) = nf90_NoErr 611 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)611 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 612 612 613 613 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 643 643 644 644 status(:) = nf90_NoErr 645 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)645 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 646 646 647 647 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) … … 689 689 690 690 status(:) = nf90_NoErr 691 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)691 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 692 692 693 693 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionUpperAtmos",varID) … … 739 739 740 740 status(:) = nf90_NoErr 741 status(1) = nf90_open( 'rrtmg_sw.nc',nf90_nowrite,ncid)741 status(1) = nf90_open(trim(rrtmg_sw_input_file_name),nf90_nowrite,ncid) 742 742 743 743 status(2) = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID) -
palm/trunk/SCRIPTS/.palm.iofiles
r4814 r4858 17 17 PIDS_VM inopt:tr d3#:d3r $base_data/$run_identifier/INPUT _vmeas* 18 18 PIDS_WTM inopt:tr d3#:d3r $base_data/$run_identifier/INPUT _wtmpar* 19 rrtmg_lw.ncinopt:tr d3#:d3r $base_data/$run_identifier/INPUT _rlw20 rrtmg_sw.ncinopt:tr d3#:d3r $base_data/$run_identifier/INPUT _rsw19 RRTMG_LW inopt:tr d3#:d3r $base_data/$run_identifier/INPUT _rlw 20 RRTMG_SW inopt:tr d3#:d3r $base_data/$run_identifier/INPUT _rsw 21 21 WTM_DATA inopt:tr d3#:d3r $base_data/$run_identifier/INPUT _wtm 22 22 BININ in:lnpe d3r:cyclic $restart_data_path/$run_identifier/RESTART _d3d* -
palm/trunk/SOURCE/radiation_model_mod.f90
r4843 r4858 27 27 ! ----------------- 28 28 ! $Id$ 29 ! default value for unscheduled calls of the radiation model set to FALSE, 30 ! rrtmg input file names changed 31 ! 32 ! 4843 2021-01-15 15:22:11Z raasch 29 33 ! local namelist parameter added to switch off the module although the respective module namelist 30 34 ! appears in the namelist file … … 664 668 INTEGER(iwp) :: day_of_year !< day of the current year 665 669 666 LOGICAL :: unscheduled_radiation_calls = . TRUE., & !< flag parameter indicating whether additional calls667 !< of the radiation code are allowed668 constant_albedo = .FALSE., & !< flag parameter indicating whether the albedo may669 !< change depending on zenith670 force_radiation_call = .FALSE., & !< flag parameter for unscheduled radiation calls671 lw_radiation = .TRUE., & !< flag parameter indicating whether longwave radiation shall be calculated672 radiation = .FALSE., & !< flag parameter indicating whether the radiation model is used673 sun_up = .TRUE., & !< flag parameter indicating whether the sun is up or down674 sw_radiation = .TRUE., & !< flag parameter indicating whether shortwave675 !< radiation shall be calculated676 sun_direction = .FALSE., & !< flag parameter indicating whether solar direction shall be calculated677 average_radiation = .FALSE., & !< flag to set the calculation of radiation averaging for the domain678 radiation_interactions = .FALSE., & !< flag to activiate RTM (TRUE only if vertical679 !< urban/land surface and trees exist)680 surface_reflections = .TRUE., & !< flag to switch the calculation of radiation681 !<interaction between surfaces.682 !< When it switched off, only the effect of buildings and trees shadow683 !< will be considered. However fewer SVFs are expected.684 radiation_interactions_on = .TRUE. !< namelist flag to force RTM activiation regardless685 !<to vertical urban/land surface and trees670 LOGICAL :: unscheduled_radiation_calls = .FALSE., & !< flag parameter indicating whether additional calls 671 !< of the radiation code are allowed 672 constant_albedo = .FALSE., & !< flag parameter indicating whether the albedo may 673 !< change depending on zenith 674 force_radiation_call = .FALSE., & !< flag parameter for unscheduled radiation calls 675 lw_radiation = .TRUE., & !< flag parameter indicating whether longwave radiation shall be calculated 676 radiation = .FALSE., & !< flag parameter indicating whether the radiation model is used 677 sun_up = .TRUE., & !< flag parameter indicating whether the sun is up or down 678 sw_radiation = .TRUE., & !< flag parameter indicating whether shortwave 679 !< radiation shall be calculated 680 sun_direction = .FALSE., & !< flag parameter indicating whether solar direction shall be calculated 681 average_radiation = .FALSE., & !< flag to set the calculation of radiation averaging for the domain 682 radiation_interactions = .FALSE., & !< flag to activiate RTM (TRUE only if vertical 683 !< urban/land surface and trees exist) 684 surface_reflections = .TRUE., & !< flag to switch the calculation of radiation 685 !<interaction between surfaces. 686 !< When it switched off, only the effect of buildings and trees shadow 687 !< will be considered. However fewer SVFs are expected. 688 radiation_interactions_on = .TRUE. !< namelist flag to force RTM activiation regardless 689 !<to vertical urban/land surface and trees 686 690 687 691 REAL(wp), PARAMETER :: emissivity_atm_clsky = 0.8_wp !< emissivity of the clear-sky atmosphere … … 1922 1926 SUBROUTINE radiation_init 1923 1927 1928 #if defined( __rrtmg ) 1929 USE control_parameters, & 1930 ONLY: run_identifier 1931 #endif 1932 1924 1933 IMPLICIT NONE 1925 1934 … … 3104 3113 ! 3105 3114 !-- Initialize RRTMG, before check if files are existent 3106 INQUIRE( FILE = ' rrtmg_lw.nc', EXIST = lw_exists )3115 INQUIRE( FILE = 'RRTMG_LW', EXIST = lw_exists ) 3107 3116 IF ( .NOT. lw_exists ) THEN 3108 message_string = 'Input file rrtmg_lw.nc &for rrtmg missing. ' //&3109 '&Please provide <jobname>_lsw file in the INPUT directory.'3117 message_string = 'Input file RRTMG_LW for rrtmg model missing.& Please provide ' // & 3118 TRIM( run_identifier ) // '_lsw file in the INPUT directory.' 3110 3119 CALL message( 'radiation_init', 'PA0583', 1, 2, 0, 6, 0 ) 3111 3120 ENDIF 3112 INQUIRE( FILE = ' rrtmg_sw.nc', EXIST = sw_exists )3121 INQUIRE( FILE = 'RRTMG_SW', EXIST = sw_exists ) 3113 3122 IF ( .NOT. sw_exists ) THEN 3114 message_string = 'Input file rrtmg_sw.nc &for rrtmg missing. ' //&3115 '&Please provide <jobname>_rsw file in the INPUT directory.'3123 message_string = 'Input file RRTMG_SW for rrtmg model missing.& Please provide ' // & 3124 TRIM( run_identifier ) // '_rsw file in the INPUT directory.' 3116 3125 CALL message( 'radiation_init', 'PA0584', 1, 2, 0, 6, 0 ) 3117 3126 ENDIF … … 3124 3133 INQUIRE( FILE = 'RAD_SND_DATA', EXIST = snd_exists ) 3125 3134 IF ( .NOT. snd_exists ) THEN 3126 rrtm_input_file = ' rrtmg_lw.nc'3135 rrtm_input_file = 'RRTMG_LW' 3127 3136 ENDIF 3128 3137
Note: See TracChangeset
for help on using the changeset viewer.