Ignore:
Timestamp:
May 9, 2022, 12:35:40 PM (2 years ago)
Author:
dcugnet
Message:
  • Some variables are renamed or replaced by direct equivalents:
    • iso_indnum -> tracers(:)%iso_iName
    • niso_possibles -> niso
    • iqiso -> iqIsoPha ; index_trac -> itZonIso
    • ok_iso_verif -> isoCheck
    • ntraceurs_zone -> nzone ; ntraciso -> ntiso
    • qperemin -> min_qparent ; masseqmin -> min_qmass ; ratiomin -> min_ratio
  • Some renamed variables are only aliased with the older name (using USE <module>, ONLY: <oldName> => <newName>) in routines where they are repeated many times.
  • Few hard-coded indexes are now computed (examples: ilic, iso, ivap, irneb, iq_vap, iq_liq, iso_H2O, iso_HDO, iso_HTO, iso_O17, iso_O18).
  • The IF(isoCheck) test is now embedded in the check_isotopes_seq and check_isotopes_loc routines (lighter calling).
File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmdiso/isotopes_verif_mod.F90

    r4050 r4143  
    55MODULE isotopes_verif_mod
    66!use isotopes_mod, ONLY:
    7 !#ifdef ISOTRAC
    8 !use isotrac_mod, ONLY:
    9 !#endif
     7#ifdef ISOTRAC
     8   USE isotrac_mod, ONLY: nzone
     9#endif
     10USE infotrac_phy, ONLY: ntraciso=>ntiso, niso, itZonIso
    1011implicit none
    1112save
     
    9394        SUBROUTINE iso_verif_init()
    9495        use ioipsl_getin_p_mod, ONLY : getin_p
    95         !USE infotrac_phy, ONLY: use_iso
    9696        use isotopes_mod, ONLY: iso_O17, iso_O18, iso_HDO
    9797        implicit none
     
    196196
    197197        subroutine iso_verif_aberrant(R,err_msg)
    198         !USE infotrac_phy, ONLY: use_iso
    199198        use isotopes_mod, ONLY: ridicule, iso_HDO
    200199        implicit none
     
    227226
    228227        subroutine iso_verif_aberrant_encadre(R,err_msg)
    229         !use infotrac_phy, ONLY: use_iso
    230228        use isotopes_mod, ONLY: ridicule, iso_HDO
    231229        implicit none
     
    263261
    264262        subroutine iso_verif_aberrant_choix(xt,q,qmin,deltaDmax,err_msg)
    265         !use infotrac_phy, ONLY: use_iso
    266263        use isotopes_mod, ONLY: iso_HDO
    267264        implicit none
     
    298295
    299296        function iso_verif_aberrant_nostop(R,err_msg)
    300         !use infotrac_phy, ONLY: use_iso
    301297        use isotopes_mod, ONLY: ridicule,iso_HDO
    302298        implicit none
     
    330326
    331327        function iso_verif_aberrant_enc_nostop(R,err_msg)
    332         !use infotrac_phy, ONLY: use_iso
    333328        use isotopes_mod, ONLY: ridicule,iso_HDO
    334329        implicit none
     
    366361     &            qmin,deltaDmax,err_msg)
    367362
    368         !use infotrac_phy, ONLY: use_iso
    369363        use isotopes_mod, ONLY: iso_HDO
    370364        implicit none
     
    428422        function iso_verif_aberrant_enc_choix_nostop(xt,q,   &
    429423     &            qmin,deltaDmax,err_msg)
    430         !use infotrac_phy, ONLY: use_iso
    431424        use isotopes_mod, ONLY: iso_HDO
    432425        implicit none
     
    10651058        ! **********
    10661059        function deltaD(R)
    1067         !use infotrac_phy, ONLY: use_iso
    10681060        USE isotopes_mod, ONLY: tnat,iso_HDO
    10691061        implicit none
     
    10821074        ! **********
    10831075        function deltaO(R)
    1084         !use infotrac_phy, ONLY: use_iso
    10851076        USE isotopes_mod, ONLY: tnat,iso_O18
    10861077        implicit none
     
    10981089        ! **********
    10991090        function dexcess(RD,RO)
    1100         !use infotrac_phy, ONLY: use_iso
    11011091        USE isotopes_mod, ONLY: tnat,iso_O18,iso_HDO
    11021092        implicit none
     
    11381128         ! **********
    11391129        function o17excess(R17,R18)
    1140         !use infotrac_phy, ONLY: use_iso
    11411130        USE isotopes_mod, ONLY: tnat,iso_O18,iso_O17
    11421131        implicit none
     
    11601149     &           xt,q,err_msg,ni,n,m)
    11611150       
    1162         !use infotrac_phy, ONLY: use_iso
    11631151        USE isotopes_mod, ONLY: iso_eau
    11641152          implicit none
     
    12121200     &           xt,q,err_msg,ni,n)
    12131201
    1214         !use infotrac_phy, ONLY: use_iso
    12151202        USE isotopes_mod, ONLY: iso_eau
    12161203        implicit none
     
    12961283        subroutine iso_verif_aberrant_vect2D( &
    12971284     &           xt,q,err_msg,ni,n,m)
    1298         !use infotrac_phy, ONLY: use_iso
    12991285        use isotopes_mod, ONLY: ridicule,tnat,iso_HDO
    13001286          implicit none
     
    13451331     &           xt,q,err_msg,ni,n,m)
    13461332
    1347         !use infotrac_phy, ONLY: use_iso
    13481333        use isotopes_mod, ONLY: ridicule,tnat,iso_HDO
    13491334          implicit none
     
    13991384     &           xt,q,err_msg,ni,n,m)
    14001385
    1401         !use infotrac_phy, ONLY: use_iso
    14021386        use isotopes_mod, ONLY: ridicule,tnat,iso_HDO
    14031387          implicit none
     
    14501434     &           xt,q,err_msg,ni,n,m,deltaDmax)
    14511435
    1452         !use infotrac_phy, ONLY: use_iso
    14531436        use isotopes_mod, ONLY: ridicule,tnat,iso_HDO
    14541437          implicit none
     
    15011484     &           xt,q,err_msg,ni,n,m)
    15021485
    1503         !use infotrac_phy, ONLY: use_iso
    15041486        use isotopes_mod, ONLY: ridicule,tnat,iso_HDO,iso_O18
    15051487          implicit none
     
    17661748     &           xt,q,err_msg,ni,n,m,ib,ie)
    17671749
    1768         !use infotrac_phy, ONLY: use_iso
    17691750        use isotopes_mod, ONLY: ridicule,tnat,iso_HDO
    17701751          implicit none
     
    18171798     &           xt,q,err_msg,ni,n,m,ib,ie)
    18181799       
    1819         !use infotrac_phy, ONLY: use_iso
    18201800        USE isotopes_mod, ONLY: iso_eau
    18211801          implicit none
     
    18631843      function iso_verif_traceur_choix_nostop(x,err_msg, &
    18641844     &       errmax,errmaxrel,ridicule_trac,deltalimtrac)
    1865         USE infotrac_phy, ONLY: ntraciso
    18661845        use isotopes_mod, ONLY: iso_HDO
    18671846        implicit none
     
    19151894        function iso_verif_tracnps_choix_nostop(x,err_msg, &
    19161895     &       errmax,errmaxrel,ridicule_trac,deltalimtrac)
    1917         USE infotrac_phy, ONLY: ntraciso
    19181896        USE isotopes_mod, ONLY: iso_HDO
    19191897        implicit none
     
    19611939
    19621940        function iso_verif_tracpos_choix_nostop(x,err_msg,seuil)
    1963         use infotrac_phy, ONLY: ntraciso,niso
    19641941        use isotrac_mod, only: index_iso,strtrac,index_zone
    19651942        use isotopes_mod, only: striso
     
    19941971
    19951972        function iso_verif_traceur_noNaN_nostop(x,err_msg)
    1996         use infotrac_phy, ONLY: ntraciso,niso
    19971973        use isotrac_mod, only: index_iso
    19981974        use isotopes_mod, only: striso
     
    20292005     &           errmaxin,errmaxrelin)
    20302006
    2031         use infotrac_phy, ONLY: index_trac,ntraciso,niso
    20322007        use isotopes_mod, ONLY: ridicule,striso
    2033         use isotrac_mod, only: ntraceurs_zone
    20342008        ! on vérifie juste bilan de masse
    20352009        implicit none
     
    20532027
    20542028          xtractot=0.0
    2055           do izone=1,ntraceurs_zone 
    2056             ixt=index_trac(izone,iiso)
     2029          do izone=1,nzone 
     2030            ixt=itZonIso(izone,iiso)
    20572031            xtractot=xtractot+x(ixt)
    2058           enddo !do izone=1,ntraceurs_zone
     2032          enddo
    20592033
    20602034          if (iso_verif_egalite_choix_nostop(xtractot,x(iiso), &
     
    20822056     &           ridicule_trac,deltalimtrac)
    20832057
    2084         use infotrac_phy, ONLY: index_trac,ntraciso
    20852058        USE isotopes_mod, ONLY: iso_eau, iso_HDO
    2086         use isotrac_mod, only: strtrac,ntraceurs_zone
     2059        use isotrac_mod, only: strtrac
    20872060        ! on vérifie juste deltaD
    20882061        implicit none
     
    21032076
    21042077        if ((iso_eau.gt.0).and.(iso_HDO.gt.0)) then
    2105         do izone=1,ntraceurs_zone
    2106              ieau=index_trac(izone,iso_eau)
    2107              ixt=index_trac(izone,iso_HDO)
     2078        do izone=1,nzone
     2079             ieau=itZonIso(izone,iso_eau)
     2080             ixt=itZonIso(izone,iso_HDO)
    21082081
    21092082             if (iso_verif_aberrant_choix_nostop(x(ixt),x(ieau), &
     
    21182091!     :           //strtrac(izone))
    21192092!             endif
    2120         enddo !do izone=1,ntraceurs_zone
     2093        enddo !do izone=1,nzone
    21212094       endif ! if ((iso_eau.gt.0).and.(iso_HDO.gt.0)) then
    21222095
     
    21242097
    21252098INTEGER FUNCTION iso_verif_tag17_q_deltaD_chns(x,err_msg) RESULT(res)
    2126   USE infotrac_phy, ONLY: index_trac, ntraciso
    21272099  USE isotopes_mod, ONLY: iso_HDO, iso_eau, ridicule
    21282100  USE isotrac_mod,  ONLY: nzone_temp, option_traceurs
     
    21352107  !--- Check whether * deltaD(highest tagging layer) < 200 permil
    21362108  !                  * q <
    2137   ieau=index_trac(nzone_temp,iso_eau)
    2138   ixt=index_trac(nzone_temp,iso_HDO)
     2109  ieau=itZonIso(nzone_temp,iso_eau)
     2110  ixt=itZonIso(nzone_temp,iso_HDO)
    21392111  IF(x(ieau)>ridicule) THEN
    21402112    IF(iso_verif_positif_nostop(-200.0-deltaD(x(ixt)/x(ieau)), err_msg//': deltaDt05 trop fort')==1) THEN
     
    21472119  !--- Check whether q is small ; then, qt01 < 10%
    21482120  IF(x(iso_eau)<2.0e-3) THEN
    2149     ieau1= index_trac(1,iso_eau)
     2121    ieau1= itZonIso(1,iso_eau)
    21502122    IF(iso_verif_positif_nostop(0.1-(x(ieau1)/x(iso_eau)),err_msg//': qt01 trop abondant')==1) THEN
    21512123      res=1; write(*,*) 'x=',x
     
    21562128SUBROUTINE iso_verif_trac17_q_deltaD(x,err_msg)
    21572129  USE isotrac_mod,  ONLY: nzone_temp, option_traceurs
    2158   USE infotrac_phy, ONLY: ntraciso
    21592130  IMPLICIT NONE
    21602131  REAL,             INTENT(IN) :: x(ntraciso)
     
    21672138
    21682139      subroutine iso_verif_traceur(x,err_msg)
    2169         USE infotrac_phy, ONLY: ntraciso
    21702140        use isotrac_mod, only: ridicule_trac
    21712141        implicit none
     
    21952165      subroutine iso_verif_traceur_retourne3D(x,n1,n2,n3, &
    21962166     &           i1,i2,i3,err_msg)
    2197         USE infotrac_phy, ONLY: ntraciso
    21982167        use isotrac_mod, only: ridicule_trac
    21992168
     
    22282197        subroutine iso_verif_traceur_retourne4D(x,n1,n2,n3,n4, &
    22292198     &           i1,i2,i3,i4,err_msg)
    2230         USE infotrac_phy, ONLY: ntraciso
    22312199        use isotrac_mod, only: ridicule_trac
    22322200
     
    22622230      subroutine iso_verif_traceur_retourne2D(x,n1,n2, &
    22632231     &           i1,i2,err_msg)
    2264         USE infotrac_phy, ONLY: ntraciso
    22652232        use isotrac_mod, only: ridicule_trac
    22662233        implicit none
     
    22932260
    22942261        subroutine iso_verif_traceur_vect(x,n,m,err_msg)
    2295         USE infotrac_phy, ONLY: ntraciso
    22962262        USE isotopes_mod, ONLY: iso_HDO
    22972263        implicit none
     
    23292295
    23302296        subroutine iso_verif_tracnps_vect(x,n,m,err_msg)
    2331         USE infotrac_phy, ONLY: ntraciso
    23322297        USE isotopes_mod, ONLY: iso_HDO
    23332298        implicit none
     
    23632328
    23642329        subroutine iso_verif_traceur_noNaN_vect(x,n,m,err_msg)
    2365         USE infotrac_phy, ONLY: ntraciso,niso
    23662330        implicit none
    23672331       
     
    24072371        subroutine iso_verif_trac_masse_vect(x,n,m,err_msg, &
    24082372     &            errmax,errmaxrel)
    2409         USE infotrac_phy, ONLY: index_trac,ntraciso,niso
    24102373        use isotopes_mod, only: striso
    2411         use isotrac_mod, only: ntraceurs_zone
    24122374        implicit none
    24132375       
     
    24302392          xtractot(i,j)=0.0
    24312393          xiiso(i,j)=x(iiso,i,j)
    2432           do izone=1,ntraceurs_zone 
    2433             ixt=index_trac(izone,iiso)
     2394          do izone=1,nzone
     2395            ixt=itZonIso(izone,iiso)
    24342396            xtractot(i,j)=xtractot(i,j)+x(ixt,i,j)           
    2435           enddo !do izone=1,ntraceurs_zone
     2397          enddo !do izone=1,nzone
    24362398         enddo !do i=1,n
    24372399        enddo !do j=1,m
     
    24472409
    24482410        subroutine iso_verif_tracdd_vect(x,n,m,err_msg)
    2449         use infotrac_phy, only: index_trac,ntraciso,niso
    24502411        use isotopes_mod, only: iso_HDO,iso_eau
    2451         use isotrac_mod, only: strtrac,ntraceurs_zone
     2412        use isotrac_mod, only: strtrac
    24522413        implicit none
    24532414       
     
    24642425
    24652426       if (iso_HDO.gt.0) then
    2466         do izone=1,ntraceurs_zone
    2467           ieau=index_trac(izone,iso_eau)
     2427        do izone=1,nzone
     2428          ieau=itZonIso(izone,iso_eau)
    24682429          do iiso=1,niso
    2469            ixt=index_trac(izone,iiso)
     2430           ixt=itZonIso(izone,iiso)
    24702431           do j=1,m
    24712432            do i=1,n
     
    24842445     &           xiiso,xeau,err_msg//strtrac(izone),niso,n,m, &
    24852446     &           deltalimtrac)
    2486          enddo !do izone=1,ntraceurs_zone
     2447         enddo !do izone=1,nzone
    24872448        endif !if (iso_HDO.gt.0) then
    24882449
     
    24902451
    24912452        subroutine iso_verif_tracpos_vect(x,n,m,err_msg,seuil)
    2492         USE infotrac_phy, ONLY: ntraciso,niso
    24932453        implicit none
    24942454
     
    25322492
    25332493        subroutine iso_verif_tracnps(x,err_msg)
    2534         USE infotrac_phy, ONLY: ntraciso
    25352494        use isotrac_mod, only: ridicule_trac
    25362495
     
    25592518
    25602519        subroutine iso_verif_tracpos_choix(x,err_msg,seuil)
    2561         USE infotrac_phy, ONLY: ntraciso
    25622520        implicit none
    25632521        ! vérifier des choses sur les traceurs
     
    25852543        subroutine iso_verif_traceur_choix(x,err_msg, &
    25862544     &       errmax,errmaxrel,ridicule_trac_loc,deltalimtrac)
    2587         USE infotrac_phy, ONLY: ntraciso
    25882545        implicit none
    25892546        ! vérifier des choses sur les traceurs
     
    26082565
    26092566        function iso_verif_traceur_nostop(x,err_msg)
    2610         USE infotrac_phy, ONLY: ntraciso
    26112567        use isotrac_mod, only: ridicule_trac
    26122568        !use isotopes_verif, only: errmax,errmaxrel,deltalimtrac
     
    26372593
    26382594      subroutine iso_verif_traceur_justmass(x,err_msg)
    2639         USE infotrac_phy, ONLY: ntraciso
    26402595        implicit none
    26412596        ! on vérifie que noNaN et masse
     
    26662621
    26672622        function iso_verif_traceur_jm_nostop(x,err_msg)
    2668         USE infotrac_phy, ONLY: ntraciso
    26692623        implicit none
    26702624        ! on vérifie que noNaN et masse
     
    26992653
    27002654        subroutine iso_verif_tag17_q_deltaD_vect(x,n,m,err_msg)
    2701         USE infotrac_phy, ONLY: index_trac,ntraciso
    27022655        USE isotopes_mod, ONLY: tnat,iso_eau, ridicule,iso_HDO
    27032656        use isotrac_mod, only: option_traceurs,nzone_temp
     
    27192672        ! verifier que deltaD du tag de la couche la plus haute <
    27202673        ! 200 permil, et vérifier que son q est inférieur à
    2721         ieau=index_trac(nzone_temp,iso_eau)
    2722         ixt=index_trac(nzone_temp,iso_HDO)
    2723         ieau1=index_trac(1,iso_eau)
     2674        ieau=itZonIso(nzone_temp,iso_eau)
     2675        ixt=itZonIso(nzone_temp,iso_HDO)
     2676        ieau1=itZonIso(1,iso_eau)
    27242677        do i=1,n
    27252678         do k=1,m
     
    27592712
    27602713        subroutine iso_verif_tag17_q_deltaD_vect_ret3D(x,n,m,nq,err_msg)
    2761         USE infotrac_phy, ONLY: index_trac,ntraciso
    27622714        USE isotopes_mod, ONLY: tnat,iso_eau,iso_HDO,ridicule
    27632715        use isotrac_mod, only: option_traceurs,nzone_temp
     
    27792731        ! verifier que deltaD du tag de la couche la plus haute <
    27802732        ! 200 permil, et vérifier que son q est inférieur à
    2781         ieau=index_trac(nzone_temp,iso_eau)
    2782         ixt=index_trac(nzone_temp,iso_HDO)
    2783         ieau1=index_trac(1,iso_eau)
     2733        ieau=itZonIso(nzone_temp,iso_eau)
     2734        ixt=itZonIso(nzone_temp,iso_HDO)
     2735        ieau1=itZonIso(1,iso_eau)
    27842736        do iq=1,nq
    27852737        do i=1,n
Note: See TracChangeset for help on using the changeset viewer.