Ignore:
Timestamp:
Jul 28, 2025, 7:23:15 PM (6 days ago)
Author:
aborella
Message:

Merge with trunk r5789

Location:
LMDZ6/branches/contrails
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/contrails

  • LMDZ6/branches/contrails/libf/phylmd/moy_undefSTD.f90

    r5310 r5791  
    22! $Id$
    33
    4 SUBROUTINE moy_undefstd(itap, itapm1)
    5   USE clesphys_mod_h
    6   USE netcdf
    7   USE dimphy
    8   USE phys_state_var_mod
    9   use wxios_mod, ONLY: missing_val_xios => missing_val, using_xios
     4SUBROUTINE moy_undefstd(itap)
     5USE clesphys_mod_h, ONLY : freq_calnmc, freq_outnmc
     6USE netcdf
     7USE dimphy, ONLY : klon
     8USE phys_state_var_mod, ONLY : missing_val_nf90,nlevstd,nout,o3daysumstd,o3sumstd,phisumstd,phys_tstep
     9USE phys_state_var_mod, ONLY : qsumstd,rhsumstd,t2sumstd,tnondef,tsumstd,u2sumstd,usumstd,uvsumstd,v2sumstd
     10USE phys_state_var_mod, ONLY : vphisumstd,vqsumstd,vsumstd,vtsumstd,wqsumstd,wsumstd,wtsumstd
     11USE wxios_mod, ONLY: missing_val_xios => missing_val, using_xios
     12USE phys_cal_mod, ONLY: mth_len
     13USE phys_output_var_mod, ONLY : clef_files
    1014
    11   USE phys_cal_mod, ONLY: mth_len
     15
    1216  IMPLICIT NONE
    1317  REAL :: missing_val
     
    3438  ! INTEGER nlevSTD, klevSTD, itap
    3539  ! PARAMETER(klevSTD=17)
    36   INTEGER itap, itapm1
     40  INTEGER itap
    3741
    3842  ! variables locales
     
    6973
    7074    ! calcul 1 fois pas mois, 1 fois par jour ou toutes les 6h
     75 
     76!   print*,'STDSTD n,freq_outnmc(n),phys_tstep',n,freq_outnmc(n),phys_tstep
    7177
    72     IF (n==1 .AND. itap==itapm1 .OR. n>1 .AND. mod(itap,nint(freq_outnmc(n)/ &
    73         phys_tstep))==0) THEN
    74 
    75       ! print*,'moy_undefSTD n itap itapm1',n,itap,itapm1
     78    IF ( clef_files(n) .and. mod(itap,nint(freq_outnmc(n)/phys_tstep))==0) THEN
    7679
    7780      DO k = 1, nlevstd
    7881        DO i = 1, klon
    7982          IF (tnondef(i,k,n)/=(freq_moynmc(n))) THEN
    80             tsumstd(i, k, n) = tsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n &
    81               ))
    82             usumstd(i, k, n) = usumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n &
    83               ))
    84             vsumstd(i, k, n) = vsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n &
    85               ))
    86             wsumstd(i, k, n) = wsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n &
    87               ))
    88             phisumstd(i, k, n) = phisumstd(i, k, n)/ &
    89               (freq_moynmc(n)-tnondef(i,k,n))
    90             qsumstd(i, k, n) = qsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n &
    91               ))
    92             rhsumstd(i, k, n) = rhsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    93               ,n))
    94             uvsumstd(i, k, n) = uvsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    95               ,n))
    96             vqsumstd(i, k, n) = vqsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    97               ,n))
    98             vtsumstd(i, k, n) = vtsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    99               ,n))
    100             wqsumstd(i, k, n) = wqsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    101               ,n))
    102             vphisumstd(i, k, n) = vphisumstd(i, k, n)/ &
    103               (freq_moynmc(n)-tnondef(i,k,n))
    104             wtsumstd(i, k, n) = wtsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    105               ,n))
    106             u2sumstd(i, k, n) = u2sumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    107               ,n))
    108             v2sumstd(i, k, n) = v2sumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    109               ,n))
    110             t2sumstd(i, k, n) = t2sumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    111               ,n))
    112             o3sumstd(i, k, n) = o3sumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k &
    113               ,n))
    114             o3daysumstd(i, k, n) = o3daysumstd(i, k, n)/ &
    115               (freq_moynmc(n)-tnondef(i,k,n))
     83            tsumstd(i, k, n) = tsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     84            usumstd(i, k, n) = usumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     85            vsumstd(i, k, n) = vsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     86            wsumstd(i, k, n) = wsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     87            phisumstd(i, k, n) = phisumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     88            qsumstd(i, k, n) = qsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     89            rhsumstd(i, k, n) = rhsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     90            uvsumstd(i, k, n) = uvsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     91            vqsumstd(i, k, n) = vqsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     92            vtsumstd(i, k, n) = vtsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     93            wqsumstd(i, k, n) = wqsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     94            vphisumstd(i, k, n) = vphisumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     95            wtsumstd(i, k, n) = wtsumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     96            u2sumstd(i, k, n) = u2sumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     97            v2sumstd(i, k, n) = v2sumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     98            t2sumstd(i, k, n) = t2sumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     99            o3sumstd(i, k, n) = o3sumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
     100            o3daysumstd(i, k, n) = o3daysumstd(i, k, n)/(freq_moynmc(n)-tnondef(i,k,n))
    116101          ELSE
    117102            tsumstd(i, k, n) = missing_val
Note: See TracChangeset for help on using the changeset viewer.