diff --git a/src/LIB/SURCOUCHE/src/mode_io_write_nc4.f90 b/src/LIB/SURCOUCHE/src/mode_io_write_nc4.f90 index c554d7da1ce6d9fbace3b81c53129cbcc1de0448..1cb8612348223ff3d62f219c09d385f20064b867 100644 --- a/src/LIB/SURCOUCHE/src/mode_io_write_nc4.f90 +++ b/src/LIB/SURCOUCHE/src/mode_io_write_nc4.f90 @@ -2339,7 +2339,7 @@ subroutine Write_flyer_time_coord( tpflyer ) tzdim%nid = idimid !Remark: incid is used in Write_time_coord - call Write_time_coord( tzdim, 'time axis for flyer', tpflyer%tpdates ) + call Write_time_coord( tzdim, 'time axis for flyer', tpflyer%tflyer_time%tpdates ) Deallocate( tzdim ) diff --git a/src/MNH/aircraft_balloon_evol.f90 b/src/MNH/aircraft_balloon_evol.f90 index 9642bcc4e8de8a731373a2db1fc3b94934abb8ce..bc55a8fa81c354217100c24237639f04ab554c1d 100644 --- a/src/MNH/aircraft_balloon_evol.f90 +++ b/src/MNH/aircraft_balloon_evol.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 2000-2021 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 2000-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -176,6 +176,7 @@ USE MODE_FSCATTER, ONLY: QEPSW,QEPSI,BHMIE,MOMG,MG USE MODE_GRIDPROJ USE MODE_ll USE MODE_MSG +USE MODE_STATPROF_TOOLS, ONLY: STATPROF_INSTANT ! USE MODI_GAMMA, ONLY: GAMMA USE MODI_WATER_SUM @@ -485,27 +486,8 @@ END IF !* 3.4 instant of storage ! ------------------ ! -IF ( TPFLYER%T_CUR == XUNDEF ) TPFLYER%T_CUR = TPFLYER%STEP - PTSTEP -! -TPFLYER%T_CUR = TPFLYER%T_CUR + PTSTEP -! -IF ( TPFLYER%T_CUR >= TPFLYER%STEP - 1.E-10 ) THEN - GSTORE = .TRUE. - TPFLYER%T_CUR = TPFLYER%T_CUR - TPFLYER%STEP - TPFLYER%N_CUR = TPFLYER%N_CUR + 1 -END IF -! -IF (GSTORE) THEN - IN = TPFLYER%N_CUR -#if 0 - tpflyer%tpdates(in)%nyear = tdtexp%nyear - tpflyer%tpdates(in)%nmonth = tdtexp%nmonth - tpflyer%tpdates(in)%nday = tdtexp%nday - tpflyer%tpdates(in)%xtime = tdtexp%xtime + ( in - 1 ) * tpflyer%step -#else - tpflyer%tpdates(in) = tdtcur -#endif -END IF +CALL STATPROF_INSTANT( TPFLYER%TFLYER_TIME, IN ) +IF ( IN > 0 ) GSTORE = .TRUE. ! else no profiler storage at this time step ! IF ( TPFLYER%FLY) THEN ! diff --git a/src/MNH/ini_aircraft.f90 b/src/MNH/ini_aircraft.f90 index 2df9363014ca83596f600d3a8d27b7bf60d4f77d..254889818d147a5045d8c7e5bda9f663f38b56db 100644 --- a/src/MNH/ini_aircraft.f90 +++ b/src/MNH/ini_aircraft.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 2000-2020 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 2000-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -127,7 +127,7 @@ TAIRCRAFT1%TITLE = 'DIMO19A' ! !* time step for storage ! -TAIRCRAFT1%STEP = 60. +TAIRCRAFT1%TFLYER_TIME%XTSTEP = 60. ! !* take-off date and time ! @@ -357,7 +357,7 @@ TAIRCRAFT2%TITLE = 'DIMO19B' ! !* time step for storage ! -TAIRCRAFT2%STEP = 60. +TAIRCRAFT2%TFLYER_TIME%XTSTEP = 60. ! !* take-off date and time ! @@ -616,7 +616,7 @@ TAIRCRAFT3%TITLE = 'SAAL19A' ! !* time step for storage ! -TAIRCRAFT3%STEP = 30. +TAIRCRAFT3%TFLYER_TIME%XTSTEP = 30. ! !* take-off date and time ! @@ -723,7 +723,7 @@ TAIRCRAFT4%TITLE = 'SAAL19B' ! !* time step for storage ! -TAIRCRAFT4%STEP = 30. +TAIRCRAFT4%TFLYER_TIME%XTSTEP = 30. ! !* take-off date and time ! @@ -829,7 +829,7 @@ TAIRCRAFT5%TITLE = 'SAIB19A' ! !* time step for storage ! -TAIRCRAFT5%STEP = 30. +TAIRCRAFT5%TFLYER_TIME%XTSTEP = 30. ! !* take-off date and time ! @@ -1073,7 +1073,7 @@ TAIRCRAFT6%TITLE = 'SAIB19B' ! !* time step for storage ! -TAIRCRAFT6%STEP = 30. +TAIRCRAFT6%TFLYER_TIME%XTSTEP = 30. ! !* take-off date and time ! @@ -1314,7 +1314,7 @@ TAIRCRAFT7%TITLE = 'TEST_19' ! !* time step for storage ! -TAIRCRAFT7%STEP = 60. +TAIRCRAFT7%TFLYER_TIME%XTSTEP = 60. ! !* take-off date and time ! @@ -1585,7 +1585,7 @@ TAIRCRAFT8%TITLE = 'DIMO22B' ! !* time step for storage ! -TAIRCRAFT8%STEP = 60. +TAIRCRAFT8%TFLYER_TIME%XTSTEP = 60. ! !* take-off date and time ! @@ -1859,7 +1859,7 @@ TAIRCRAFT9%TITLE = 'DIMO23A' ! !* time step for storage ! -TAIRCRAFT9%STEP = 60. +TAIRCRAFT9%TFLYER_TIME%XTSTEP = 60. ! !* take-off date and time ! diff --git a/src/MNH/ini_aircraft_balloon.f90 b/src/MNH/ini_aircraft_balloon.f90 index 72f52303a787df641d56e37fe99b3571260a156a..58803387be41bc9e30a843465c272925f3db8b78 100644 --- a/src/MNH/ini_aircraft_balloon.f90 +++ b/src/MNH/ini_aircraft_balloon.f90 @@ -317,9 +317,7 @@ TPFLYER%LAUNCH = TPDTSEG TPFLYER%CRASH = .FALSE. TPFLYER%FLY = .FALSE. ! -TPFLYER%T_CUR = XUNDEF -TPFLYER%N_CUR = 0 -TPFLYER%STEP = 60. ! s +TPFLYER%TFLYER_TIME%XTSTEP = 60. ! s ! TPFLYER%LAT = XUNDEF TPFLYER%LON = XUNDEF @@ -358,9 +356,9 @@ IF (TPFLYER%NMODEL > NMODEL) TPFLYER%NMODEL=0 IF (IMI /= TPFLYER%NMODEL .AND. .NOT. (IMI==1 .AND. TPFLYER%NMODEL==0) ) RETURN ! IF ( CPROGRAM == 'DIAG ' ) THEN - ISTORE = INT ( NTIME_AIRCRAFT_BALLOON / TPFLYER%STEP ) + 1 + ISTORE = INT ( NTIME_AIRCRAFT_BALLOON / TPFLYER%TFLYER_TIME%XTSTEP ) + 1 ELSE - ISTORE = NINT ( ( PSEGLEN - DYN_MODEL(1)%XTSTEP ) / TPFLYER%STEP ) + 1 + ISTORE = NINT ( ( PSEGLEN - DYN_MODEL(1)%XTSTEP ) / TPFLYER%TFLYER_TIME%XTSTEP ) + 1 ENDIF ! IF (TPFLYER%NMODEL == 0) ISTORE=0 @@ -369,7 +367,7 @@ IF (TPFLYER%NMODEL > 0) THEN ENDIF ! ! -allocate( tpflyer%tpdates(istore) ) +allocate( tpflyer%tflyer_time%tpdates(istore) ) ALLOCATE(TPFLYER%X (ISTORE)) ALLOCATE(TPFLYER%Y (ISTORE)) ALLOCATE(TPFLYER%Z (ISTORE)) @@ -558,7 +556,7 @@ IF ( CPROGRAM == 'MESONH' .OR. CPROGRAM == 'SPAWN ' .OR. CPROGRAM == 'REAL ' ) " Lat=",ZLAT," Lon=",ZLON," Rho=",TPFLYER%RHO END IF ! - TPFLYER%STEP = MAX ( PTSTEP, TPFLYER%STEP ) + TPFLYER%TFLYER_TIME%XTSTEP = MAX ( PTSTEP, TPFLYER%TFLYER_TIME%XTSTEP ) END IF ! ELSE IF (CPROGRAM == 'DIAG ' ) THEN @@ -579,7 +577,7 @@ ELSE IF (CPROGRAM == 'DIAG ' ) THEN " Lat=",ZLAT," Lon=",ZLON," Alt=",TPFLYER%Z_CUR END IF ! - TPFLYER%STEP = MAX (XSTEP_AIRCRAFT_BALLOON , TPFLYER%STEP ) + TPFLYER%TFLYER_TIME%XTSTEP = MAX (XSTEP_AIRCRAFT_BALLOON , TPFLYER%TFLYER_TIME%XTSTEP ) END IF END IF ! @@ -611,7 +609,7 @@ IF ( IMI /= TPFLYER%NMODEL ) RETURN ! LFLYER=.TRUE. ! -TPFLYER%STEP = MAX ( PTSTEP, TPFLYER%STEP ) +TPFLYER%TFLYER_TIME%XTSTEP = MAX ( PTSTEP, TPFLYER%TFLYER_TIME%XTSTEP ) ! IF (TPFLYER%SEG==0) THEN WRITE(ILUOUT,*) 'Error in aircraft flight path (aircraft number ',KNBR,' )' diff --git a/src/MNH/ini_balloon.f90 b/src/MNH/ini_balloon.f90 index 71e935021ef69f07716cc6491b7613de82328b4f..5c0095d21dc107f1a880d9e6f032778db5d1b61a 100644 --- a/src/MNH/ini_balloon.f90 +++ b/src/MNH/ini_balloon.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 2000-2020 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 2000-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -152,7 +152,7 @@ TBALLOON1%PRES = 98450. ! !* time step for data storage (s) ! -TBALLOON1%STEP = 20. +TBALLOON1%TFLYER_TIME%XTSTEP = 20. ! !* ascentional vertical speed of the ballon (in calm air) (for 'RADIOS') ! @@ -207,7 +207,7 @@ TBALLOON2%PRES = 98490. ! !* time step for data storage (s) ! -TBALLOON2%STEP = 20. +TBALLOON2%TFLYER_TIME%XTSTEP = 20. ! !* ascentional vertical speed of the ballon (in calm air) (for 'RADIOS') ! @@ -263,7 +263,7 @@ TBALLOON3%ALT = 865. ! !* time step for data storage (s) ! -TBALLOON3%STEP = 20. +TBALLOON3%TFLYER_TIME%XTSTEP = 20. ! !* ascentional vertical speed of the ballon (in calm air) (for 'RADIOS') ! @@ -319,7 +319,7 @@ TBALLOON4%ALT = 3959. ! !* time step for data storage (s) ! -TBALLOON4%STEP = 20. +TBALLOON4%TFLYER_TIME%XTSTEP = 20. ! !* ascentional vertical speed of the ballon (in calm air) (for 'RADIOS') ! @@ -374,7 +374,7 @@ TBALLOON5%ALT = 340. ! !* time step for data storage (s) ! -TBALLOON5%STEP = 20. +TBALLOON5%TFLYER_TIME%XTSTEP = 20. ! !* ascentional vertical speed of the ballon (in calm air) (for 'RADIOS') ! @@ -429,7 +429,7 @@ TBALLOON6%LON = 8.646 ! !* time step for data storage (s) ! -TBALLOON6%STEP = 20. +TBALLOON6%TFLYER_TIME%XTSTEP = 20. ! !* ascentional vertical speed of the ballon (in calm air) (for 'RADIOS') ! @@ -484,7 +484,7 @@ TBALLOON7%PRES = 62360. ! !* time step for data storage (s) ! -TBALLOON7%STEP = 20. +TBALLOON7%TFLYER_TIME%XTSTEP = 20. ! !* ascentional vertical speed of the ballon (in calm air) (for 'RADIOS') ! diff --git a/src/MNH/modd_aircraft_balloon.f90 b/src/MNH/modd_aircraft_balloon.f90 index 33d6f973fbc2407e4d9f72b8922e1d2e1179dc27..e3c30efca97acf7788e4ce3d9f7be2f03c84e639 100644 --- a/src/MNH/modd_aircraft_balloon.f90 +++ b/src/MNH/modd_aircraft_balloon.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 2000-2019 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 2000-2022 CNRS, Meteo-France and Universite Paul Sabatier !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt !MNH_LIC for details. version 1. @@ -40,7 +40,8 @@ ! ------------ ! ! -use modd_type_date, only: date_time +USE MODD_TYPE_STATPROF, ONLY: TSTATPROFTIME +use modd_type_date, only: date_time implicit none @@ -66,9 +67,7 @@ LOGICAL :: FLY ! occurence of flying ! !* storage monitoring ! -REAL :: T_CUR ! current time since last storage -INTEGER :: N_CUR ! current step of storage -REAL :: STEP ! storage time step +TYPE(TSTATPROFTIME) :: TFLYER_TIME ! Time management for flyer ! !* balloon dynamical characteristics ! @@ -112,7 +111,6 @@ REAL :: P_CUR ! current p (if 'AIRCRA' and 'ALTDEF' ! !* data records ! -type(date_time), dimension(:), pointer :: tpdates => NULL() ! dates(n) (n: recording instants) REAL, DIMENSION(:), POINTER :: X => NULL() ! X(n) REAL, DIMENSION(:), POINTER :: Y => NULL() ! Y(n) REAL, DIMENSION(:), POINTER :: Z => NULL() ! Z(n) diff --git a/src/MNH/modd_type_statprof.f90 b/src/MNH/modd_type_statprof.f90 index c456ae947a641ab239fef4d8b67ffe7e82228a30..a95c1e11cabfbf1ad402db480a0c1233c014943b 100644 --- a/src/MNH/modd_type_statprof.f90 +++ b/src/MNH/modd_type_statprof.f90 @@ -48,7 +48,7 @@ public :: TPROFILERDATA, TSTATIONDATA, TSTATPROFDATA TYPE :: TSTATPROFTIME REAL :: XTIME_CUR = XUNDEF ! current time since last storage - INTEGER :: N_CUR = 0 ! current step of storage + INTEGER :: N_CUR = 0 ! current step of storage REAL :: XTSTEP = 60. ! storage time step (default reset later by INI_STATION_n) type(date_time), dimension(:), ALLOCATABLE :: tpdates ! dates(n) (n: recording instants) END TYPE TSTATPROFTIME diff --git a/src/MNH/write_aircraft_balloon.f90 b/src/MNH/write_aircraft_balloon.f90 index f957e9f773ae4e7322f6196eda1fe6f9a66df72a..e9a4ab409552b80d6f8107c6ef5ca387282e0305 100644 --- a/src/MNH/write_aircraft_balloon.f90 +++ b/src/MNH/write_aircraft_balloon.f90 @@ -192,6 +192,7 @@ CHARACTER(LEN=:), ALLOCATABLE :: YGROUPZ ! group title CHARACTER(LEN=100), DIMENSION(:), ALLOCATABLE :: YCOMMENTZ! comment string CHARACTER(LEN=100), DIMENSION(:), ALLOCATABLE :: YTITLEZ ! title CHARACTER(LEN=100), DIMENSION(:), ALLOCATABLE :: YUNITZ ! physical unit +INTEGER :: ISTORE INTEGER :: IPROCZ ! number of variables records INTEGER :: JPROCZ ! loop counter INTEGER :: JRR ! loop counter @@ -225,12 +226,14 @@ IF (LORILAM) IPROC = IPROC + JPMODE*3 IF (LDUST) IPROC = IPROC + NMODE_DST*3 IF (SIZE(TPFLYER%TSRAD)>0) IPROC = IPROC + 1 ! -ALLOCATE (ZWORK6(1,1,1,size(tpflyer%tpdates),1,IPROC)) +ISTORE = SIZE( TPFLYER%TFLYER_TIME%TPDATES ) + +ALLOCATE (ZWORK6(1,1,1,ISTORE,1,IPROC)) ALLOCATE (YCOMMENT(IPROC)) ALLOCATE (YTITLE (IPROC)) ALLOCATE (YUNIT (IPROC)) ALLOCATE (IGRID (IPROC)) -ALLOCATE (ZWORKZ6(1,1,IKU,size(tpflyer%tpdates),1,IPROCZ)) +ALLOCATE (ZWORKZ6(1,1,IKU,ISTORE,1,IPROCZ)) ALLOCATE (YCOMMENTZ(IPROCZ)) ALLOCATE (YTITLEZ (IPROCZ)) ALLOCATE (YUNITZ (IPROCZ)) @@ -330,7 +333,7 @@ END DO ! !add cloud liquid water content in g/m3 to compare to measurements from FSSP !IF (.NOT.(ANY(TPFLYER%P(:) == 0.))) THEN -ALLOCATE (ZRHO(1,1,size(tpflyer%tpdates))) +ALLOCATE (ZRHO(1,1,ISTORE)) IF (SIZE(TPFLYER%R,2) >1) THEN !cloud water is present ZRHO(1,1,:) = 0. DO JRR=1,SIZE(TPFLYER%R,2) @@ -338,7 +341,7 @@ IF (SIZE(TPFLYER%R,2) >1) THEN !cloud water is present ENDDO ZRHO(1,1,:) = TPFLYER%TH(:) * ( 1. + XRV/XRD*TPFLYER%R(:,1) ) & / ( 1. + ZRHO(1,1,:) ) - DO JPT=1,size(tpflyer%tpdates) + DO JPT=1,ISTORE IF (TPFLYER%P(JPT) == 0.) THEN ZRHO(1,1,JPT) = 0. ELSE @@ -408,12 +411,12 @@ IF (SIZE(TPFLYER%SV,2)>=1) THEN IF ((LORILAM).AND. .NOT.(ANY(TPFLYER%P(:) == 0.))) THEN - ALLOCATE (ZSV(1,1,size(tpflyer%tpdates),NSV_AER)) - ALLOCATE (ZRHO(1,1,size(tpflyer%tpdates))) - ALLOCATE (ZN0(1,1,size(tpflyer%tpdates),JPMODE)) - ALLOCATE (ZRG(1,1,size(tpflyer%tpdates),JPMODE)) - ALLOCATE (ZSIG(1,1,size(tpflyer%tpdates),JPMODE)) - ALLOCATE (ZPTOTA(1,1,size(tpflyer%tpdates),NSP+NCARB+NSOA,JPMODE)) + ALLOCATE (ZSV(1,1,ISTORE,NSV_AER)) + ALLOCATE (ZRHO(1,1,ISTORE)) + ALLOCATE (ZN0(1,1,ISTORE,JPMODE)) + ALLOCATE (ZRG(1,1,ISTORE,JPMODE)) + ALLOCATE (ZSIG(1,1,ISTORE,JPMODE)) + ALLOCATE (ZPTOTA(1,1,ISTORE,NSP+NCARB+NSOA,JPMODE)) ZSV(1,1,:,1:NSV_AER) = TPFLYER%SV(:,NSV_AERBEG:NSV_AEREND) IF (SIZE(TPFLYER%R,2) >0) THEN ZRHO(1,1,:) = 0. @@ -431,7 +434,7 @@ IF (SIZE(TPFLYER%SV,2)>=1) THEN ZRG = 0. ZN0 = 0. ZPTOTA = 0. - DO JPT=1,size(tpflyer%tpdates) ! prevent division by zero if ZSV = 0. + DO JPT=1,ISTORE ! prevent division by zero if ZSV = 0. IF (ALL(ZSV(1,1,JPT,:)/=0.)) THEN CALL PPP2AERO(ZSV,ZRHO, PSIG3D=ZSIG, PRG3D=ZRG, PN3D=ZN0, PCTOTA=ZPTOTA) ENDIF @@ -566,11 +569,11 @@ IF (SIZE(TPFLYER%SV,2)>=1) THEN END IF IF ((LDUST).AND. .NOT.(ANY(TPFLYER%P(:) == 0.))) THEN - ALLOCATE (ZSV(1,1,size(tpflyer%tpdates),NSV_DST)) - ALLOCATE (ZRHO(1,1,size(tpflyer%tpdates))) - ALLOCATE (ZN0(1,1,size(tpflyer%tpdates),NMODE_DST)) - ALLOCATE (ZRG(1,1,size(tpflyer%tpdates),NMODE_DST)) - ALLOCATE (ZSIG(1,1,size(tpflyer%tpdates),NMODE_DST)) + ALLOCATE (ZSV(1,1,ISTORE,NSV_DST)) + ALLOCATE (ZRHO(1,1,ISTORE)) + ALLOCATE (ZN0(1,1,ISTORE,NMODE_DST)) + ALLOCATE (ZRG(1,1,ISTORE,NMODE_DST)) + ALLOCATE (ZSIG(1,1,ISTORE,NMODE_DST)) ZSV(1,1,:,1:NSV_DST) = TPFLYER%SV(:,NSV_DSTBEG:NSV_DSTEND) IF (SIZE(TPFLYER%R,2) >0) THEN ZRHO(1,1,:) = 0. @@ -723,10 +726,10 @@ DO IK=1, IKU END DO !---------------------------------------------------------------------------- ! -ALLOCATE (ZW6(1,1,1,size(tpflyer%tpdates),1,JPROC)) +ALLOCATE (ZW6(1,1,1,ISTORE,1,JPROC)) ZW6 = ZWORK6(:,:,:,:,:,:JPROC) DEALLOCATE(ZWORK6) -ALLOCATE (ZWZ6(1,1,IKU,size(tpflyer%tpdates),1,JPROCZ)) +ALLOCATE (ZWZ6(1,1,IKU,ISTORE,1,JPROCZ)) ZWZ6 = ZWORKZ6(:,:,:,:,:,:JPROCZ) DEALLOCATE(ZWORKZ6) ! @@ -792,8 +795,8 @@ tzbudiachro%lnorm = .false. ! tzbudiachro%nkl = NOT SET (default values) ! tzbudiachro%nkh = NOT SET (default values) -call Write_diachro( tpdiafile, tzbudiachro, tzfields, tpflyer%tpdates, zw6, & - tpflyer = tpflyer ) +call Write_diachro( tpdiafile, tzbudiachro, tzfields, tpflyer%tflyer_time%tpdates, zw6, & + tpflyer = tpflyer ) deallocate( tzfields ) @@ -864,8 +867,8 @@ tzbudiachro%njh = 1 tzbudiachro%nkl = 1 tzbudiachro%nkh = iku -call Write_diachro( tpdiafile, tzbudiachro, tzfields, tpflyer%tpdates, zwz6, & - tpflyer = tpflyer ) +call Write_diachro( tpdiafile, tzbudiachro, tzfields, tpflyer%tflyer_time%tpdates, zwz6, & + tpflyer = tpflyer ) deallocate( tzfields )