Changeset 3622 for palm/trunk


Ignore:
Timestamp:
Dec 12, 2018 9:52:53 AM (3 years ago)
Author:
schwenkel
Message:

Important bugfix in case of restart runs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/bulk_cloud_model_mod.f90

    r3507 r3622  
    2525! -----------------
    2626! $Id$
     27! Important bugfix in case of restart runs.
     28!
     29! 3507 2018-11-08 14:28:46Z schwenkel
    2730! Minor bugfixes for bcm cache version and initializing prr
    2831!
     
    209212               intermediate_timestep_count_max, large_scale_forcing,           &
    210213               lsf_surf, pt_surface, rho_surface, surface_pressure,            &
    211                time_do2d_xy, message_string
     214               time_do2d_xy, message_string, initializing_actions
    212215
    213216    USE cpulog,                                                                &
     
    927930
    928931       IF ( bulk_cloud_model )  THEN
    929 
    930 !           dots_label(dots_num+1) = 'some_var'
    931 !           dots_unit(dots_num+1)  = 'm/s'
    932 !
    933 !           dots_num_palm = dots_num
    934 !           dots_num = dots_num + 1
    935 ! !
    936 ! !--       Stuff for the module
    937 !
    938 !           abs_velocity   = 0.0_wp
    939 
    940 !
    941 !--       Initialize the remaining quantities
    942           IF ( microphysics_morrison )  THEN
    943              DO  i = nxlg, nxrg
    944                 DO  j = nysg, nyng
    945                    qc(:,j,i) = 0.0_wp
    946                    nc(:,j,i) = 0.0_wp
     932          IF ( TRIM( initializing_actions ) /= 'read_restart_data' )  THEN
     933!
     934!--          Initialize the remaining quantities
     935             IF ( microphysics_morrison )  THEN
     936                DO  i = nxlg, nxrg
     937                   DO  j = nysg, nyng
     938                      qc(:,j,i) = 0.0_wp
     939                      nc(:,j,i) = 0.0_wp
     940                   ENDDO
    947941                ENDDO
    948              ENDDO
    949           ENDIF
    950 
    951           IF ( microphysics_seifert )  THEN
    952              DO  i = nxlg, nxrg
    953                 DO  j = nysg, nyng
    954                    qr(:,j,i) = 0.0_wp
    955                    nr(:,j,i) = 0.0_wp
     942             ENDIF
     943
     944             IF ( microphysics_seifert )  THEN
     945                DO  i = nxlg, nxrg
     946                   DO  j = nysg, nyng
     947                      qr(:,j,i) = 0.0_wp
     948                      nr(:,j,i) = 0.0_wp
     949                   ENDDO
    956950                ENDDO
    957              ENDDO
    958           ENDIF
    959 
    960 !
    961 !--       Liquid water content and precipitation amount
    962 !--       are zero at beginning of the simulation
    963           ql = 0.0_wp
    964 ! TODO ???
    965           qc = 0.0_wp
    966           precipitation_amount = 0.0_wp
    967           prr = 0.0_wp
    968 
    969 !
    970 !--       Initialize old and new time levels.
    971           IF ( microphysics_morrison )  THEN
    972              tqc_m = 0.0_wp
    973              tnc_m = 0.0_wp
    974              qc_p  = qc
    975              nc_p  = nc
    976           ENDIF
    977           IF ( microphysics_seifert )  THEN
    978              tqr_m = 0.0_wp
    979              tnr_m = 0.0_wp
    980              qr_p  = qr
    981              nr_p  = nr
    982           ENDIF
    983 
     951             ENDIF
     952!
     953!--          Liquid water content and precipitation amount
     954!--          are zero at beginning of the simulation
     955             ql = 0.0_wp
     956             qc = 0.0_wp
     957             precipitation_amount = 0.0_wp
     958             prr = 0.0_wp
     959!
     960!--          Initialize old and new time levels.
     961             IF ( microphysics_morrison )  THEN
     962                tqc_m = 0.0_wp
     963                tnc_m = 0.0_wp
     964                qc_p  = qc
     965                nc_p  = nc
     966             ENDIF
     967             IF ( microphysics_seifert )  THEN
     968                tqr_m = 0.0_wp
     969                tnr_m = 0.0_wp
     970                qr_p  = qr
     971                nr_p  = nr
     972             ENDIF
     973          ENDIF ! Only if not read_restart_data
    984974!
    985975!--       constant for the sedimentation of cloud water (2-moment cloud physics)
     
    17291719             READ ( 13 )  ventilation_effect
    17301720
     1721          CASE ( 'na_init' )
     1722             READ ( 13 )  na_init
     1723
     1724          CASE ( 'dry_aerosol_radius' )
     1725             READ ( 13 )  dry_aerosol_radius
     1726
     1727          CASE ( 'sigma_bulk' )
     1728             READ ( 13 )  sigma_bulk
     1729
     1730          CASE ( 'aerosol_bulk' )
     1731             READ ( 13 )  aerosol_bulk
     1732
     1733          CASE ( 'curvature_solution_effects_bulk' )
     1734             READ ( 13 )  curvature_solution_effects_bulk
     1735
     1736
    17311737!          CASE ( 'global_paramter' )
    17321738!             READ ( 13 )  global_parameter
     
    19261932       CALL wrd_write_string( 'ventilation_effect' )
    19271933       WRITE ( 14 )  ventilation_effect
     1934
     1935       CALL wrd_write_string( 'na_init' )
     1936       WRITE ( 14 )  na_init
     1937
     1938       CALL wrd_write_string( 'dry_aerosol_radius' )
     1939       WRITE ( 14 )  dry_aerosol_radius
     1940
     1941       CALL wrd_write_string( 'sigma_bulk' )
     1942       WRITE ( 14 )  sigma_bulk
     1943
     1944       CALL wrd_write_string( 'aerosol_bulk' )
     1945       WRITE ( 14 )  aerosol_bulk
     1946
     1947       CALL wrd_write_string( 'curvature_solution_effects_bulk' )
     1948       WRITE ( 14 )  curvature_solution_effects_bulk
     1949
    19281950
    19291951! needs preceeding allocation if array
Note: See TracChangeset for help on using the changeset viewer.