Skip to content
Snippets Groups Projects
write_lesn.f90 58.2 KiB
Newer Older
  IF (LUSERG) &
  CALL LES_DIACHRO(TPDIAFILE,"UP_RG   ",  &
       "Updraft graupel mean value","kg kg-1",XLES_UPDRAFT_Rg,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"UP_RH   ",  &
       "Updraft hail mean value","kg kg-1",XLES_UPDRAFT_Rh,HLES_AVG)
  CALL LES_DIACHRO_SV(TPDIAFILE,"UP_SV   ",  &
       "Updraft scalar variables mean values","kg kg-1",XLES_UPDRAFT_Sv,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"UP_TH2 ",  &
       "Updraft resolved Theta variance ","K2",XLES_UPDRAFT_Th2,HLES_AVG)

  IF (LUSERC) &
  CALL LES_DIACHRO(TPDIAFILE,"UP_THL2",  &
       "Updraft resolved Theta_l variance ","K2",XLES_UPDRAFT_Thl2,HLES_AVG)

  IF (LUSERV) &
  CALL LES_DIACHRO(TPDIAFILE,"UP_THTV",  &
       "Updraft resolved Theta Theta_v covariance ","K2",XLES_UPDRAFT_ThThv,HLES_AVG)

  IF (LUSERC) &
  CALL LES_DIACHRO(TPDIAFILE,"UP_TLTV",  &
       "Updraft resolved Theta_l Theta_v covariance ","K2",XLES_UPDRAFT_ThlThv,HLES_AVG)

  CALL LES_DIACHRO(TPDIAFILE,"UP_WTH  ",  &
       "Updraft resolved WTh flux","m K s-1",XLES_UPDRAFT_WTh,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"UP_WTHL ",  &
       "Updraft resolved WThl flux","m K s-1",XLES_UPDRAFT_WThl,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"UP_WTHV ",  &
       "Updraft resolved WThv flux","m K s-1",XLES_UPDRAFT_WThv,HLES_AVG)
  !
  IF (LUSERV) THEN
    CALL LES_DIACHRO(TPDIAFILE,"UP_RV2  ",  &
       "Updraft resolved water vapor variance","kg2 kg-2",XLES_UPDRAFT_Rv2,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THRV ",  &
       "Updraft resolved <thrv> covariance","K kg kg-1",XLES_UPDRAFT_ThRv,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THLRV",  &
     "Updraft resolved <thlrv> covariance","K kg kg-1",XLES_UPDRAFT_ThlRv,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THVRV",  &
       "Updraft resolved <thvrv> covariance","K kg kg-1",XLES_UPDRAFT_ThvRv,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_WRV  ",  &
       "Updraft resolved <wrv> vertical flux","m kg kg-1 s-1",XLES_UPDRAFT_WRv,HLES_AVG)
  END IF

  IF (LUSERC) THEN
    CALL LES_DIACHRO(TPDIAFILE,"UP_RC2  ",  &
       "Updraft resolved cloud water variance","kg2 kg-2",XLES_UPDRAFT_Rc2,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THRC ",  &
       "Updraft resolved <thrc> covariance","K kg kg-1",XLES_UPDRAFT_ThRc,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THLRC", &
       "Updraft resolved <thlrc> covariance","K kg kg-1",XLES_UPDRAFT_ThlRc,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THVRC", &
       "Updraft resolved <thvrc> covariance","K kg kg-1",XLES_UPDRAFT_ThvRc,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_WRC  ",  &
       "Updraft resolved <wrc> vertical flux","m kg kg-1 s-1",XLES_UPDRAFT_WRc,HLES_AVG)
  END IF

  IF (LUSERI) THEN
    CALL LES_DIACHRO(TPDIAFILE,"UP_RI2  ", &
       "Updraft resolved cloud ice variance","kg2 kg-2",XLES_UPDRAFT_Ri2,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THRI ",  &
       "Updraft resolved <thri> covariance","K kg kg-1",XLES_UPDRAFT_ThRi,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THLRI",  &
       "Updraft resolved <thlri> covariance","K kg kg-1",XLES_UPDRAFT_ThlRi,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_THVRI",  &
       "Updraft resolved <thvri> covariance","K kg kg-1",XLES_UPDRAFT_ThvRi,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"UP_WRI  ",  &
       "Updraft resolved <wri> vertical flux","m kg kg-1 s-1",XLES_UPDRAFT_WRi,HLES_AVG)
  END IF

  IF (NSV>0) THEN
    CALL LES_DIACHRO_SV(TPDIAFILE,"UP_SV2  ",  &
       "Updraft resolved scalar variables variances","kg2 kg-2",XLES_UPDRAFT_Sv2,HLES_AVG)
    CALL LES_DIACHRO_SV(TPDIAFILE,"UP_THSV ", &
       "Updraft resolved <ThSv> variance","K kg kg-1",XLES_UPDRAFT_ThSv,HLES_AVG)
    CALL LES_DIACHRO_SV(TPDIAFILE,"UP_THLSV",  &
       "Updraft resolved <ThlSv> variance","K kg kg-1",XLES_UPDRAFT_ThlSv,HLES_AVG)
    CALL LES_DIACHRO_SV(TPDIAFILE,"UP_THVSV",  &
       "Updraft resolved <ThvSv> variance","K kg kg-1",XLES_UPDRAFT_ThvSv,HLES_AVG)
    CALL LES_DIACHRO_SV(TPDIAFILE,"UP_WSV  ",  &
       "Updraft resolved <wSv> vertical flux","m kg kg-1 s-1",XLES_UPDRAFT_WSv,HLES_AVG)
  END IF
