Ignore:
Timestamp:
Jul 24, 2024, 2:54:37 PM (6 months ago)
Author:
abarral
Message:

rename modules properly lmdz_*
move ismin, ismax, minmax into new lmdz_libmath.f90
(lint) uppercase fortran keywords

Location:
LMDZ6/branches/Amaury_dev/libf/phylmd/Dust
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/coarsemission.f90

    r5104 r5116  
    9494  REAL :: dust_ec(klon)
    9595
    96   real :: tmp_var2(klon, nbtr) ! auxiliary variable to replace source
     96  REAL :: tmp_var2(klon, nbtr) ! auxiliary variable to replace source
    9797  REAL :: qmin, qmax
    9898  !----------------------DUST Sahara ---------------
     
    195195
    196196    DO i = 1, klon
    197       if (maskd(i)>0) then
     197      if (maskd(i)>0) THEN
    198198        IF(id_fine>0)    source_tr(i, id_fine) = &
    199199                scale_param_dustacc(iregion_dust(i)) * &
     
    266266  ENDDO
    267267  CALL minmaxsource(tmp_var2, qmin, qmax, 'src: before SS emiss')
    268   IF(id_coss>0) then
     268  IF(id_coss>0) THEN
    269269    print *, 'Source = ', SUM(source_tr(:, id_coss)), &
    270270            MINVAL(source_tr(:, id_coss)), MAXVAL(source_tr(:, id_coss))
     
    299299  ENDDO
    300300  CALL minmaxsource(tmp_var2, qmin, qmax, 'src: after SS emiss')
    301   IF(id_coss>0) then
     301  IF(id_coss>0) THEN
    302302    print *, 'Source = ', SUM(source_tr(:, id_coss)), &
    303303            MINVAL(source_tr(:, id_coss)), MAXVAL(source_tr(:, id_coss))
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/condsurfc.f90

    r5105 r5116  
    3535
    3636  ierr = nf90_open ("limitcarbon.nc", nf90_nowrite, nid1)
    37   if (ierr/=nf90_noerr) then
    38     write(6, *)' Pb d''ouverture du fichier limitbc.nc'
    39     write(6, *)' ierr = ', ierr
     37  if (ierr/=nf90_noerr) THEN
     38    WRITE(6, *)' Pb d''ouverture du fichier limitbc.nc'
     39    WRITE(6, *)' ierr = ', ierr
    4040    CALL exit(1)
    4141  endif
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/condsurfc_new.f90

    r5113 r5116  
    5858
    5959    ierr = nf90_open ("carbon_emissions.nc", nf90_nowrite, nid1)
    60     if (ierr/=nf90_noerr) then
    61       write(6, *)' Pb d''ouverture du fichier limitbc.nc'
    62       write(6, *)' ierr = ', ierr
     60    if (ierr/=nf90_noerr) THEN
     61      WRITE(6, *)' Pb d''ouverture du fichier limitbc.nc'
     62      WRITE(6, *)' ierr = ', ierr
    6363      CALL exit(1)
    6464    endif
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/condsurfs.f90

    r5105 r5116  
    3636
    3737  ierr = nf90_open ("limitsoufre.nc", nf90_nowrite, nid)
    38   if (ierr/=nf90_noerr) then
    39     write(6, *)' Pb d''ouverture du fichier limitsoufre.nc'
    40     write(6, *)' ierr = ', ierr
     38  if (ierr/=nf90_noerr) THEN
     39    WRITE(6, *)' Pb d''ouverture du fichier limitsoufre.nc'
     40    WRITE(6, *)' ierr = ', ierr
    4141    CALL exit(1)
    4242  endif
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/condsurfs_new.f90

    r5110 r5116  
    6161
    6262    ierr = nf90_open ("sulphur_emissions_antro.nc", nf90_nowrite, nid)
    63     if (ierr/=nf90_noerr) then
    64       write(6, *)' Pb d''ouverture du fichier sulphur_emissions_antro'
    65       write(6, *)' ierr = ', ierr
     63    if (ierr/=nf90_noerr) THEN
     64      WRITE(6, *)' Pb d''ouverture du fichier sulphur_emissions_antro'
     65      WRITE(6, *)' ierr = ', ierr
    6666      CALL exit(1)
    6767    endif
     
    130130    !=======================================================================
    131131    ierr = nf90_open ("sulphur_emissions_nat.nc", nf90_nowrite, nid)
    132     if (ierr/=nf90_noerr) then
    133       write(6, *)' Pb d''ouverture du fichier sulphur_emissions_nat'
    134       write(6, *)' ierr = ', ierr
     132    if (ierr/=nf90_noerr) THEN
     133      WRITE(6, *)' Pb d''ouverture du fichier sulphur_emissions_nat'
     134      WRITE(6, *)' ierr = ', ierr
    135135      CALL exit(1)
    136136    endif
     
    185185    print *, ' Jour = ', jour
    186186    ierr = nf90_open ("sulphur_emissions_volc.nc", nf90_nowrite, nid)
    187     if (ierr/=nf90_noerr) then
    188       write(6, *)' Pb d''ouverture du fichier sulphur_emissions_volc'
    189       write(6, *)' ierr = ', ierr
     187    if (ierr/=nf90_noerr) THEN
     188      WRITE(6, *)' Pb d''ouverture du fichier sulphur_emissions_volc'
     189      WRITE(6, *)' ierr = ', ierr
    190190      CALL exit(1)
    191191    endif
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/dustemission_mod.F90

    r5113 r5116  
    253253  INTEGER,DIMENSION(klon) :: maskdustloc
    254254  INTEGER :: i,j,k
    255   integer :: iaux
     255  INTEGER :: iaux
    256256 
    257257
     
    259259      maskdustloc(k)=0
    260260      do i=1,ntyp
    261          if (masklisa(k,i)>0) then
     261         if (masklisa(k,i)>0) THEN
    262262             maskdustloc(k)=1
    263263         endif
     
    332332
    333333  logical ::  debutphy
    334   real :: diff, auxr1,auxr2,auxr3,auxr4
     334  REAL :: diff, auxr1,auxr2,auxr3,auxr4
    335335  real,dimension(klon,nbins) :: itvmean
    336336  real,dimension(klon,nbins+1) :: itv2
     
    346346
    347347writeaerosoldistrib=.FALSE.
    348 IF (debutphy) then
    349 
    350   if (sizedustmin>sizeacclow .or. sizedustmax<sizescohigh) then
     348IF (debutphy) THEN
     349  if (sizedustmin>sizeacclow .or. sizedustmax<sizescohigh) THEN
    351350   CALL abort_gcm('adaptdustemission', 'Dust range problem',1)
    352351  endif
     
    360359  auxr4=9999.
    361360  do i=1,nbins+1
    362    if (abs(sizeacclow-itv(i))<auxr1) then
     361   if (abs(sizeacclow-itv(i))<auxr1) THEN
    363362          auxr1=abs( sizeacclow-itv(i))
    364363          iminacclow=i
    365364   endif
    366    if (abs(sizeacchigh-itv(i))<auxr2) then
     365   if (abs(sizeacchigh-itv(i))<auxr2) THEN
    367366          auxr2=abs( sizeacchigh-itv(i))
    368367          iminacchigh=i
    369368          imincoalow=i
    370369   endif
    371    if (abs(sizecoahigh-itv(i))<auxr3) then
     370   if (abs(sizecoahigh-itv(i))<auxr3) THEN
    372371          auxr3=abs( sizecoahigh-itv(i))
    373372          imincoahigh=i
    374373          iminscolow=i
    375374   endif
    376    if (abs(sizescohigh-itv(i))<auxr4) then
     375   if (abs(sizescohigh-itv(i))<auxr4) THEN
    377376          auxr4=abs( sizescohigh-itv(i))
    378377          iminscohigh=i
    379378   endif
    380379  enddo
    381 IF (writeaerosoldistrib) then
     380IF (writeaerosoldistrib) THEN
    382381!JEdbg<<
    383382  do j=1,klon
     
    468467
    469468!JEdbg<<
    470 IF (writeaerosoldistrib) then
     469IF (writeaerosoldistrib) THEN
    471470  do i=1,nbins
    472471    do j=1,klon
     
    700699
    701700! print *,'JEOK2',mpi_rank,omp_rank
    702 IF ( 1==1 ) then
    703 
     701IF ( 1==1 ) THEN
    704702! print *,'JEOK4',mpi_rank,omp_rank
    705703   CALL writefield_phy("SOL",sol,5)
     
    756754         dp=dp*exp(dstep)
    757755         sizeclass(i)=dp
    758          if(dp>=dmax+eps)goto 30
     756         IF(dp>=dmax+eps)goto 30
    759757         newstep(i)=dstep
    760758        ! WRITE(18,*)i,sizeclass(i)
     
    765763      PRINT*,'   soil size classes used   ',ncl,' / ',nclass
    766764      PRINT*,'   soil size min: ',sizeclass(1),' soil size max: ',sizeclass(ncl)
    767       if(ncl>nclass)stop
     765      IF(ncl>nclass)stop
    768766
    769767! Threshold velocity:
    770 IF (.FALSE.) then
    771 !if (.TRUE.) then
     768IF (.FALSE.) THEN
     769!if (.TRUE.) THEN
    772770!c 0: Iversen and White 1982
    773771       print *,'Using  Iversen and White 1982 Uth'
     
    776774            cc=sqrt(1+ddust*(sizeclass(i)**(-2.5)))
    777775            xk=sqrt(abs(rop*gravity*sizeclass(i)/roa))
    778             if (bb<10.) then
     776            if (bb<10.) THEN
    779777               dd=sqrt(1.928*(bb**0.092)-1.)
    780778               uth(i)=0.129*xk*cc/dd
     
    786784         enddo
    787785END IF
    788 IF(.TRUE.) then
     786IF(.TRUE.) THEN
    789787! 1: Shao and Lu 2000
    790788       print *,'Using  Shao and Lu 2000 Uth'
     
    850848          do k=1,ntyp
    851849     !     PRINT*,'IKKK ',i,klon,k,ntyp
    852              if (zos(i,k)==0..or.z01(i,k)==0.) then
    853      !       if (zos(i,k)<=0..or.z01(i,k)<=0.) then
    854 !              if (zos(i,k)<0..or.z01(i,k)<0.) then
     850             if (zos(i,k)==0..or.z01(i,k)==0.) THEN
     851     !       if (zos(i,k)<=0..or.z01(i,k)<=0.) THEN
     852!              if (zos(i,k)<0..or.z01(i,k)<0.) THEN
    855853     !            PRINT*,'INI DUST WARNING zos ou z01<0',zos(i,k),z01(i,k)
    856854!              endif
     
    869867! drag partition between zo1 and zo2
    870868! feff: total efficient fraction
    871               if(D(i,k)==0.)then
     869              IF(D(i,k)==0.)THEN
    872870                 feff(i,k)=cc
    873871   !       PRINT*,'IKKK C ',i,klon,k,ntyp
     
    887885        enddo
    888886! JE20150120<<
    889   if (flag_feff == 0) then
     887  if (flag_feff == 0) THEN
    890888    print *,'JE_dbg FORCED deactivated feff'
    891889    do i=1,klon
     
    898896
    899897
    900 IF (1==1) then
     898IF (1==1) THEN
    901899!  !  CALL writefield_phy("AA",tmp1(1:klon,1:5),5)
    902900
     
    919917
    920918
    921 !  if (.FALSE.) then
     919!  if (.FALSE.) THEN
    922920!!**************L718
    923921
     
    10831081      DO k=1,ndistb
    10841082        DO nb=1,nbins
    1085             write(15001,*) k,nb,massfrac(k,nb)
     1083            WRITE(15001,*) k,nb,massfrac(k,nb)
    10861084        ENDDO
    10871085      ENDDO
     
    12421240
    12431241                 !IF(n.eq.1.and.nat.eq.99)GOTO 80
    1244              !      if(n.eq.1) PRINT*,'nat1=',nat,'sol1=',sol(i,n)
     1242             !      IF(n.eq.1) PRINT*,'nat1=',nat,'sol1=',sol(i,n)
    12451243                   IF(n==1.and.nat==99)GOTO 80
    12461244
     
    12481246             IF(.TRUE.) THEN
    12491247                nat=int(sol(i,n))
    1250                 if(n == 1 .and. nat >= 14 .or. nat < 1 .or. nat > 19) GOTO 80
     1248                IF(n == 1 .and. nat >= 14 .or. nat < 1 .or. nat > 19) GOTO 80
    12511249             ENDIF
    12521250!JE20150129>>>>
     
    12771275      do ni=1,kfin
    12781276         fdp1=1.-(uth2(ni)/(ceff*ustarsalt))
    1279          if (fdp1<=0..or.srel2(nat,ni)==0.) then
     1277         if (fdp1<=0..or.srel2(nat,ni)==0.) THEN
    12801278            ad1=0.
    12811279            ad2=0.
     
    12931291            t2=0.
    12941292            t3=0.
    1295             if(ec>=e1)t1=1.
    1296             if(ec>=e2)t2=1.
    1297             if(ec>=e3)t3=1.
    1298             if(dfec3/=0.)then
     1293            IF(ec>=e1)t1=1.
     1294            IF(ec>=e2)t2=1.
     1295            IF(ec>=e3)t3=1.
     1296            IF(dfec3/=0.)THEN
    12991297               p1=t1*dfec1/dfec3
    13001298               p2=t2*(1.-p1)*dfec2/dfec3
     
    14051403            srel2(nat,kfin)=srel(nat,i)*istep
    14061404         enddo
    1407          if(kfin>=nclass)then
     1405         IF(kfin>=nclass)THEN
    14081406            PRINT*,'$$$$ Tables dimension problem:',kfin,'>',nclass
    14091407         endif
     
    14361434      ihalf=int((ismax+ismin)/2.)
    14371435      do k2=1,1000000
    1438           if(ds>siz(ihalf))then
     1436          IF(ds>siz(ihalf))THEN
    14391437             ismin=ihalf
    14401438          else
     
    14431441          ihalf=int((ismax+ismin)/2.)
    14441442          idiff=ismax-ismin
    1445           if(idiff<=1)then
     1443          IF(idiff<=1)THEN
    14461444             iout=ismin
    14471445             goto 52
     
    14491447      enddo
    14501448 52   continue
    1451       if(iout==0)then
     1449      IF(iout==0)THEN
    14521450        PRINT*,'$$$$ Tables dimension problem: ',iout
    14531451      endif
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/lsc_scav_orig.F90

    r5110 r5116  
    8787!$OMP THREADPRIVATE(alpha_r, alpha_s, R_r, R_s)
    8888  REAL           :: pr, ps, ice, water
    89   real :: conserv
     89  REAL :: conserv
    9090
    9191!!!!!!!!!!!!!!!!!!!! choix lessivage !!!!!!!!!!!!!!!!!!!!!!!!
     
    9898!  inscav_fisrt=.TRUE.
    9999!  CALL getin('inscav_fisrt',inscav_fisrt)
    100 if(inscav_fisrt) then
     100IF(inscav_fisrt) THEN
    101101!   PRINT*,'beta from fisrtilp.F90, beta = (z_cond - z_oliq)/z_cond, inscav_fisrt=',inscav_fisrt
    102102!  else
     
    200200    DO i=1, klon
    201201!  incloud scavenging
    202 !   if(inscav_fisrt) then
    203    if (iflag_lscav == 4) then
     202!   IF(inscav_fisrt) THEN
     203   if (iflag_lscav == 4) THEN
    204204      beta=beta_fisrt(i,k)*rneb(i,k)
    205205   else
     
    217217
    218218!  below-cloud impaction
    219     IF(it==1) then
     219    IF(it==1) THEN
    220220      d_tr_bcscav(i,k,it)=0.
    221221    ELSE
     
    234234      deltaP(i,k)=max(deltaP(i,k),0.)
    235235
    236       if(flxr(i,k+1)+flxs(i,k+1)>1.e-16) then
     236      IF(flxr(i,k+1)+flxs(i,k+1)>1.e-16) THEN
    237237       beta_ev(i,k)=deltaP(i,k)/(flxr(i,k+1)+flxs(i,k+1))
    238238      else
     
    244244!jyg
    245245     
    246       if(abs(1-(1-frac_ev)*beta_ev(i,k))>1.e-16) then
     246      IF(abs(1-(1-frac_ev)*beta_ev(i,k))>1.e-16) THEN
    247247! remove tracers from precipitation owing to release by evaporation in his_dh
    248248!      dxev=frac_ev*beta_ev(i,k)*his_dh(i) *pdtime/(zrho(i,k)*zdz(i,k)) &
     
    282282!                +d_tr_bcscav(i,k,it)*(paprs(i,k)-paprs(i,k+1))/RG  &
    283283!                +d_tr_evap(i,k,it)*(paprs(i,k)-paprs(i,k+1))/RG
    284 !      if(it.eq.3) write(*,'(I2,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12)'),&
     284!      IF(it.eq.3) WRITE(*,'(I2,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12)'),&
    285285!      k,'lsc conserv ',conserv,'insc',d_tr_insc(i,k,it),'bc',d_tr_bcscav(i,k,it),'ev',d_tr_evap(i,k,it)
    286286!       ENDDO
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/lsc_scav_spl.F90

    r5110 r5116  
    9797!$OMP THREADPRIVATE(R_r, R_s)
    9898  REAL           :: pr, ps, ice, water
    99   real :: conserv
     99  REAL :: conserv
    100100
    101101!!!!!!!!!!!!!!!!!!!! choix lessivage !!!!!!!!!!!!!!!!!!!!!!!!
     
    108108!  inscav_fisrt=.TRUE.
    109109!  CALL getin('inscav_fisrt',inscav_fisrt)
    110 if(inscav_fisrt) then
     110IF(inscav_fisrt) THEN
    111111!   PRINT*,'beta from fisrtilp.F90, beta = (z_cond - z_oliq)/z_cond, inscav_fisrt=',inscav_fisrt
    112112!  else
     
    211211    DO i=1, klon
    212212!  incloud scavenging
    213 !   if(inscav_fisrt) then
    214    if (iflag_lscav == 4) then
     213!   IF(inscav_fisrt) THEN
     214   if (iflag_lscav == 4) THEN
    215215      beta=beta_fisrt(i,k)*rneb(i,k)
    216216   else
     
    228228
    229229!  below-cloud impaction
    230     IF(it==id_prec) then
     230    IF(it==id_prec) THEN
    231231      d_tr_bcscav(i,k,it)=0.
    232232    ELSE
     
    245245      deltaP(i,k)=max(deltaP(i,k),0.)
    246246
    247       if(flxr(i,k+1)+flxs(i,k+1)>1.e-16) then
     247      IF(flxr(i,k+1)+flxs(i,k+1)>1.e-16) THEN
    248248       beta_ev(i,k)=deltaP(i,k)/(flxr(i,k+1)+flxs(i,k+1))
    249249      else
     
    255255!jyg
    256256     
    257       if(abs(1-(1-frac_ev)*beta_ev(i,k))>1.e-16) then
     257      IF(abs(1-(1-frac_ev)*beta_ev(i,k))>1.e-16) THEN
    258258! remove tracers from precipitation owing to release by evaporation in his_dh
    259259!      dxev=frac_ev*beta_ev(i,k)*his_dh(i) *pdtime/(zrho(i,k)*zdz(i,k)) &
     
    293293!                +d_tr_bcscav(i,k,it)*(paprs(i,k)-paprs(i,k+1))/RG  &
    294294!                +d_tr_evap(i,k,it)*(paprs(i,k)-paprs(i,k+1))/RG
    295 !      if(it.eq.3) write(*,'(I2,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12)'),&
     295!      IF(it.eq.3) WRITE(*,'(I2,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12)'),&
    296296!      k,'lsc conserv ',conserv,'insc',d_tr_insc(i,k,it),'bc',d_tr_bcscav(i,k,it),'ev',d_tr_evap(i,k,it)
    297297!       ENDDO
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/minmaxqfi2.f90

    r5104 r5116  
    33  USE dimphy
    44  USE infotrac
     5  USE lmdz_libmath, ONLY: ismax, ismin
    56  INCLUDE "dimensions.h"
    67
    78  ! character*20 comment
    8   character(len = *) :: comment
    9   real :: qmin, qmax
    10   real :: zq(klon, klev)
     9  CHARACTER(LEN = *) :: comment
     10  REAL :: qmin, qmax
     11  REAL :: zq(klon, klev)
    1112
    12   integer :: ijmin, lmin, ijlmin
    13   integer :: ijmax, lmax, ijlmax
    14 
    15   integer :: ismin, ismax
     13  INTEGER :: ijmin, lmin, ijlmin
     14  INTEGER :: ijmax, lmax, ijlmax
    1615
    1716  ijlmin = ismin(klon * klev, zq, 1)
     
    2524  zqmax = zq(ijmax, lmax)
    2625
    27   if(zqmin<qmin.or.zqmax>qmax) &
    28           write(*, 9999) comment, &
     26  IF(zqmin<qmin.or.zqmax>qmax) &
     27          WRITE(*, 9999) comment, &
    2928                  ijmin, lmin, zqmin, ijmax, lmax, zqmax
    3029
    31   return
     30  RETURN
    3231  9999   format(a20, 2('  q(', i4, ',', i2, ')=', e12.5))
    33 end subroutine minmaxqfi2
     32END SUBROUTINE minmaxqfi2
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/minmaxsource.f90

    r5104 r5116  
    33  USE dimphy
    44  USE infotrac
     5  USE lmdz_libmath, ONLY: ismax, ismin
    56
    67  INCLUDE "dimensions.h"
    78
    89  ! character*20 comment
    9   character(len = *) :: comment
    10   real :: qmin, qmax
    11   real :: zq(klon, nbtr)
     10  CHARACTER(LEN = *) :: comment
     11  REAL :: qmin, qmax
     12  REAL :: zq(klon, nbtr)
    1213
    13   integer :: ijmin, lmin, ijlmin
    14   integer :: ijmax, lmax, ijlmax
    15 
    16   integer :: ismin, ismax
     14  INTEGER :: ijmin, lmin, ijlmin
     15  INTEGER :: ijmax, lmax, ijlmax
    1716
    1817  ijlmin = ismin(klon * nbtr, zq, 1)
     
    2625  zqmax = zq(ijmax, lmax)
    2726
    28   if(zqmin<qmin.or.zqmax>qmax) &
    29           write(*, 9999) comment, &
     27  IF(zqmin<qmin.or.zqmax>qmax) &
     28          WRITE(*, 9999) comment, &
    3029                  ijmin, lmin, zqmin, ijmax, lmax, zqmax
    3130
    32   return
     31  RETURN
    3332  9999   format(a20, 2('  q(', i4, ',', i2, ')=', e12.5))
    34 end subroutine minmaxsource
     33END SUBROUTINE minmaxsource
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/neutral.f90

    r5105 r5116  
    3030  INCLUDE "dimensions.h"
    3131  !
    32   real :: u10_mps(klon), ustar_mps(klon), obklen_m(klon)
    33   real :: u10n_mps(klon)
    34   real :: pi, von_karman
     32  REAL :: u10_mps(klon), ustar_mps(klon), obklen_m(klon)
     33  REAL :: u10n_mps(klon)
     34  REAL :: pi, von_karman
    3535  ! parameter (pi = 3.141592653589793, von_karman = 0.4)
    3636  ! pour etre coherent avec vk de bl_for_dms.F
    3737  parameter (pi = 3.141592653589793, von_karman = 0.35)
    3838  !
    39   real :: phi, phi_inv, phi_inv_sq, f1, f2, f3, dum1, psi
    40   integer :: i
     39  REAL :: phi, phi_inv, phi_inv_sq, f1, f2, f3, dum1, psi
     40  INTEGER :: i
    4141
    4242  psi = 0.
     
    4545    if (u10_mps(i) < 0.) u10_mps(i) = 0.0
    4646
    47     if  (obklen_m(i) < 0.) then
     47    if  (obklen_m(i) < 0.) THEN
    4848      phi = (1. - 160. / obklen_m(i))**(-0.25)
    4949      phi_inv = 1. / phi
     
    5555      f3 = atan(dum1)
    5656      psi = 2. * log(f1) + log(f2) - 2. * f3 + pi / 2.
    57     else if (obklen_m(i) > 0.) then
     57    else if (obklen_m(i) > 0.) THEN
    5858      psi = -50. / obklen_m(i)
    5959    end if
     
    6161    u10n_mps(i) = u10_mps(i) + (ustar_mps(i) * psi / von_karman)
    6262    ! u10n set to 0. if -1 < obklen < 20
    63     if ((obklen_m(i)>-1.).and.(obklen_m(i)<20.)) then
     63    if ((obklen_m(i)>-1.).and.(obklen_m(i)<20.)) THEN
    6464      u10n_mps(i) = 0.
    6565    endif
     
    6868  enddo
    6969
    70 end subroutine neutral
     70END SUBROUTINE neutral
    7171!***********************************************************************
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/phys_output_write_spl_mod.F90

    r5112 r5116  
    466466         IF (vars_defined) THEN
    467467            IF (prt_level >= 10) THEN
    468                write(lunout,*)"phys_output_write: CALL xios_update_calendar, itau_w=",itau_w
     468               WRITE(lunout,*)"phys_output_write: CALL xios_update_calendar, itau_w=",itau_w
    469469            ENDIF
    470470!           CALL xios_update_calendar(itau_w)
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/phytracr_spl_mod.F90

    r5112 r5116  
    12131213    source_tr = 0.
    12141214
    1215     if (debutphy) then
     1215    if (debutphy) THEN
    12161216#ifdef IOPHYS_DUST
    12171217         CALL iophys_ini(pdtphys)
     
    12301230         IF(.NOT.tracers(iq)%isInPhysics) CYCLE
    12311231         itr = itr+1
    1232          write(str2,'(i2.2)') itrr
     1232         WRITE(str2,'(i2.2)') itrr
    12331233         CALL iophys_ecrit('TRA'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    12341234      enddo
     
    13941394      enddo
    13951395      ! check consistency with dust emission scheme:
    1396       if (ok_chimeredust) then
    1397         if (.not.(id_scdu>0 .and. id_codu>0 .and. id_fine>0)) then
     1396      if (ok_chimeredust) THEN
     1397        if (.not.(id_scdu>0 .and. id_codu>0 .and. id_fine>0)) THEN
    13981398          CALL abort_gcm('phytracr_mod', 'pb in ok_chimdust 0', 1)
    13991399        endif
    14001400      else
    1401         if (id_scdu>0) then
     1401        if (id_scdu>0) THEN
    14021402          CALL abort_gcm('phytracr_mod', 'pb in ok_chimdust 1 SCDU', 1)
    14031403        endif
    1404         if ((id_codu <= 0) .or. (id_fine<=0)) then
     1404        if ((id_codu <= 0) .or. (id_fine<=0)) THEN
    14051405          CALL abort_gcm('phytracr_mod', 'pb in ok_chimdust 1', 1)
    14061406        endif
     
    14181418    !---fraction of tracer that is convected (Tiedke)
    14191419    xconv(:) = 0.
    1420     if(id_prec>0)  xconv(id_prec) = 0.8
    1421     if(id_fine>0)  xconv(id_fine) = 0.5
    1422     if(id_coss>0)  xconv(id_coss) = 0.5
    1423     if(id_codu>0)  xconv(id_codu) = 0.6
    1424     if(id_scdu>0)  xconv(id_scdu) = 0.6  !!JE fix
     1420    IF(id_prec>0)  xconv(id_prec) = 0.8
     1421    IF(id_fine>0)  xconv(id_fine) = 0.5
     1422    IF(id_coss>0)  xconv(id_coss) = 0.5
     1423    IF(id_codu>0)  xconv(id_codu) = 0.6
     1424    IF(id_scdu>0)  xconv(id_scdu) = 0.6  !!JE fix
    14251425
    14261426    masse(:) = 1.
    1427     if(id_prec>0)  masse(id_prec) = 32.
    1428     if(id_fine>0)  masse(id_fine) = 6.02e23
    1429     if(id_coss>0)  masse(id_coss) = 6.02e23
    1430     if(id_codu>0)  masse(id_codu) = 6.02e23
    1431     if(id_scdu>0)  masse(id_scdu) = 6.02e23
     1427    IF(id_prec>0)  masse(id_prec) = 32.
     1428    IF(id_fine>0)  masse(id_fine) = 6.02e23
     1429    IF(id_coss>0)  masse(id_coss) = 6.02e23
     1430    IF(id_codu>0)  masse(id_codu) = 6.02e23
     1431    IF(id_scdu>0)  masse(id_scdu) = 6.02e23
    14321432
    14331433    henry(:) = 0.
    1434     if(id_prec>0)  henry(id_prec) = 1.4
    1435     if(id_fine>0)  henry(id_fine) = 0.0
    1436     if(id_coss>0)  henry(id_coss) = 0.0
    1437     if(id_codu>0)  henry(id_codu) = 0.0
    1438     if(id_scdu>0)  henry(id_scdu) = 0.0
     1434    IF(id_prec>0)  henry(id_prec) = 1.4
     1435    IF(id_fine>0)  henry(id_fine) = 0.0
     1436    IF(id_coss>0)  henry(id_coss) = 0.0
     1437    IF(id_codu>0)  henry(id_codu) = 0.0
     1438    IF(id_scdu>0)  henry(id_scdu) = 0.0
    14391439    !henry= (/1.4, 0.0, 0.0, 0.0/)
    14401440    kk(:) = 0.
    1441     if(id_prec>0)  kk(id_prec) = 2900.
    1442     if(id_fine>0)  kk(id_fine) = 0.0
    1443     if(id_coss>0)  kk(id_coss) = 0.0
    1444     if(id_codu>0)  kk(id_codu) = 0.0
    1445     if(id_scdu>0)  kk(id_scdu) = 0.0
     1441    IF(id_prec>0)  kk(id_prec) = 2900.
     1442    IF(id_fine>0)  kk(id_fine) = 0.0
     1443    IF(id_coss>0)  kk(id_coss) = 0.0
     1444    IF(id_codu>0)  kk(id_codu) = 0.0
     1445    IF(id_scdu>0)  kk(id_scdu) = 0.0
    14461446    !kk = (/2900., 0., 0., 0./)
    14471447    alpha_r(:) = 0.
    1448     if(id_prec>0)  alpha_r(id_prec) = 0.0
    1449     if(id_fine>0)  alpha_r(id_fine) = 0.001
    1450     if(id_coss>0)  alpha_r(id_coss) = 0.001
    1451     if(id_codu>0)  alpha_r(id_codu) = 0.001
    1452     if(id_scdu>0)  alpha_r(id_scdu) = 0.001  !JE fix
     1448    IF(id_prec>0)  alpha_r(id_prec) = 0.0
     1449    IF(id_fine>0)  alpha_r(id_fine) = 0.001
     1450    IF(id_coss>0)  alpha_r(id_coss) = 0.001
     1451    IF(id_codu>0)  alpha_r(id_codu) = 0.001
     1452    IF(id_scdu>0)  alpha_r(id_scdu) = 0.001  !JE fix
    14531453    alpha_s(:) = 0.
    1454     if(id_prec>0)  alpha_s(id_prec) = 0.0
    1455     if(id_fine>0)  alpha_s(id_fine) = 0.01
    1456     if(id_coss>0)  alpha_s(id_coss) = 0.01
    1457     if(id_codu>0)  alpha_s(id_codu) = 0.01
    1458     if(id_scdu>0)  alpha_s(id_scdu) = 0.01  !JE fix
     1454    IF(id_prec>0)  alpha_s(id_prec) = 0.0
     1455    IF(id_fine>0)  alpha_s(id_fine) = 0.01
     1456    IF(id_coss>0)  alpha_s(id_coss) = 0.01
     1457    IF(id_codu>0)  alpha_s(id_codu) = 0.01
     1458    IF(id_scdu>0)  alpha_s(id_scdu) = 0.01  !JE fix
    14591459
    14601460    !      alpha_r =  (/0., 0.001, 0.001, 0.001/)
     
    14651465    !vdep_oce = (/0.28, 0.28, 1.2, 1.2/)
    14661466    vdep_oce(:) = 0.
    1467     if(id_prec>0)  vdep_oce(id_prec) = 0.28
    1468     if(id_fine>0)  vdep_oce(id_fine) = 0.28
    1469     if(id_coss>0)  vdep_oce(id_coss) = 1.2
    1470     if(id_codu>0)  vdep_oce(id_codu) = 1.2
    1471     if(id_scdu>0)  vdep_oce(id_scdu) = 1.2
     1467    IF(id_prec>0)  vdep_oce(id_prec) = 0.28
     1468    IF(id_fine>0)  vdep_oce(id_fine) = 0.28
     1469    IF(id_coss>0)  vdep_oce(id_coss) = 1.2
     1470    IF(id_codu>0)  vdep_oce(id_codu) = 1.2
     1471    IF(id_scdu>0)  vdep_oce(id_scdu) = 1.2
    14721472    vdep_sic(:) = 0.
    1473     if(id_prec>0)  vdep_sic(id_prec) = 0.2
    1474     if(id_fine>0)  vdep_sic(id_fine) = 0.17
    1475     if(id_coss>0)  vdep_sic(id_coss) = 1.2
    1476     if(id_codu>0)  vdep_sic(id_codu) = 1.2
    1477     if(id_scdu>0)  vdep_sic(id_scdu) = 1.2
     1473    IF(id_prec>0)  vdep_sic(id_prec) = 0.2
     1474    IF(id_fine>0)  vdep_sic(id_fine) = 0.17
     1475    IF(id_coss>0)  vdep_sic(id_coss) = 1.2
     1476    IF(id_codu>0)  vdep_sic(id_codu) = 1.2
     1477    IF(id_scdu>0)  vdep_sic(id_scdu) = 1.2
    14781478
    14791479    !vdep_sic = (/0.2, 0.17, 1.2, 1.2/)
    14801480    !vdep_ter = (/0.3, 0.14, 1.2, 1.2/)
    14811481    vdep_ter(:) = 0.
    1482     if(id_prec>0)  vdep_ter(id_prec) = 0.3
    1483     if(id_fine>0)  vdep_ter(id_fine) = 0.14
    1484     if(id_coss>0)  vdep_ter(id_coss) = 1.2
    1485     if(id_codu>0)  vdep_ter(id_codu) = 1.2
    1486     if(id_scdu>0)  vdep_ter(id_scdu) = 1.2
     1482    IF(id_prec>0)  vdep_ter(id_prec) = 0.3
     1483    IF(id_fine>0)  vdep_ter(id_fine) = 0.14
     1484    IF(id_coss>0)  vdep_ter(id_coss) = 1.2
     1485    IF(id_codu>0)  vdep_ter(id_codu) = 1.2
     1486    IF(id_scdu>0)  vdep_ter(id_scdu) = 1.2
    14871487
    14881488    vdep_lic(:) = 0.
    1489     if(id_prec>0)  vdep_lic(id_prec) = 0.2
    1490     if(id_fine>0)  vdep_lic(id_fine) = 0.17
    1491     if(id_coss>0)  vdep_lic(id_coss) = 1.2
    1492     if(id_codu>0)  vdep_lic(id_codu) = 1.2
    1493     if(id_scdu>0)  vdep_lic(id_scdu) = 1.2
     1489    IF(id_prec>0)  vdep_lic(id_prec) = 0.2
     1490    IF(id_fine>0)  vdep_lic(id_fine) = 0.17
     1491    IF(id_coss>0)  vdep_lic(id_coss) = 1.2
     1492    IF(id_codu>0)  vdep_lic(id_codu) = 1.2
     1493    IF(id_scdu>0)  vdep_lic(id_scdu) = 1.2
    14941494
    14951495
     
    14981498    !     mais effet negligeable sur l'AOD
    14991499    ccntrAA_spla(:) = 0.
    1500     if(id_prec>0)  ccntrAA_spla(id_prec) = -9999.
    1501     if(id_fine>0)  ccntrAA_spla(id_fine) = 0.7
    1502     if(id_coss>0)  ccntrAA_spla(id_coss) = 1.0
    1503     if(id_codu>0)  ccntrAA_spla(id_codu) = 0.7
    1504     if(id_scdu>0)  ccntrAA_spla(id_scdu) = 0.7
     1500    IF(id_prec>0)  ccntrAA_spla(id_prec) = -9999.
     1501    IF(id_fine>0)  ccntrAA_spla(id_fine) = 0.7
     1502    IF(id_coss>0)  ccntrAA_spla(id_coss) = 1.0
     1503    IF(id_codu>0)  ccntrAA_spla(id_codu) = 0.7
     1504    IF(id_scdu>0)  ccntrAA_spla(id_scdu) = 0.7
    15051505
    15061506    ccntrENV_spla(:) = 0.
    1507     if(id_prec>0)  ccntrENV_spla(id_prec) = -9999.
    1508     if(id_fine>0)  ccntrENV_spla(id_fine) = 0.7
    1509     if(id_coss>0)  ccntrENV_spla(id_coss) = 1.0
    1510     if(id_codu>0)  ccntrENV_spla(id_codu) = 0.7
    1511     if(id_scdu>0)  ccntrENV_spla(id_scdu) = 0.7
     1507    IF(id_prec>0)  ccntrENV_spla(id_prec) = -9999.
     1508    IF(id_fine>0)  ccntrENV_spla(id_fine) = 0.7
     1509    IF(id_coss>0)  ccntrENV_spla(id_coss) = 1.0
     1510    IF(id_codu>0)  ccntrENV_spla(id_codu) = 0.7
     1511    IF(id_scdu>0)  ccntrENV_spla(id_scdu) = 0.7
    15121512    ! #DFB
    15131513    coefcoli_spla(:) = 0.
    1514     if(id_prec>0)  coefcoli_spla(id_prec) = -9999.
    1515     if(id_fine>0)  coefcoli_spla(id_fine) = 0.001
    1516     if(id_coss>0)  coefcoli_spla(id_coss) = 0.001
    1517     if(id_codu>0)  coefcoli_spla(id_codu) = 0.001
    1518     if(id_scdu>0)  coefcoli_spla(id_scdu) = 0.001
     1514    IF(id_prec>0)  coefcoli_spla(id_prec) = -9999.
     1515    IF(id_fine>0)  coefcoli_spla(id_fine) = 0.001
     1516    IF(id_coss>0)  coefcoli_spla(id_coss) = 0.001
     1517    IF(id_codu>0)  coefcoli_spla(id_codu) = 0.001
     1518    IF(id_scdu>0)  coefcoli_spla(id_scdu) = 0.001
    15191519
    15201520    !vdep_lic = (/0.2, 0.17, 1.2, 1.2/)
    15211521
    15221522    iscm3 = .FALSE.
    1523     if (debutphy) then
     1523    if (debutphy) THEN
    15241524      !$OMP MASTER
    15251525      CALL suphel
     
    18131813    ENDIF
    18141814
    1815     IF (debutphy) then
    1816 
     1815    IF (debutphy) THEN
    18171816      ! AS: initialisation des indices par point de grille physique iregion_*
    18181817      ! (variables tenant de l'assimilation, a eliminer dans un 2eme temps)
     
    20672066#ifdef IOPHYS_DUST
    20682067      do itr=1,nbtr
    2069          write(str2,'(i2.2)') itr
     2068         WRITE(str2,'(i2.2)') itr
    20702069         CALL iophys_ecrit('sav'//str2,1,'SOURCE','',source_tr(:,itr))
    20712070         CALL iophys_ecrit('fav'//str2,1,'SOURCE','',source_tr(:,itr))
    20722071      enddo
    20732072      do itr=1,nbtr
    2074          write(str2,'(i2.2)') itr
     2073         WRITE(str2,'(i2.2)') itr
    20752074         CALL iophys_ecrit('TRB'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    20762075      enddo
     
    21002099#ifdef IOPHYS_DUST
    21012100      do itr=1,nbtr
    2102          write(str2,'(i2.2)') itr
     2101         WRITE(str2,'(i2.2)') itr
    21032102         CALL iophys_ecrit('sap'//str2,1,'SOURCE','',source_tr(:,itr))
    21042103         CALL iophys_ecrit('fap'//str2,1,'SOURCE','',source_tr(:,itr))
     
    21972196
    21982197      do itr=1,nbtr
    2199          write(str2,'(i2.2)') itr
     2198         WRITE(str2,'(i2.2)') itr
    22002199         CALL iophys_ecrit('tpr'//str2,1,'SOURCE','',source_tr(:,itr))
    22012200         CALL iophys_ecrit('fpr'//str2,1,'SOURCE','',flux_tr(:,itr))
     
    22412240#ifdef IOPHYS_DUST
    22422241      do itr=1,nbtr
    2243          write(str2,'(i2.2)') itr
     2242         WRITE(str2,'(i2.2)') itr
    22442243         CALL iophys_ecrit('t'//str2,1,'SOURCE','',source_tr(:,itr))
    22452244         CALL iophys_ecrit('f'//str2,1,'SOURCE','',flux_tr(:,itr))
     
    22972296#ifdef IOPHYS_DUST
    22982297      do itr=1,nbtr
    2299          write(str2,'(i2.2)') itr
     2298         WRITE(str2,'(i2.2)') itr
    23002299         CALL iophys_ecrit('TRC'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    23012300      enddo
     
    23372336#ifdef IOPHYS_DUST
    23382337      do itr=1,nbtr
    2339          write(str2,'(i2.2)') itr
     2338         WRITE(str2,'(i2.2)') itr
    23402339         CALL iophys_ecrit('TRD'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    23412340      enddo
     
    24112410      CALL iophys_ecrit('delp',klev,'delp','',delp)
    24122411      do itr=1,nbtr
    2413          write(str2,'(i2.2)') itr
     2412         WRITE(str2,'(i2.2)') itr
    24142413         CALL iophys_ecrit('TRE'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    24152414      enddo
     
    26032602#ifdef IOPHYS_DUST
    26042603      do itr=1,nbtr
    2605          write(str2,'(i2.2)') itr
     2604         WRITE(str2,'(i2.2)') itr
    26062605         CALL iophys_ecrit('TRF'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    26072606      enddo
     
    26902689#ifdef IOPHYS_DUST
    26912690      do itr=1,nbtr
    2692          write(str2,'(i2.2)') itr
     2691         WRITE(str2,'(i2.2)') itr
    26932692         CALL iophys_ecrit('TRG'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    26942693      enddo
     
    28552854#ifdef IOPHYS_DUST
    28562855      do itr=1,nbtr
    2857          write(str2,'(i2.2)') itr
     2856         WRITE(str2,'(i2.2)') itr
    28582857         CALL iophys_ecrit('TRH'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    28592858      enddo
     
    30543053
    30553054      do itr=1,nbtr
    3056          write(str2,'(i2.2)') itr
     3055         WRITE(str2,'(i2.2)') itr
    30573056         CALL iophys_ecrit('TRI'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    30583057      enddo
     
    31753174#ifdef IOPHYS_DUST
    31763175      do itr=1,nbtr
    3177          write(str2,'(i2.2)') itr
     3176         WRITE(str2,'(i2.2)') itr
    31783177         CALL iophys_ecrit('TRJ'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    31793178      enddo
     
    34413440#ifdef IOPHYS_DUST
    34423441      do itr=1,nbtr
    3443          write(str2,'(i2.2)') itr
     3442         WRITE(str2,'(i2.2)') itr
    34443443         CALL iophys_ecrit('TRK'//str2,klev,'SOURCE','',tr_seri(:,:,itr))
    34453444      enddo
     
    38613860      !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    38623861
    3863       if(id_prec>0)  trm01(i) = trm(i, id_prec)
    3864       if(id_fine>0)  trm02(i) = trm(i, id_fine)
    3865       if(id_coss>0)  trm03(i) = trm(i, id_coss)
    3866       if(id_codu>0)  trm04(i) = trm(i, id_codu)
    3867       if(id_scdu>0)  trm05(i) = trm(i, id_scdu)
    3868       if(id_prec>0)    sconc01(i) = sconc_seri(i, id_prec)
    3869       if(id_fine>0)    sconc02(i) = sconc_seri(i, id_fine)
    3870       if(id_coss>0)    sconc03(i) = sconc_seri(i, id_coss)
    3871       if(id_codu>0)    sconc04(i) = sconc_seri(i, id_codu)
    3872       if(id_scdu>0)    sconc05(i) = sconc_seri(i, id_scdu)
    3873       if(id_prec>0)    flux01(i) = flux_tr(i, id_prec)
    3874       if(id_fine>0)    flux02(i) = flux_tr(i, id_fine)
    3875       if(id_coss>0)    flux03(i) = flux_tr(i, id_coss)
    3876       if(id_codu>0)    flux04(i) = flux_tr(i, id_codu)
    3877       if(id_scdu>0)    flux05(i) = flux_tr(i, id_scdu)
    3878       if(id_prec>0)    ds01(i) = his_ds(i, id_prec)
    3879       if(id_fine>0)    ds02(i) = his_ds(i, id_fine)
    3880       if(id_coss>0)    ds03(i) = his_ds(i, id_coss)
    3881       if(id_codu>0)    ds04(i) = his_ds(i, id_codu)
    3882       if(id_scdu>0)    ds05(i) = his_ds(i, id_scdu)
    3883       if(id_prec>0)    dh01(i) = his_dh(i, id_prec)
    3884       if(id_fine>0)    dh02(i) = his_dh(i, id_fine)
    3885       if(id_coss>0)    dh03(i) = his_dh(i, id_coss)
    3886       if(id_codu>0)    dh04(i) = his_dh(i, id_codu)
    3887       if(id_scdu>0)    dh05(i) = his_dh(i, id_scdu)
    3888       if(id_prec>0)    dtrconv01(i) = dtrconv(i, id_prec)
    3889       if(id_fine>0)    dtrconv02(i) = dtrconv(i, id_fine)
    3890       if(id_coss>0)    dtrconv03(i) = dtrconv(i, id_coss)
    3891       if(id_codu>0)    dtrconv04(i) = dtrconv(i, id_codu)
    3892       if(id_scdu>0)    dtrconv05(i) = dtrconv(i, id_scdu)
    3893       if(id_prec>0)    dtherm01(i) = his_th(i, id_prec)
    3894       if(id_fine>0)    dtherm02(i) = his_th(i, id_fine)
    3895       if(id_coss>0)    dtherm03(i) = his_th(i, id_coss)
    3896       if(id_codu>0)    dtherm04(i) = his_th(i, id_codu)
    3897       if(id_scdu>0)    dtherm05(i) = his_th(i, id_scdu)
    3898       if(id_prec>0)    dhkecv01(i) = his_dhkecv(i, id_prec)
    3899       if(id_fine>0)    dhkecv02(i) = his_dhkecv(i, id_fine)
    3900       if(id_coss>0)    dhkecv03(i) = his_dhkecv(i, id_coss)
    3901       if(id_codu>0)    dhkecv04(i) = his_dhkecv(i, id_codu)
    3902       if(id_scdu>0)    dhkecv05(i) = his_dhkecv(i, id_scdu)
    3903       if(id_prec>0)    d_tr_ds01(i) = his_ds(i, id_prec)
    3904       if(id_fine>0)    d_tr_ds02(i) = his_ds(i, id_fine)
    3905       if(id_coss>0)    d_tr_ds03(i) = his_ds(i, id_coss)
    3906       if(id_codu>0)    d_tr_ds04(i) = his_ds(i, id_codu)
    3907       if(id_scdu>0)    d_tr_ds05(i) = his_ds(i, id_scdu)
    3908       if(id_prec>0)    dhkelsc01(i) = his_dhkelsc(i, id_prec)
    3909       if(id_fine>0)    dhkelsc02(i) = his_dhkelsc(i, id_fine)
    3910       if(id_coss>0)    dhkelsc03(i) = his_dhkelsc(i, id_coss)
    3911       if(id_codu>0)    dhkelsc04(i) = his_dhkelsc(i, id_codu)
    3912       if(id_scdu>0)    dhkelsc05(i) = his_dhkelsc(i, id_scdu)
     3862      IF(id_prec>0)  trm01(i) = trm(i, id_prec)
     3863      IF(id_fine>0)  trm02(i) = trm(i, id_fine)
     3864      IF(id_coss>0)  trm03(i) = trm(i, id_coss)
     3865      IF(id_codu>0)  trm04(i) = trm(i, id_codu)
     3866      IF(id_scdu>0)  trm05(i) = trm(i, id_scdu)
     3867      IF(id_prec>0)    sconc01(i) = sconc_seri(i, id_prec)
     3868      IF(id_fine>0)    sconc02(i) = sconc_seri(i, id_fine)
     3869      IF(id_coss>0)    sconc03(i) = sconc_seri(i, id_coss)
     3870      IF(id_codu>0)    sconc04(i) = sconc_seri(i, id_codu)
     3871      IF(id_scdu>0)    sconc05(i) = sconc_seri(i, id_scdu)
     3872      IF(id_prec>0)    flux01(i) = flux_tr(i, id_prec)
     3873      IF(id_fine>0)    flux02(i) = flux_tr(i, id_fine)
     3874      IF(id_coss>0)    flux03(i) = flux_tr(i, id_coss)
     3875      IF(id_codu>0)    flux04(i) = flux_tr(i, id_codu)
     3876      IF(id_scdu>0)    flux05(i) = flux_tr(i, id_scdu)
     3877      IF(id_prec>0)    ds01(i) = his_ds(i, id_prec)
     3878      IF(id_fine>0)    ds02(i) = his_ds(i, id_fine)
     3879      IF(id_coss>0)    ds03(i) = his_ds(i, id_coss)
     3880      IF(id_codu>0)    ds04(i) = his_ds(i, id_codu)
     3881      IF(id_scdu>0)    ds05(i) = his_ds(i, id_scdu)
     3882      IF(id_prec>0)    dh01(i) = his_dh(i, id_prec)
     3883      IF(id_fine>0)    dh02(i) = his_dh(i, id_fine)
     3884      IF(id_coss>0)    dh03(i) = his_dh(i, id_coss)
     3885      IF(id_codu>0)    dh04(i) = his_dh(i, id_codu)
     3886      IF(id_scdu>0)    dh05(i) = his_dh(i, id_scdu)
     3887      IF(id_prec>0)    dtrconv01(i) = dtrconv(i, id_prec)
     3888      IF(id_fine>0)    dtrconv02(i) = dtrconv(i, id_fine)
     3889      IF(id_coss>0)    dtrconv03(i) = dtrconv(i, id_coss)
     3890      IF(id_codu>0)    dtrconv04(i) = dtrconv(i, id_codu)
     3891      IF(id_scdu>0)    dtrconv05(i) = dtrconv(i, id_scdu)
     3892      IF(id_prec>0)    dtherm01(i) = his_th(i, id_prec)
     3893      IF(id_fine>0)    dtherm02(i) = his_th(i, id_fine)
     3894      IF(id_coss>0)    dtherm03(i) = his_th(i, id_coss)
     3895      IF(id_codu>0)    dtherm04(i) = his_th(i, id_codu)
     3896      IF(id_scdu>0)    dtherm05(i) = his_th(i, id_scdu)
     3897      IF(id_prec>0)    dhkecv01(i) = his_dhkecv(i, id_prec)
     3898      IF(id_fine>0)    dhkecv02(i) = his_dhkecv(i, id_fine)
     3899      IF(id_coss>0)    dhkecv03(i) = his_dhkecv(i, id_coss)
     3900      IF(id_codu>0)    dhkecv04(i) = his_dhkecv(i, id_codu)
     3901      IF(id_scdu>0)    dhkecv05(i) = his_dhkecv(i, id_scdu)
     3902      IF(id_prec>0)    d_tr_ds01(i) = his_ds(i, id_prec)
     3903      IF(id_fine>0)    d_tr_ds02(i) = his_ds(i, id_fine)
     3904      IF(id_coss>0)    d_tr_ds03(i) = his_ds(i, id_coss)
     3905      IF(id_codu>0)    d_tr_ds04(i) = his_ds(i, id_codu)
     3906      IF(id_scdu>0)    d_tr_ds05(i) = his_ds(i, id_scdu)
     3907      IF(id_prec>0)    dhkelsc01(i) = his_dhkelsc(i, id_prec)
     3908      IF(id_fine>0)    dhkelsc02(i) = his_dhkelsc(i, id_fine)
     3909      IF(id_coss>0)    dhkelsc03(i) = his_dhkelsc(i, id_coss)
     3910      IF(id_codu>0)    dhkelsc04(i) = his_dhkelsc(i, id_codu)
     3911      IF(id_scdu>0)    dhkelsc05(i) = his_dhkelsc(i, id_scdu)
    39133912      u10m_ss(i) = u10m_ec(i)
    39143913      v10m_ss(i) = v10m_ec(i)
     
    39853984        DO k = 1, klev
    39863985
    3987           if(id_prec>0)        d_tr_cv01(i, k) = d_tr_cv_o(i, k, id_prec)
    3988           if(id_fine>0)        d_tr_cv02(i, k) = d_tr_cv_o(i, k, id_fine)
    3989           if(id_coss>0)        d_tr_cv03(i, k) = d_tr_cv_o(i, k, id_coss)
    3990           if(id_codu>0)        d_tr_cv04(i, k) = d_tr_cv_o(i, k, id_codu)
    3991           if(id_scdu>0)        d_tr_cv05(i, k) = d_tr_cv_o(i, k, id_scdu)
    3992           if(id_prec>0)        d_tr_trsp01(i, k) = d_tr_trsp_o(i, k, id_prec)
    3993           if(id_fine>0)        d_tr_trsp02(i, k) = d_tr_trsp_o(i, k, id_fine)
    3994           if(id_coss>0)        d_tr_trsp03(i, k) = d_tr_trsp_o(i, k, id_coss)
    3995           if(id_codu>0)        d_tr_trsp04(i, k) = d_tr_trsp_o(i, k, id_codu)
    3996           if(id_scdu>0)        d_tr_trsp05(i, k) = d_tr_trsp_o(i, k, id_scdu)
    3997           if(id_prec>0)        d_tr_sscav01(i, k) = d_tr_sscav_o(i, k, id_prec)
    3998           if(id_fine>0)        d_tr_sscav02(i, k) = d_tr_sscav_o(i, k, id_fine)
    3999           if(id_coss>0)        d_tr_sscav03(i, k) = d_tr_sscav_o(i, k, id_coss)
    4000           if(id_codu>0)        d_tr_sscav04(i, k) = d_tr_sscav_o(i, k, id_codu)
    4001           if(id_scdu>0)        d_tr_sscav05(i, k) = d_tr_sscav_o(i, k, id_scdu)
    4002           if(id_prec>0)        d_tr_sat01(i, k) = d_tr_sat_o(i, k, id_prec)
    4003           if(id_fine>0)        d_tr_sat02(i, k) = d_tr_sat_o(i, k, id_fine)
    4004           if(id_coss>0)        d_tr_sat03(i, k) = d_tr_sat_o(i, k, id_coss)
    4005           if(id_codu>0)        d_tr_sat04(i, k) = d_tr_sat_o(i, k, id_codu)
    4006           if(id_scdu>0)        d_tr_sat05(i, k) = d_tr_sat_o(i, k, id_scdu)
    4007           if(id_prec>0)        d_tr_uscav01(i, k) = d_tr_uscav_o(i, k, id_prec)
    4008           if(id_fine>0)        d_tr_uscav02(i, k) = d_tr_uscav_o(i, k, id_fine)
    4009           if(id_coss>0)        d_tr_uscav03(i, k) = d_tr_uscav_o(i, k, id_coss)
    4010           if(id_codu>0)        d_tr_uscav04(i, k) = d_tr_uscav_o(i, k, id_codu)
    4011           if(id_scdu>0)        d_tr_uscav05(i, k) = d_tr_uscav_o(i, k, id_scdu)
    4012           if(id_prec>0)        d_tr_insc01(i, k) = d_tr_insc_o(i, k, id_prec)
    4013           if(id_fine>0)        d_tr_insc02(i, k) = d_tr_insc_o(i, k, id_fine)
    4014           if(id_coss>0)        d_tr_insc03(i, k) = d_tr_insc_o(i, k, id_coss)
    4015           if(id_codu>0)        d_tr_insc04(i, k) = d_tr_insc_o(i, k, id_codu)
    4016           if(id_scdu>0)        d_tr_insc05(i, k) = d_tr_insc_o(i, k, id_scdu)
    4017           if(id_prec>0)        d_tr_bcscav01(i, k) = d_tr_bcscav_o(i, k, id_prec)
    4018           if(id_fine>0)        d_tr_bcscav02(i, k) = d_tr_bcscav_o(i, k, id_fine)
    4019           if(id_coss>0)        d_tr_bcscav03(i, k) = d_tr_bcscav_o(i, k, id_coss)
    4020           if(id_codu>0)        d_tr_bcscav04(i, k) = d_tr_bcscav_o(i, k, id_codu)
    4021           if(id_scdu>0)        d_tr_bcscav05(i, k) = d_tr_bcscav_o(i, k, id_scdu)
    4022           if(id_prec>0)        d_tr_evapls01(i, k) = d_tr_evapls_o(i, k, id_prec)
    4023           if(id_fine>0)        d_tr_evapls02(i, k) = d_tr_evapls_o(i, k, id_fine)
    4024           if(id_coss>0)        d_tr_evapls03(i, k) = d_tr_evapls_o(i, k, id_coss)
    4025           if(id_codu>0)        d_tr_evapls04(i, k) = d_tr_evapls_o(i, k, id_codu)
    4026           if(id_scdu>0)        d_tr_evapls05(i, k) = d_tr_evapls_o(i, k, id_scdu)
     3986          IF(id_prec>0)        d_tr_cv01(i, k) = d_tr_cv_o(i, k, id_prec)
     3987          IF(id_fine>0)        d_tr_cv02(i, k) = d_tr_cv_o(i, k, id_fine)
     3988          IF(id_coss>0)        d_tr_cv03(i, k) = d_tr_cv_o(i, k, id_coss)
     3989          IF(id_codu>0)        d_tr_cv04(i, k) = d_tr_cv_o(i, k, id_codu)
     3990          IF(id_scdu>0)        d_tr_cv05(i, k) = d_tr_cv_o(i, k, id_scdu)
     3991          IF(id_prec>0)        d_tr_trsp01(i, k) = d_tr_trsp_o(i, k, id_prec)
     3992          IF(id_fine>0)        d_tr_trsp02(i, k) = d_tr_trsp_o(i, k, id_fine)
     3993          IF(id_coss>0)        d_tr_trsp03(i, k) = d_tr_trsp_o(i, k, id_coss)
     3994          IF(id_codu>0)        d_tr_trsp04(i, k) = d_tr_trsp_o(i, k, id_codu)
     3995          IF(id_scdu>0)        d_tr_trsp05(i, k) = d_tr_trsp_o(i, k, id_scdu)
     3996          IF(id_prec>0)        d_tr_sscav01(i, k) = d_tr_sscav_o(i, k, id_prec)
     3997          IF(id_fine>0)        d_tr_sscav02(i, k) = d_tr_sscav_o(i, k, id_fine)
     3998          IF(id_coss>0)        d_tr_sscav03(i, k) = d_tr_sscav_o(i, k, id_coss)
     3999          IF(id_codu>0)        d_tr_sscav04(i, k) = d_tr_sscav_o(i, k, id_codu)
     4000          IF(id_scdu>0)        d_tr_sscav05(i, k) = d_tr_sscav_o(i, k, id_scdu)
     4001          IF(id_prec>0)        d_tr_sat01(i, k) = d_tr_sat_o(i, k, id_prec)
     4002          IF(id_fine>0)        d_tr_sat02(i, k) = d_tr_sat_o(i, k, id_fine)
     4003          IF(id_coss>0)        d_tr_sat03(i, k) = d_tr_sat_o(i, k, id_coss)
     4004          IF(id_codu>0)        d_tr_sat04(i, k) = d_tr_sat_o(i, k, id_codu)
     4005          IF(id_scdu>0)        d_tr_sat05(i, k) = d_tr_sat_o(i, k, id_scdu)
     4006          IF(id_prec>0)        d_tr_uscav01(i, k) = d_tr_uscav_o(i, k, id_prec)
     4007          IF(id_fine>0)        d_tr_uscav02(i, k) = d_tr_uscav_o(i, k, id_fine)
     4008          IF(id_coss>0)        d_tr_uscav03(i, k) = d_tr_uscav_o(i, k, id_coss)
     4009          IF(id_codu>0)        d_tr_uscav04(i, k) = d_tr_uscav_o(i, k, id_codu)
     4010          IF(id_scdu>0)        d_tr_uscav05(i, k) = d_tr_uscav_o(i, k, id_scdu)
     4011          IF(id_prec>0)        d_tr_insc01(i, k) = d_tr_insc_o(i, k, id_prec)
     4012          IF(id_fine>0)        d_tr_insc02(i, k) = d_tr_insc_o(i, k, id_fine)
     4013          IF(id_coss>0)        d_tr_insc03(i, k) = d_tr_insc_o(i, k, id_coss)
     4014          IF(id_codu>0)        d_tr_insc04(i, k) = d_tr_insc_o(i, k, id_codu)
     4015          IF(id_scdu>0)        d_tr_insc05(i, k) = d_tr_insc_o(i, k, id_scdu)
     4016          IF(id_prec>0)        d_tr_bcscav01(i, k) = d_tr_bcscav_o(i, k, id_prec)
     4017          IF(id_fine>0)        d_tr_bcscav02(i, k) = d_tr_bcscav_o(i, k, id_fine)
     4018          IF(id_coss>0)        d_tr_bcscav03(i, k) = d_tr_bcscav_o(i, k, id_coss)
     4019          IF(id_codu>0)        d_tr_bcscav04(i, k) = d_tr_bcscav_o(i, k, id_codu)
     4020          IF(id_scdu>0)        d_tr_bcscav05(i, k) = d_tr_bcscav_o(i, k, id_scdu)
     4021          IF(id_prec>0)        d_tr_evapls01(i, k) = d_tr_evapls_o(i, k, id_prec)
     4022          IF(id_fine>0)        d_tr_evapls02(i, k) = d_tr_evapls_o(i, k, id_fine)
     4023          IF(id_coss>0)        d_tr_evapls03(i, k) = d_tr_evapls_o(i, k, id_coss)
     4024          IF(id_codu>0)        d_tr_evapls04(i, k) = d_tr_evapls_o(i, k, id_codu)
     4025          IF(id_scdu>0)        d_tr_evapls05(i, k) = d_tr_evapls_o(i, k, id_scdu)
    40274026        ENDDO
    40284027      ENDDO
     
    40304029      DO i = 1, klon
    40314030        DO k = 1, klev
    4032           if(id_prec>0)        d_tr_cv01(i, k) = d_tr_cv(i, k, id_prec) / pdtphys
    4033           if(id_fine>0)        d_tr_cv02(i, k) = d_tr_cv(i, k, id_fine) / pdtphys
    4034           if(id_coss>0)        d_tr_cv03(i, k) = d_tr_cv(i, k, id_coss) / pdtphys
    4035           if(id_codu>0)        d_tr_cv04(i, k) = d_tr_cv(i, k, id_codu) / pdtphys
    4036           if(id_scdu>0)        d_tr_cv05(i, k) = d_tr_cv(i, k, id_scdu) / pdtphys
    4037           if(id_prec>0)        d_tr_trsp01(i, k) = d_tr_trsp(i, k, id_prec) / pdtphys
    4038           if(id_fine>0)        d_tr_trsp02(i, k) = d_tr_trsp(i, k, id_fine) / pdtphys
    4039           if(id_coss>0)        d_tr_trsp03(i, k) = d_tr_trsp(i, k, id_coss) / pdtphys
    4040           if(id_codu>0)        d_tr_trsp04(i, k) = d_tr_trsp(i, k, id_codu) / pdtphys
    4041           if(id_scdu>0)        d_tr_trsp05(i, k) = d_tr_trsp(i, k, id_scdu) / pdtphys
    4042           if(id_prec>0)        d_tr_sscav01(i, k) = d_tr_sscav(i, k, id_prec) / pdtphys
    4043           if(id_fine>0)        d_tr_sscav02(i, k) = d_tr_sscav(i, k, id_fine) / pdtphys
    4044           if(id_coss>0)        d_tr_sscav03(i, k) = d_tr_sscav(i, k, id_coss) / pdtphys
    4045           if(id_codu>0)        d_tr_sscav04(i, k) = d_tr_sscav(i, k, id_codu) / pdtphys
    4046           if(id_scdu>0)        d_tr_sscav05(i, k) = d_tr_sscav(i, k, id_scdu) / pdtphys
    4047           if(id_prec>0)        d_tr_sat01(i, k) = d_tr_sat(i, k, id_prec) / pdtphys
    4048           if(id_fine>0)        d_tr_sat02(i, k) = d_tr_sat(i, k, id_fine) / pdtphys
    4049           if(id_coss>0)        d_tr_sat03(i, k) = d_tr_sat(i, k, id_coss) / pdtphys
    4050           if(id_codu>0)        d_tr_sat04(i, k) = d_tr_sat(i, k, id_codu) / pdtphys
    4051           if(id_scdu>0)        d_tr_sat05(i, k) = d_tr_sat(i, k, id_scdu) / pdtphys
    4052           if(id_prec>0)        d_tr_uscav01(i, k) = d_tr_uscav(i, k, id_prec) / pdtphys
    4053           if(id_fine>0)        d_tr_uscav02(i, k) = d_tr_uscav(i, k, id_fine) / pdtphys
    4054           if(id_coss>0)        d_tr_uscav03(i, k) = d_tr_uscav(i, k, id_coss) / pdtphys
    4055           if(id_codu>0)        d_tr_uscav04(i, k) = d_tr_uscav(i, k, id_codu) / pdtphys
    4056           if(id_scdu>0)        d_tr_uscav05(i, k) = d_tr_uscav(i, k, id_scdu) / pdtphys
    4057           if(id_prec>0)        d_tr_insc01(i, k) = d_tr_insc(i, k, id_prec) / pdtphys
    4058           if(id_fine>0)        d_tr_insc02(i, k) = d_tr_insc(i, k, id_fine) / pdtphys
    4059           if(id_coss>0)        d_tr_insc03(i, k) = d_tr_insc(i, k, id_coss) / pdtphys
    4060           if(id_codu>0)        d_tr_insc04(i, k) = d_tr_insc(i, k, id_codu) / pdtphys
    4061           if(id_scdu>0)        d_tr_insc05(i, k) = d_tr_insc(i, k, id_scdu) / pdtphys
    4062           if(id_prec>0)        d_tr_bcscav01(i, k) = d_tr_bcscav(i, k, id_prec) / pdtphys
    4063           if(id_fine>0)        d_tr_bcscav02(i, k) = d_tr_bcscav(i, k, id_fine) / pdtphys
    4064           if(id_coss>0)        d_tr_bcscav03(i, k) = d_tr_bcscav(i, k, id_coss) / pdtphys
    4065           if(id_codu>0)        d_tr_bcscav04(i, k) = d_tr_bcscav(i, k, id_codu) / pdtphys
    4066           if(id_scdu>0)        d_tr_bcscav05(i, k) = d_tr_bcscav(i, k, id_scdu) / pdtphys
    4067           if(id_prec>0)        d_tr_evapls01(i, k) = d_tr_evapls(i, k, id_prec) / pdtphys
    4068           if(id_fine>0)        d_tr_evapls02(i, k) = d_tr_evapls(i, k, id_fine) / pdtphys
    4069           if(id_coss>0)        d_tr_evapls03(i, k) = d_tr_evapls(i, k, id_coss) / pdtphys
    4070           if(id_codu>0)        d_tr_evapls04(i, k) = d_tr_evapls(i, k, id_codu) / pdtphys
    4071           if(id_scdu>0)        d_tr_evapls05(i, k) = d_tr_evapls(i, k, id_scdu) / pdtphys
     4031          IF(id_prec>0)        d_tr_cv01(i, k) = d_tr_cv(i, k, id_prec) / pdtphys
     4032          IF(id_fine>0)        d_tr_cv02(i, k) = d_tr_cv(i, k, id_fine) / pdtphys
     4033          IF(id_coss>0)        d_tr_cv03(i, k) = d_tr_cv(i, k, id_coss) / pdtphys
     4034          IF(id_codu>0)        d_tr_cv04(i, k) = d_tr_cv(i, k, id_codu) / pdtphys
     4035          IF(id_scdu>0)        d_tr_cv05(i, k) = d_tr_cv(i, k, id_scdu) / pdtphys
     4036          IF(id_prec>0)        d_tr_trsp01(i, k) = d_tr_trsp(i, k, id_prec) / pdtphys
     4037          IF(id_fine>0)        d_tr_trsp02(i, k) = d_tr_trsp(i, k, id_fine) / pdtphys
     4038          IF(id_coss>0)        d_tr_trsp03(i, k) = d_tr_trsp(i, k, id_coss) / pdtphys
     4039          IF(id_codu>0)        d_tr_trsp04(i, k) = d_tr_trsp(i, k, id_codu) / pdtphys
     4040          IF(id_scdu>0)        d_tr_trsp05(i, k) = d_tr_trsp(i, k, id_scdu) / pdtphys
     4041          IF(id_prec>0)        d_tr_sscav01(i, k) = d_tr_sscav(i, k, id_prec) / pdtphys
     4042          IF(id_fine>0)        d_tr_sscav02(i, k) = d_tr_sscav(i, k, id_fine) / pdtphys
     4043          IF(id_coss>0)        d_tr_sscav03(i, k) = d_tr_sscav(i, k, id_coss) / pdtphys
     4044          IF(id_codu>0)        d_tr_sscav04(i, k) = d_tr_sscav(i, k, id_codu) / pdtphys
     4045          IF(id_scdu>0)        d_tr_sscav05(i, k) = d_tr_sscav(i, k, id_scdu) / pdtphys
     4046          IF(id_prec>0)        d_tr_sat01(i, k) = d_tr_sat(i, k, id_prec) / pdtphys
     4047          IF(id_fine>0)        d_tr_sat02(i, k) = d_tr_sat(i, k, id_fine) / pdtphys
     4048          IF(id_coss>0)        d_tr_sat03(i, k) = d_tr_sat(i, k, id_coss) / pdtphys
     4049          IF(id_codu>0)        d_tr_sat04(i, k) = d_tr_sat(i, k, id_codu) / pdtphys
     4050          IF(id_scdu>0)        d_tr_sat05(i, k) = d_tr_sat(i, k, id_scdu) / pdtphys
     4051          IF(id_prec>0)        d_tr_uscav01(i, k) = d_tr_uscav(i, k, id_prec) / pdtphys
     4052          IF(id_fine>0)        d_tr_uscav02(i, k) = d_tr_uscav(i, k, id_fine) / pdtphys
     4053          IF(id_coss>0)        d_tr_uscav03(i, k) = d_tr_uscav(i, k, id_coss) / pdtphys
     4054          IF(id_codu>0)        d_tr_uscav04(i, k) = d_tr_uscav(i, k, id_codu) / pdtphys
     4055          IF(id_scdu>0)        d_tr_uscav05(i, k) = d_tr_uscav(i, k, id_scdu) / pdtphys
     4056          IF(id_prec>0)        d_tr_insc01(i, k) = d_tr_insc(i, k, id_prec) / pdtphys
     4057          IF(id_fine>0)        d_tr_insc02(i, k) = d_tr_insc(i, k, id_fine) / pdtphys
     4058          IF(id_coss>0)        d_tr_insc03(i, k) = d_tr_insc(i, k, id_coss) / pdtphys
     4059          IF(id_codu>0)        d_tr_insc04(i, k) = d_tr_insc(i, k, id_codu) / pdtphys
     4060          IF(id_scdu>0)        d_tr_insc05(i, k) = d_tr_insc(i, k, id_scdu) / pdtphys
     4061          IF(id_prec>0)        d_tr_bcscav01(i, k) = d_tr_bcscav(i, k, id_prec) / pdtphys
     4062          IF(id_fine>0)        d_tr_bcscav02(i, k) = d_tr_bcscav(i, k, id_fine) / pdtphys
     4063          IF(id_coss>0)        d_tr_bcscav03(i, k) = d_tr_bcscav(i, k, id_coss) / pdtphys
     4064          IF(id_codu>0)        d_tr_bcscav04(i, k) = d_tr_bcscav(i, k, id_codu) / pdtphys
     4065          IF(id_scdu>0)        d_tr_bcscav05(i, k) = d_tr_bcscav(i, k, id_scdu) / pdtphys
     4066          IF(id_prec>0)        d_tr_evapls01(i, k) = d_tr_evapls(i, k, id_prec) / pdtphys
     4067          IF(id_fine>0)        d_tr_evapls02(i, k) = d_tr_evapls(i, k, id_fine) / pdtphys
     4068          IF(id_coss>0)        d_tr_evapls03(i, k) = d_tr_evapls(i, k, id_coss) / pdtphys
     4069          IF(id_codu>0)        d_tr_evapls04(i, k) = d_tr_evapls(i, k, id_codu) / pdtphys
     4070          IF(id_scdu>0)        d_tr_evapls05(i, k) = d_tr_evapls(i, k, id_scdu) / pdtphys
    40724071        ENDDO
    40734072      ENDDO
     
    40774076      DO i = 1, klon
    40784077        DO k = 1, klev
    4079           if(id_prec>0)        d_tr_ls01(i, k) = d_tr_ls_o(i, k, id_prec)
    4080           if(id_fine>0)        d_tr_ls02(i, k) = d_tr_ls_o(i, k, id_fine)
    4081           if(id_coss>0)        d_tr_ls03(i, k) = d_tr_ls_o(i, k, id_coss)
    4082           if(id_codu>0)        d_tr_ls04(i, k) = d_tr_ls_o(i, k, id_codu)
    4083           if(id_scdu>0)        d_tr_ls05(i, k) = d_tr_ls_o(i, k, id_scdu)
    4084           if(id_prec>0)        d_tr_dyn01(i, k) = d_tr_dyn_o(i, k, id_prec)
    4085           if(id_fine>0)        d_tr_dyn02(i, k) = d_tr_dyn_o(i, k, id_fine)
    4086           if(id_coss>0)        d_tr_dyn03(i, k) = d_tr_dyn_o(i, k, id_coss)
    4087           if(id_codu>0)        d_tr_dyn04(i, k) = d_tr_dyn_o(i, k, id_codu)
    4088           if(id_scdu>0)        d_tr_dyn05(i, k) = d_tr_dyn_o(i, k, id_scdu)
    4089           if(id_prec>0)        d_tr_cl01(i, k) = d_tr_cl_o(i, k, id_prec)
    4090           if(id_fine>0)        d_tr_cl02(i, k) = d_tr_cl_o(i, k, id_fine)
    4091           if(id_coss>0)        d_tr_cl03(i, k) = d_tr_cl_o(i, k, id_coss)
    4092           if(id_codu>0)        d_tr_cl04(i, k) = d_tr_cl_o(i, k, id_codu)
    4093           if(id_scdu>0)        d_tr_cl05(i, k) = d_tr_cl_o(i, k, id_scdu)
    4094           if(id_prec>0)        d_tr_th01(i, k) = d_tr_th_o(i, k, id_prec)
    4095           if(id_fine>0)        d_tr_th02(i, k) = d_tr_th_o(i, k, id_fine)
    4096           if(id_coss>0)        d_tr_th03(i, k) = d_tr_th_o(i, k, id_coss)
    4097           if(id_codu>0)        d_tr_th04(i, k) = d_tr_th_o(i, k, id_codu)
    4098           if(id_scdu>0)        d_tr_th05(i, k) = d_tr_th_o(i, k, id_scdu)
     4078          IF(id_prec>0)        d_tr_ls01(i, k) = d_tr_ls_o(i, k, id_prec)
     4079          IF(id_fine>0)        d_tr_ls02(i, k) = d_tr_ls_o(i, k, id_fine)
     4080          IF(id_coss>0)        d_tr_ls03(i, k) = d_tr_ls_o(i, k, id_coss)
     4081          IF(id_codu>0)        d_tr_ls04(i, k) = d_tr_ls_o(i, k, id_codu)
     4082          IF(id_scdu>0)        d_tr_ls05(i, k) = d_tr_ls_o(i, k, id_scdu)
     4083          IF(id_prec>0)        d_tr_dyn01(i, k) = d_tr_dyn_o(i, k, id_prec)
     4084          IF(id_fine>0)        d_tr_dyn02(i, k) = d_tr_dyn_o(i, k, id_fine)
     4085          IF(id_coss>0)        d_tr_dyn03(i, k) = d_tr_dyn_o(i, k, id_coss)
     4086          IF(id_codu>0)        d_tr_dyn04(i, k) = d_tr_dyn_o(i, k, id_codu)
     4087          IF(id_scdu>0)        d_tr_dyn05(i, k) = d_tr_dyn_o(i, k, id_scdu)
     4088          IF(id_prec>0)        d_tr_cl01(i, k) = d_tr_cl_o(i, k, id_prec)
     4089          IF(id_fine>0)        d_tr_cl02(i, k) = d_tr_cl_o(i, k, id_fine)
     4090          IF(id_coss>0)        d_tr_cl03(i, k) = d_tr_cl_o(i, k, id_coss)
     4091          IF(id_codu>0)        d_tr_cl04(i, k) = d_tr_cl_o(i, k, id_codu)
     4092          IF(id_scdu>0)        d_tr_cl05(i, k) = d_tr_cl_o(i, k, id_scdu)
     4093          IF(id_prec>0)        d_tr_th01(i, k) = d_tr_th_o(i, k, id_prec)
     4094          IF(id_fine>0)        d_tr_th02(i, k) = d_tr_th_o(i, k, id_fine)
     4095          IF(id_coss>0)        d_tr_th03(i, k) = d_tr_th_o(i, k, id_coss)
     4096          IF(id_codu>0)        d_tr_th04(i, k) = d_tr_th_o(i, k, id_codu)
     4097          IF(id_scdu>0)        d_tr_th05(i, k) = d_tr_th_o(i, k, id_scdu)
    40994098        ENDDO
    41004099      ENDDO
     
    41024101      DO i = 1, klon
    41034102        DO k = 1, klev
    4104           if(id_prec>0)        d_tr_ls01(i, k) = d_tr_ls(i, k, id_prec) / pdtphys
    4105           if(id_fine>0)        d_tr_ls02(i, k) = d_tr_ls(i, k, id_fine) / pdtphys
    4106           if(id_coss>0)        d_tr_ls03(i, k) = d_tr_ls(i, k, id_coss) / pdtphys
    4107           if(id_codu>0)        d_tr_ls04(i, k) = d_tr_ls(i, k, id_codu) / pdtphys
    4108           if(id_scdu>0)        d_tr_ls05(i, k) = d_tr_ls(i, k, id_scdu) / pdtphys
    4109           if(id_prec>0)        d_tr_dyn01(i, k) = d_tr_dyn(i, k, id_prec) / pdtphys
    4110           if(id_fine>0)        d_tr_dyn02(i, k) = d_tr_dyn(i, k, id_fine) / pdtphys
    4111           if(id_coss>0)        d_tr_dyn03(i, k) = d_tr_dyn(i, k, id_coss) / pdtphys
    4112           if(id_codu>0)        d_tr_dyn04(i, k) = d_tr_dyn(i, k, id_codu) / pdtphys
    4113           if(id_scdu>0)        d_tr_dyn05(i, k) = d_tr_dyn(i, k, id_scdu) / pdtphys
    4114           if(id_prec>0)        d_tr_cl01(i, k) = d_tr_cl(i, k, id_prec) / pdtphys
    4115           if(id_fine>0)        d_tr_cl02(i, k) = d_tr_cl(i, k, id_fine) / pdtphys
    4116           if(id_coss>0)        d_tr_cl03(i, k) = d_tr_cl(i, k, id_coss) / pdtphys
    4117           if(id_codu>0)        d_tr_cl04(i, k) = d_tr_cl(i, k, id_codu) / pdtphys
    4118           if(id_scdu>0)        d_tr_cl05(i, k) = d_tr_cl(i, k, id_scdu) / pdtphys
    4119           if(id_prec>0)        d_tr_th01(i, k) = d_tr_th(i, k, id_prec) / pdtphys
    4120           if(id_fine>0)        d_tr_th02(i, k) = d_tr_th(i, k, id_fine) / pdtphys
    4121           if(id_coss>0)        d_tr_th03(i, k) = d_tr_th(i, k, id_coss) / pdtphys
    4122           if(id_codu>0)        d_tr_th04(i, k) = d_tr_th(i, k, id_codu) / pdtphys
    4123           if(id_scdu>0)        d_tr_th05(i, k) = d_tr_th(i, k, id_scdu) / pdtphys
     4103          IF(id_prec>0)        d_tr_ls01(i, k) = d_tr_ls(i, k, id_prec) / pdtphys
     4104          IF(id_fine>0)        d_tr_ls02(i, k) = d_tr_ls(i, k, id_fine) / pdtphys
     4105          IF(id_coss>0)        d_tr_ls03(i, k) = d_tr_ls(i, k, id_coss) / pdtphys
     4106          IF(id_codu>0)        d_tr_ls04(i, k) = d_tr_ls(i, k, id_codu) / pdtphys
     4107          IF(id_scdu>0)        d_tr_ls05(i, k) = d_tr_ls(i, k, id_scdu) / pdtphys
     4108          IF(id_prec>0)        d_tr_dyn01(i, k) = d_tr_dyn(i, k, id_prec) / pdtphys
     4109          IF(id_fine>0)        d_tr_dyn02(i, k) = d_tr_dyn(i, k, id_fine) / pdtphys
     4110          IF(id_coss>0)        d_tr_dyn03(i, k) = d_tr_dyn(i, k, id_coss) / pdtphys
     4111          IF(id_codu>0)        d_tr_dyn04(i, k) = d_tr_dyn(i, k, id_codu) / pdtphys
     4112          IF(id_scdu>0)        d_tr_dyn05(i, k) = d_tr_dyn(i, k, id_scdu) / pdtphys
     4113          IF(id_prec>0)        d_tr_cl01(i, k) = d_tr_cl(i, k, id_prec) / pdtphys
     4114          IF(id_fine>0)        d_tr_cl02(i, k) = d_tr_cl(i, k, id_fine) / pdtphys
     4115          IF(id_coss>0)        d_tr_cl03(i, k) = d_tr_cl(i, k, id_coss) / pdtphys
     4116          IF(id_codu>0)        d_tr_cl04(i, k) = d_tr_cl(i, k, id_codu) / pdtphys
     4117          IF(id_scdu>0)        d_tr_cl05(i, k) = d_tr_cl(i, k, id_scdu) / pdtphys
     4118          IF(id_prec>0)        d_tr_th01(i, k) = d_tr_th(i, k, id_prec) / pdtphys
     4119          IF(id_fine>0)        d_tr_th02(i, k) = d_tr_th(i, k, id_fine) / pdtphys
     4120          IF(id_coss>0)        d_tr_th03(i, k) = d_tr_th(i, k, id_coss) / pdtphys
     4121          IF(id_codu>0)        d_tr_th04(i, k) = d_tr_th(i, k, id_codu) / pdtphys
     4122          IF(id_scdu>0)        d_tr_th05(i, k) = d_tr_th(i, k, id_scdu) / pdtphys
    41244123        ENDDO
    41254124      ENDDO
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/read_dust.f90

    r5110 r5116  
    1111  INTEGER :: step, nbjour
    1212  LOGICAL :: debutphy
    13   real :: dust_ec(klon)
    14   real :: dust_ec_glo(klon_glo)
     13  REAL :: dust_ec(klon)
     14  REAL :: dust_ec_glo(klon_glo)
    1515
    1616  ! as      real dust_nc(iip1,jjp1)
    17   real :: dust_nc_glo(nbp_lon + 1, nbp_lat)
    18   integer :: rcode
    19   integer :: ncid1, varid1, ncid2, varid2
     17  REAL :: dust_nc_glo(nbp_lon + 1, nbp_lat)
     18  INTEGER :: rcode
     19  INTEGER :: ncid1, varid1, ncid2, varid2
    2020
    2121  save ncid1, varid1, ncid2, varid2
    2222  !$OMP THREADPRIVATE(ncid1, varid1, ncid2, varid2)
    23   integer :: start(4), count(4), status
    24   integer :: i, j, ig
     23  INTEGER :: start(4), count(4), status
     24  INTEGER :: i, j, ig
    2525
    2626  !$OMP MASTER
    2727  IF (is_mpi_root .AND. is_omp_root) THEN
    28     if (debutphy) then
     28    if (debutphy) THEN
    2929      ncid1 = nf90_open('dust.nc', nf90_nowrite, rcode)
    3030      varid1 = nf90_inq_varid(ncid1, 'EMISSION', rcode)
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/read_surface.F90

    r5110 r5116  
    3939      real, dimension(jjp1) :: lats
    4040      real, dimension(nbp_lat) :: lats_glo
    41       real :: rcode2
     41      REAL :: rcode2
    4242      integer, dimension(1) :: startj,endj
    4343!JE20140526>>
     
    8383
    8484       DO i=1,5
    85           write(str1,'(i1)') i
     85          WRITE(str1,'(i1)') i
    8686          varname=trim(name)//str1
    8787       PRINT*,'lecture variable:',varname
     
    118118!JE20140526<<
    119119!              CALL gr_dyn_fi(1, iip1, jjp1, klon, tmp_dyn_invers, tmp_fi)
    120            if (isinversed) then
     120           if (isinversed) THEN
    121121                        CALL gr_dyn_fi(1, nbp_lon+1, nbp_lat, klon_glo, &
    122122   tmp_dyn_invers_glo, tmp_fi_glo)
  • LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/read_vent.f90

    r5110 r5116  
    1010  INTEGER :: step, nbjour
    1111  LOGICAL :: debutphy
    12   real :: u10m_ec(klon), v10m_ec(klon)
    13   real :: u10m_ec_glo(klon_glo), v10m_ec_glo(klon_glo)
     12  REAL :: u10m_ec(klon), v10m_ec(klon)
     13  REAL :: u10m_ec_glo(klon_glo), v10m_ec_glo(klon_glo)
    1414
    1515  !  real u10m_nc(iip1,jjp1) !, v10m_nc(iip1,jjm) ! dim 97x72
    1616  !  real v10m_nc(iip1,jjp1)  ! dim 97x73
    17   real :: u10m_nc_glo(nbp_lon + 1, nbp_lat) !, v10m_nc(iip1,jjm) ! dim 97x72
    18   real :: v10m_nc_glo(nbp_lon + 1, nbp_lat)  ! dim 97x73
    19   integer :: rcode
    20   integer :: ncidu1, varidu1, ncidv1, varidv1
     17  REAL :: u10m_nc_glo(nbp_lon + 1, nbp_lat) !, v10m_nc(iip1,jjm) ! dim 97x72
     18  REAL :: v10m_nc_glo(nbp_lon + 1, nbp_lat)  ! dim 97x73
     19  INTEGER :: rcode
     20  INTEGER :: ncidu1, varidu1, ncidv1, varidv1
    2121  save ncidu1, varidu1, ncidv1, varidv1
    2222  !$OMP THREADPRIVATE(ncidu1, varidu1, ncidv1, varidv1)
    23   integer :: start(4), count(4), status
    24   integer :: i, j, ig
     23  INTEGER :: start(4), count(4), status
     24  INTEGER :: i, j, ig
    2525
    2626  !$OMP MASTER
    2727  IF (is_mpi_root .AND. is_omp_root) THEN
    28     if (debutphy) then
    29 
     28    if (debutphy) THEN
    3029      ncidu1 = nf90_open('u10m.nc', nf90_nowrite, rcode)
    3130      varidu1 = nf90_inq_varid(ncidu1, 'U10M', rcode)
     
    107106! added by JE from the nh SPLA, dyn3d/read_reanalyse.F which is not available any more
    108107SUBROUTINE correctbid(iim, nl, x)
    109   integer :: iim, nl
    110   real :: x(iim + 1, nl)
    111   integer :: i, l
    112   real :: zz
     108  INTEGER :: iim, nl
     109  REAL :: x(iim + 1, nl)
     110  INTEGER :: i, l
     111  REAL :: zz
    113112
    114113  do l = 1, nl
    115114    do i = 2, iim - 1
    116       if(abs(x(i, l))>1.e10) then
     115      IF(abs(x(i, l))>1.e10) THEN
    117116        zz = 0.5 * (x(i - 1, l) + x(i + 1, l))
    118117        ! PRINT*,'correction ',i,l,x(i,l),zz
Note: See TracChangeset for help on using the changeset viewer.