Changeset 3988 for palm/trunk/SOURCE


Ignore:
Timestamp:
May 22, 2019 11:32:37 AM (6 years ago)
Author:
kanani
Message:

enable steering of output interval for virtual measurements

Location:
palm/trunk/SOURCE
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/Makefile

    r3880 r3988  
    2525# -----------------
    2626# $Id$
     27# Add dependencies for virtual_measurement_mod
     28#
     29# 3880 2019-04-08 21:43:02Z knoop
    2730# Add Netcdf data output for indoor model
    2831# Remove some dependencies
     
    15701573        spectra_mod.o \
    15711574        surface_mod.o \
    1572         vertical_nesting_mod.o
     1575        vertical_nesting_mod.o \
     1576        virtual_measurement_mod.o
    15731577run_control.o: \
    15741578        cpulog_mod.o \
     
    18761880        spectra_mod.o \
    18771881        surface_mod.o \
    1878         vertical_nesting_mod.o
     1882        vertical_nesting_mod.o \
     1883        virtual_measurement_mod.o
  • palm/trunk/SOURCE/read_restart_data_mod.f90

    r3936 r3988  
    2525! -----------------
    2626! $Id$
     27! + time_virtual_measurement (to enable steering of output interval)
     28!
     29! 3936 2019-04-26 15:38:02Z kanani
    2730! Enable time-averaged output of theta_2m* with restarts
    2831!
     
    167170    USE vertical_nesting_mod,                                                  &
    168171        ONLY:  vnest_init
     172
     173    USE virtual_measurement_mod,                                               &
     174        ONLY:  time_virtual_measurement
    169175
    170176
     
    670676             CASE ( 'time_utc_init' )
    671677                READ ( 13 )  time_utc_init
     678             CASE ( 'time_virtual_measurement' )
     679                READ ( 13 )  time_virtual_measurement
    672680             CASE ( 'timestep_scheme' )
    673681                READ ( 13 )  timestep_scheme
  • palm/trunk/SOURCE/time_integration.f90

    r3968 r3988  
    2525! -----------------
    2626! $Id$
     27! Implement steerable output interval for virtual measurements
     28!
     29! 3968 2019-05-13 11:04:01Z suehring
    2730! replace nspec_out with n_matched_vars
    2831!
     
    657660
    658661    USE virtual_measurement_mod,                                                                   &
    659         ONLY:  vm_data_output, vm_sampling, vm_time_start
     662        ONLY:  dt_virtual_measurement,                                                             &
     663               time_virtual_measurement,                                                           &
     664               vm_data_output,                                                                     &
     665               vm_sampling,                                                                        &
     666               vm_time_start
    660667
    661668
     
    15381545       ENDIF
    15391546!
     1547!--    Increment time-counter for virtual measurements
     1548       IF ( virtual_measurement  .AND.  vm_time_start <= time_since_reference_point )  THEN
     1549          time_virtual_measurement = time_virtual_measurement + dt_3d
     1550       ENDIF
     1551!
    15401552!--    In case of synthetic turbulence generation and parametrized turbulence
    15411553!--    information, update the time counter and if required, adjust the
     
    16801692!
    16811693!--    Take virtual measurements
    1682        IF ( virtual_measurement  .AND.  vm_time_start <= time_since_reference_point )  THEN
     1694       IF ( virtual_measurement  .AND.  time_virtual_measurement >= dt_virtual_measurement         &
     1695                                 .AND.  vm_time_start <= time_since_reference_point )  THEN
    16831696          CALL vm_sampling
    16841697          CALL vm_data_output
    1685        ENDIF
    1686 
     1698          time_virtual_measurement = MOD(      time_virtual_measurement,                           &
     1699                                          MAX( dt_virtual_measurement, dt_3d ) )
     1700       ENDIF
    16871701!
    16881702!--    Profile output (ASCII) on file
  • palm/trunk/SOURCE/virtual_measurement_mod.f90

    r3913 r3988  
    2525! -----------------
    2626! $Id$
     27! Add variables to enable steering of output interval for virtual measurements
     28!
     29! 3913 2019-04-17 15:12:28Z gronemeier
    2730! Bugfix: rotate positions of measurements before writing them into file
    2831!
     
    284287    LOGICAL ::  init = .TRUE.                     !< flag indicating initialization of data output
    285288    LOGICAL ::  use_virtual_measurement = .FALSE. !< Namelist parameter
    286    
    287     REAL(wp) ::  vm_time_start = 0.0              !< time after virtual measurements should start
     289
     290    REAL(wp) ::  dt_virtual_measurement = 0.0_wp    !< namelist parameter
     291    REAL(wp) ::  time_virtual_measurement = 0.0_wp  !< time since last 3d output
     292    REAL(wp) ::  vm_time_start = 0.0                !< time after virtual measurements should start
    288293
    289294    TYPE( virt_general )                        ::  vmea_general !< data structure which encompass general variables
     
    325330!
    326331!-- Public variables
    327     PUBLIC  vmea, vmea_general, vm_time_start
     332    PUBLIC  dt_virtual_measurement, time_virtual_measurement, vmea, vmea_general, vm_time_start
    328333
    329334 CONTAINS
     
    374379    CHARACTER (LEN=80) ::  line   !< dummy string that contains the current line of the parameter file
    375380 
    376     NAMELIST /virtual_measurement_parameters/  use_virtual_measurement,        &
     381    NAMELIST /virtual_measurement_parameters/  dt_virtual_measurement,                             &
     382                                               use_virtual_measurement,                            &
    377383                                               vm_time_start
    378384
  • palm/trunk/SOURCE/write_restart_data_mod.f90

    r3936 r3988  
    2525! -----------------
    2626! $Id$
     27! + time_virtual_measurement (to enable steering of output interval)
     28!
     29! 3936 2019-04-26 15:38:02Z kanani
    2730! Enable time-averaged output of theta_2m* with restarts
    2831!
     
    135138        ONLY:  vnest_init
    136139
     140    USE virtual_measurement_mod,                                               &
     141        ONLY:  time_virtual_measurement
     142
    137143
    138144    IMPLICIT NONE
     
    713719       WRITE ( 14 )  time_utc_init
    714720
     721       CALL wrd_write_string( 'time_virtual_measurement' )
     722       WRITE ( 14 )  time_virtual_measurement
     723
    715724       CALL wrd_write_string( 'timestep_scheme' )
    716725       WRITE ( 14 )  timestep_scheme
Note: See TracChangeset for help on using the changeset viewer.