END IF
!                
!
!*      2.5  Downdraft quantities
!            --------------------
!
IF (LLES_DOWNDRAFT) THEN
   CALL LES_DIACHRO(TPDIAFILE,"DW_FRAC ",  &
  CALL LES_DIACHRO(TPDIAFILE,"DW_W    ", &
       "Downdraft W mean value","m s-1",XLES_DOWNDRAFT_W,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_TH   ",  &
       "Downdraft potential temperature mean value","K",XLES_DOWNDRAFT_Th,HLES_AVG)

  IF (LUSERC) &
  CALL LES_DIACHRO(TPDIAFILE,"DW_THL  ", &
       "Downdraft liquid potential temperature mean value","K",XLES_DOWNDRAFT_Thl,HLES_AVG)

  IF (LUSERV) &
  CALL LES_DIACHRO(TPDIAFILE,"DW_THV  ",  &
       "Downdraft virtual potential temperature mean value","K",XLES_DOWNDRAFT_Thv,HLES_AVG)


  CALL LES_DIACHRO(TPDIAFILE,"DW_KE   ", &
       "Downdraft resolved TKE mean value","m2 s-2",XLES_DOWNDRAFT_Ke,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_TKE  ",  &
       "Downdraft subgrid TKE mean value","m2 s-2",XLES_DOWNDRAFT_Tke,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_RV   ",  &
       "Downdraft water vapor mean value","kg kg-1",XLES_DOWNDRAFT_Rv,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_RC   ",  &
       "Downdraft cloud water mean value","kg kg-1",XLES_DOWNDRAFT_Rc,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_RR   ",  &
       "Downdraft rain mean value","kg kg-1",XLES_DOWNDRAFT_Rr,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_RI   ",  &
       "Downdraft ice mean value","kg kg-1",XLES_DOWNDRAFT_Ri,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_RS   ",  &
       "Downdraft snow mean value","kg kg-1",XLES_DOWNDRAFT_Rs,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_RG   ",  &
       "Downdraft graupel mean value","kg kg-1",XLES_DOWNDRAFT_Rg,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_RH   ",  &
       "Downdraft hail mean value","kg kg-1",XLES_DOWNDRAFT_Rh,HLES_AVG)
  CALL LES_DIACHRO_SV(TPDIAFILE,"DW_SV   ", &
       "Downdraft scalar variables mean values","kg kg-1",XLES_DOWNDRAFT_Sv,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_TH2 ",  &
       "Downdraft resolved Theta variance ","K2",XLES_DOWNDRAFT_Th2,HLES_AVG)

  IF (LUSERC) &
  CALL LES_DIACHRO(TPDIAFILE,"DW_THL2",  &
       "Downdraft resolved Theta_l variance ","K2",XLES_DOWNDRAFT_Thl2,HLES_AVG)

  IF (LUSERV) &
  CALL LES_DIACHRO(TPDIAFILE,"DW_THTV ",  &
       "Downdraft resolved Theta Theta_v covariance ","K2",XLES_DOWNDRAFT_ThThv,HLES_AVG)

  IF (LUSERC) &
  CALL LES_DIACHRO(TPDIAFILE,"DW_TLTV ",  &
       "Downdraft resolved Theta_l Theta_v covariance ","K2",XLES_DOWNDRAFT_ThlThv,HLES_AVG)

  CALL LES_DIACHRO(TPDIAFILE,"DW_WTH  ",  &
       "Downdraft resolved WTh flux","m K s-1",XLES_DOWNDRAFT_WTh,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_WTHL ",  &
       "Downdraft resolved WThl flux","m K s-1",XLES_DOWNDRAFT_WThl,HLES_AVG)
  CALL LES_DIACHRO(TPDIAFILE,"DW_WTHV ",  &
       "Downdraft resolved WThv flux","m K s-1",XLES_DOWNDRAFT_WThv,HLES_AVG)
  !
  IF (LUSERV) THEN
    CALL LES_DIACHRO(TPDIAFILE,"DW_RV2  ",  &
       "Downdraft resolved water vapor variance","kg2 kg-2",XLES_DOWNDRAFT_Rv2,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THRV ",  &
       "Downdraft resolved <thrv> covariance","K kg kg-1",XLES_DOWNDRAFT_ThRv,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THLRV",  &
       "Downdraft resolved <thlrv> covariance","K kg kg-1",XLES_DOWNDRAFT_ThlRv,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THVRV",  &
       "Downdraft resolved <thvrv> covariance","K kg kg-1",XLES_DOWNDRAFT_ThvRv,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_WRV  ",  &
       "Downdraft resolved <wrv> vertical flux","m kg kg-1 s-1",XLES_DOWNDRAFT_WRv,HLES_AVG)
  END IF

  IF (LUSERC) THEN
    CALL LES_DIACHRO(TPDIAFILE,"DW_RC2  ",  &
       "Downdraft resolved cloud water variance","kg2 kg-2",XLES_DOWNDRAFT_Rc2,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THRC ",  &
       "Downdraft resolved <thrc> covariance","K kg kg-1",XLES_DOWNDRAFT_ThRc,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THLRC",  &
       "Downdraft resolved <thlrc> covariance","K kg kg-1",XLES_DOWNDRAFT_ThlRc,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THVRC",  &
       "Downdraft resolved <thvrc> covariance","K kg kg-1",XLES_DOWNDRAFT_ThvRc,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_WRC  ",  &
       "Downdraft resolved <wrc> vertical flux","m kg kg-1 s-1",XLES_DOWNDRAFT_WRc,HLES_AVG)
  END IF

  IF (LUSERI) THEN
    CALL LES_DIACHRO(TPDIAFILE,"DW_RI2  ",  &
       "Downdraft resolved cloud ice variance","kg2 kg-2",XLES_DOWNDRAFT_Ri2,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THRI ",  &
       "Downdraft resolved <thri> covariance","K kg kg-1",XLES_DOWNDRAFT_ThRi,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THLRI", &
       "Downdraft resolved <thlri> covariance","K kg kg-1",XLES_DOWNDRAFT_ThlRi,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_THVRI",  &
       "Downdraft resolved <thvri> covariance","K kg kg-1",XLES_DOWNDRAFT_ThvRi,HLES_AVG)
    CALL LES_DIACHRO(TPDIAFILE,"DW_WRI  ", &
       "Downdraft resolved <wri> vertical flux","m kg kg-1 s-1",XLES_DOWNDRAFT_WRi,HLES_AVG)
  END IF

  IF (NSV>0) THEN
    CALL LES_DIACHRO_SV(TPDIAFILE,"DW_SV2  ", &
       "Downdraft resolved scalar variables variances","kg2 kg-2",XLES_DOWNDRAFT_Sv2,HLES_AVG)
   CALL LES_DIACHRO_SV(TPDIAFILE,"DW_THSV ",  &
       "Downdraft resolved <ThSv> variance","K kg kg-1",XLES_DOWNDRAFT_ThSv,HLES_AVG)
    CALL LES_DIACHRO_SV(TPDIAFILE,"DW_THLSV",  &
       "Downdraft resolved <ThlSv> variance","K kg kg-1",XLES_DOWNDRAFT_ThlSv,HLES_AVG)
    CALL LES_DIACHRO_SV(TPDIAFILE,"DW_THVSV",  &
       "Downdraft resolved <ThvSv> variance","K kg kg-1",XLES_DOWNDRAFT_ThvSv,HLES_AVG)
    CALL LES_DIACHRO_SV(TPDIAFILE,"DW_WSV  ", &
       "Downdraft resolved <wSv> vertical flux","m kg kg-1 s-1",XLES_DOWNDRAFT_WSv,HLES_AVG)
  END IF
END IF
!
!-------------------------------------------------------------------------------
!
!*      3.   surface normalization parameters
!            --------------------------------
!
IF (HLES_AVG==' ' .OR. HLES_AVG=='A') THEN

  CALL LES_DIACHRO_SURF(TPDIAFILE,"Q0      ",  &
     "Sensible heat flux at the surface","m K s-1",XLES_Q0,HLES_AVG)
  CALL LES_DIACHRO_SURF(TPDIAFILE,"E0      ",  &
     "Latent heat flux at the surface","kg kg-1 m s-1",XLES_E0,HLES_AVG)
     !writes  sw and lw flux and dthrad at all levels
  CALL LES_DIACHRO(TPDIAFILE,"DTHRADSW      ",  &
  CALL LES_DIACHRO(TPDIAFILE,"DTHRADLW      ",  &
!writes mean_effective radius at all levels
  CALL LES_DIACHRO(TPDIAFILE,"RADEFF      ",  &
     "mean effective radius ","microm ",XLES_RADEFF,HLES_AVG)

  IF (NSV>0) &
  CALL LES_DIACHRO_SURF_SV(TPDIAFILE,"SV0     ",  &
     "Scalar variable fluxes at the surface","kg kg-1 m s-1",XLES_SV0,HLES_AVG)
  CALL LES_DIACHRO_SURF(TPDIAFILE,"U*      ",  &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"W*      ",  &
     "Convective velocity","m s-1",XLES_WSTAR,HLES_AVG)
  CALL LES_DIACHRO_SURF(TPDIAFILE,"BL_H    ",  &
     "Boundary Layer Height","m",XLES_BL_HEIGHT,HLES_AVG)

  CALL LES_DIACHRO_SURF(TPDIAFILE,"L_MO    ",  &
     "Monin-Obukhov length","m",XLES_MO_LENGTH,HLES_AVG)

  CALL LES_DIACHRO_SURF(TPDIAFILE,"INT_TKE    ",  &
     "Vertical integrated tke","m2.s-2",XLES_INT_TKE,HLES_AVG)

  IF (LUSERC) &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"ZCB    ",  &
     "Cloud base Height","m",XLES_ZCB,HLES_AVG)   

  IF (LUSERC) &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"ZCFTOT    ",  &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"ZCF2TOT    ",  &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"LWP    ",  &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"LWPVAR ",  &
     "Liquid Water path variance","kg m-4",XLES_LWPVAR,HLES_AVG)
  CALL LES_DIACHRO_SURF(TPDIAFILE,"RWP    ",  &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"IWP    ",  &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"SWP    ",  &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"GWP    ",  &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"HWP    ",  &
  IF (LUSERR) &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"PREC_FRAC    ",  &
  "Fract of col where rain at surface","",XLES_PRECFR,HLES_AVG)

  IF (LUSERR) &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"INST_PREC    ",  &
     "Inst precip rate","mm day-1",XLES_INPRR,HLES_AVG)
  CALL LES_DIACHRO_SURF(TPDIAFILE,"INST_SEDIM   ",  &
     "Inst cloud precip rate","mm day-1",XLES_INPRC,HLES_AVG)

  IF (LUSERC .AND. (LDEPOSC .OR. LDEPOC)) &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"INST_DEPOS   ",  &
     "Inst cloud deposi rate","mm day-1",XLES_INDEP,HLES_AVG)
  IF (LUSERR) &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"RAIN_PREC    ",  &
     "inst pr. rate over rainy grid cells","mm day-1",XLES_RAIN_INPRR,HLES_AVG)
  CALL LES_DIACHRO_SURF(TPDIAFILE,"ACCU_PREC    ",  &
     "Accu precip rate","mm",XLES_ACPRR,HLES_AVG)   
  CALL LES_DIACHRO_SURF(TPDIAFILE,"ZMAXCF    ",  &
     "Height of Cloud fraction max","m",XLES_ZMAXCF,HLES_AVG)

  IF (LUSERC) &
  CALL LES_DIACHRO_SURF(TPDIAFILE,"ZMAXCF2   ",  &
     "Height of Cloud fraction2max","m",XLES_ZMAXCF2,HLES_AVG)

