Changeset 4858 for palm/trunk


Ignore:
Timestamp:
Jan 29, 2021 3:27:59 PM (4 years ago)
Author:
raasch
Message:

rrtmg input file names changed, default value for unscheduled calls of the radiation model set to FALSE

Location:
palm/trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/LIB/rrtmg/install_rrtmg

    r4843 r4858  
    1 #!/bin/ksh
     1#!/bin/bash
    22
    33# install_rrtmg - install script for creating a RRTMG library
     
    2727# -----------------
    2828# $Id$
     29# switch from ksh to bash
     30#
     31#
    2932#
    3033# 1613 2015-07-08 14:53:29Z maronga
  • palm/trunk/LIB/rrtmg/rrlw_ncpar.f90

    r1585 r4858  
    55        save
    66       
     7        character(len=100) ::  rrtmg_lw_input_file_name = 'RRTMG_LW'
     8
    79        real(kind=rb), parameter :: cpdair = 1003.5  ! Specific heat capacity of dry air
    810                                                         ! at constant pressure at 273 K
  • palm/trunk/LIB/rrtmg/rrsw_ncpar.f90

    r1585 r4858  
    55    save
    66       
     7        character(len=100) ::  rrtmg_sw_input_file_name = 'RRTMG_SW'
     8
    79    real(kind=rb), parameter :: cpdair = 1003.5  ! Specific heat capacity of dry air
    810                                                         ! at constant pressure at 273 K
  • palm/trunk/LIB/rrtmg/rrtmg_lw_read_nc.f90

    r1585 r4858  
    3232       
    3333        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)
    3535       
    3636        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    9898       
    9999        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)
    101101       
    102102        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    154154       
    155155        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)
    157157       
    158158        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    220220       
    221221        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)
    223223       
    224224        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    276276       
    277277        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)
    279279       
    280280        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    346346       
    347347        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)
    349349       
    350350        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    413413       
    414414        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)
    416416       
    417417        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    482482       
    483483        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)
    485485       
    486486        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    583583       
    584584        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)
    586586       
    587587        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    649649       
    650650        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)
    652652       
    653653        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    705705       
    706706        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)
    708708       
    709709        status(2)   = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    771771       
    772772        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)
    774774       
    775775        status(2) = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    817817       
    818818        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)
    820820       
    821821        status(2)  = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    887887       
    888888        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)
    890890       
    891891        status(2)  = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    942942       
    943943        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)
    945945       
    946946        status(2)  = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
     
    993993       
    994994        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)
    996996       
    997997        status(2)  = nf90_inq_varid(ncid,"PlanckFractionLowerAtmos",varID)
  • palm/trunk/LIB/rrtmg/rrtmg_sw_read_nc.f90

    r1585 r4858  
    3131       
    3232        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)
    3434       
    3535        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    8787       
    8888        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)
    9090       
    9191        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionUpperAtmos",varID)
     
    147147       
    148148        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)
    150150       
    151151        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    203203       
    204204        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)
    206206       
    207207        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    260260       
    261261        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)
    263263       
    264264        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    327327       
    328328        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)
    330330       
    331331        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    387387       
    388388        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)
    390390       
    391391        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    441441       
    442442        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)
    444444       
    445445        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    490490       
    491491        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)
    493493       
    494494        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    559559       
    560560        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)
    562562       
    563563        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    609609       
    610610        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)
    612612       
    613613        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    643643       
    644644        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)
    646646       
    647647        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
     
    689689       
    690690        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)
    692692       
    693693        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionUpperAtmos",varID)
     
    739739       
    740740        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)
    742742       
    743743        status(2)  = nf90_inq_varid(ncid,"SolarSourceFunctionLowerAtmos",varID)
  • palm/trunk/SCRIPTS/.palm.iofiles

    r4814 r4858  
    1717PIDS_VM                  inopt:tr   d3#:d3r    $base_data/$run_identifier/INPUT            _vmeas*
    1818PIDS_WTM                 inopt:tr   d3#:d3r    $base_data/$run_identifier/INPUT            _wtmpar*
    19 rrtmg_lw.nc              inopt:tr   d3#:d3r    $base_data/$run_identifier/INPUT            _rlw
    20 rrtmg_sw.nc              inopt:tr   d3#:d3r    $base_data/$run_identifier/INPUT            _rsw
     19RRTMG_LW                 inopt:tr   d3#:d3r    $base_data/$run_identifier/INPUT            _rlw
     20RRTMG_SW                 inopt:tr   d3#:d3r    $base_data/$run_identifier/INPUT            _rsw
    2121WTM_DATA                 inopt:tr   d3#:d3r    $base_data/$run_identifier/INPUT            _wtm
    2222BININ                    in:lnpe    d3r:cyclic $restart_data_path/$run_identifier/RESTART  _d3d*
  • palm/trunk/SOURCE/radiation_model_mod.f90

    r4843 r4858  
    2727! -----------------
    2828! $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
    2933! local namelist parameter added to switch off the module although the respective module namelist
    3034! appears in the namelist file
     
    664668    INTEGER(iwp) ::  day_of_year                    !< day of the current year
    665669
    666     LOGICAL ::  unscheduled_radiation_calls = .TRUE., &  !< flag parameter indicating whether additional calls
    667                                                          !< of the radiation code are allowed
    668                 constant_albedo = .FALSE.,            &  !< flag parameter indicating whether the albedo may
    669                                                          !< change depending on zenith
    670                 force_radiation_call = .FALSE.,       &  !< flag parameter for unscheduled radiation calls
    671                 lw_radiation = .TRUE.,                &  !< flag parameter indicating whether longwave radiation shall be calculated
    672                 radiation = .FALSE.,                  &  !< flag parameter indicating whether the radiation model is used
    673                 sun_up    = .TRUE.,                   &  !< flag parameter indicating whether the sun is up or down
    674                 sw_radiation = .TRUE.,                &  !< flag parameter indicating whether shortwave
    675                                                          !< radiation shall be calculated
    676                 sun_direction = .FALSE.,              &  !< flag parameter indicating whether solar direction shall be calculated
    677                 average_radiation = .FALSE.,          &  !< flag to set the calculation of radiation averaging for the domain
    678                 radiation_interactions = .FALSE.,     &  !< flag to activiate RTM (TRUE only if vertical
    679                                                          !< urban/land surface and trees exist)
    680                 surface_reflections = .TRUE.,         &  !< flag to switch the calculation of radiation
    681                                                          !<interaction between surfaces.
    682                                                          !< When it switched off, only the effect of buildings and trees shadow
    683                                                          !< will be considered. However fewer SVFs are expected.
    684                 radiation_interactions_on = .TRUE.       !< namelist flag to force RTM activiation regardless
    685                                                          !<to vertical urban/land surface and trees
     670    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
    686690
    687691    REAL(wp), PARAMETER ::  emissivity_atm_clsky = 0.8_wp  !< emissivity of the clear-sky atmosphere
     
    19221926 SUBROUTINE radiation_init
    19231927
     1928#if defined( __rrtmg )
     1929    USE control_parameters,                                                                        &
     1930        ONLY:  run_identifier
     1931#endif
     1932
    19241933    IMPLICIT NONE
    19251934
     
    31043113!
    31053114!--    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 )
    31073116       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.'
    31103119          CALL message( 'radiation_init', 'PA0583', 1, 2, 0, 6, 0 )
    31113120       ENDIF
    3112        INQUIRE( FILE = 'rrtmg_sw.nc', EXIST = sw_exists )
     3121       INQUIRE( FILE = 'RRTMG_SW', EXIST = sw_exists )
    31133122       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.'
    31163125          CALL message( 'radiation_init', 'PA0584', 1, 2, 0, 6, 0 )
    31173126       ENDIF
     
    31243133       INQUIRE( FILE = 'RAD_SND_DATA', EXIST = snd_exists )
    31253134       IF ( .NOT. snd_exists )  THEN
    3126           rrtm_input_file = 'rrtmg_lw.nc'
     3135          rrtm_input_file = 'RRTMG_LW'
    31273136       ENDIF
    31283137
Note: See TracChangeset for help on using the changeset viewer.