END IF
!
!-------------------------------------------------------------------------------
!
!*      4.   LES budgets
!            -----------
!
CALL WRITE_LES_BUDGET_n(TPDIAFILE,HLES_AVG)
IF (LUSERV) CALL WRITE_LES_RT_BUDGET_n(TPDIAFILE,HLES_AVG)
IF (NSV>0)  CALL WRITE_LES_SV_BUDGET_n(TPDIAFILE,HLES_AVG)
!
!-------------------------------------------------------------------------------
!
!*      5.   (ni,z,t) and (nj,z,t) 2points correlations
!            ------------------------------------------
!
IF (HLES_AVG==' ' .OR. HLES_AVG=='A') THEN
  IF (NSPECTRA_K>0) THEN
    CALL LES_DIACHRO_2PT(TPDIAFILE,"UU   ","U*U     2 points correlations", &
    CALL LES_DIACHRO_2PT(TPDIAFILE,"VV   ","V*V     2 points correlations", &
    CALL LES_DIACHRO_2PT(TPDIAFILE,"WW   ","W*W     2 points correlations", &
    CALL LES_DIACHRO_2PT(TPDIAFILE,"UV   ","U*V     2 points correlations", &
    CALL LES_DIACHRO_2PT(TPDIAFILE,"WU   ","W*U     2 points correlations", &
    CALL LES_DIACHRO_2PT(TPDIAFILE,"WV   ","W*V     2 points correlations", &
    CALL LES_DIACHRO_2PT(TPDIAFILE,"THTH ","Th*Th   2 points correlations", &
  "K2   ",XCORRi_ThTh,  XCORRj_ThTh,HLES_AVG)
    IF (LUSERC) &
    CALL LES_DIACHRO_2PT(TPDIAFILE,"TLTL ","Thl*Thl 2 points correlations", &
  "K2   ",XCORRi_ThlThl,XCORRj_ThlThl,HLES_AVG)
    CALL LES_DIACHRO_2PT(TPDIAFILE,"WTH  ","W*Th    2 points correlations", &
    IF (LUSERC) &
    CALL LES_DIACHRO_2PT(TPDIAFILE,"WTHL ","W*Thl   2 points correlations", &
    !
    IF (LUSERV) THEN
      CALL LES_DIACHRO_2PT(TPDIAFILE,"RVRV ","rv*rv   2 points correlations", &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"THRV ","th*rv   2 points correlations", &
      IF (LUSERC) &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"TLRV ","thl*rv  2 points correlations", &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"WRV  ","W*rv    2 points correlations", &
    END IF
    IF (LUSERC) THEN
      CALL LES_DIACHRO_2PT(TPDIAFILE,"RCRC ","rc*rc   2 points correlations", &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"THRC ","th*rc   2 points correlations", &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"TLRC ","thl*rc  2 points correlations", &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"WRC  ","W*rc    2 points correlations", &
    END IF
    IF (LUSERI) THEN
      CALL LES_DIACHRO_2PT(TPDIAFILE,"RIRI ","ri*ri   2 points correlations", &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"THRI ","th*ri   2 points correlations", &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"TLRI ","thl*ri  2 points correlations", &
      CALL LES_DIACHRO_2PT(TPDIAFILE,"WRI  ","W*ri    2 points correlations", &
    END IF
    DO JSV=1,NSV
      WRITE (YGROUP,FMT="(A2,I3.3)") "SS",JSV
      CALL LES_DIACHRO_2PT(TPDIAFILE,YGROUP,"Sv*Sv   2 points correlations", &
  "kg2 kg-2 ",XCORRi_SvSv(:,:,:,JSV),  XCORRj_SvSv(:,:,:,JSV),HLES_AVG)
    END DO
    DO JSV=1,NSV
      WRITE (YGROUP,FMT="(A2,I3.3)") "WS",JSV
      CALL LES_DIACHRO_2PT(TPDIAFILE,YGROUP,"W*Sv    2 points correlations", &
 "m kg s-1 kg-1",XCORRi_WSv(:,:,:,JSV),   XCORRj_WSv(:,:,:,JSV),HLES_AVG)
    END DO
  END IF
END IF
!
!-------------------------------------------------------------------------------
!
!*      6.   spectra and time-averaged profiles (if first call to WRITE_LES_n)
!            ----------------------------------
!
IF (HLES_AVG==' ') CALL LES_SPEC_n(TPDIAFILE)
!
!-------------------------------------------------------------------------------
!
!*      7.   deallocations
!            -------------
!
DEALLOCATE(XLES_CURRENT_TRAJT )
DEALLOCATE(XLES_CURRENT_Z     )
DEALLOCATE(XLES_CURRENT_DATIME)

IF (CLES_NORM_TYPE/='NONE' ) THEN
  DEALLOCATE(XLES_NORM_M  )
  DEALLOCATE(XLES_NORM_S  )
  DEALLOCATE(XLES_NORM_K  )
  DEALLOCATE(XLES_NORM_RHO)
  DEALLOCATE(XLES_NORM_RV )
  DEALLOCATE(XLES_NORM_SV )
  DEALLOCATE(XLES_NORM_P  )
END IF
!
END SUBROUTINE WRITE_LES_n