Index: /LMDZ6/trunk/DefLists/tracer.def
===================================================================
--- /LMDZ6/trunk/DefLists/tracer.def	(revision 4158)
+++ /LMDZ6/trunk/DefLists/tracer.def	(revision 4158)
@@ -0,0 +1,6 @@
+&version=1.0
+&lmdz
+default    type=tracer  phases=g    hadv=10   vadv=10   parent=air
+H2O                                 hadv=14   vadv=14
+H2O                     phases=ls
+Aga                                 hadv=0    vadv=0
Index: /LMDZ6/trunk/DefLists/tracer_RN_PB.def
===================================================================
--- /LMDZ6/trunk/DefLists/tracer_RN_PB.def	(revision 4158)
+++ /LMDZ6/trunk/DefLists/tracer_RN_PB.def	(revision 4158)
@@ -0,0 +1,6 @@
+&version=1.0
+&lmdz
+default    type=tracer  phases=g    hadv=10   vadv=10   parent=air
+H2O                                 hadv=14   vadv=14
+H2O                     phases=ls
+RN,PB
Index: /LMDZ6/trunk/DefLists/tracer_RN_PB.def_iso
===================================================================
--- /LMDZ6/trunk/DefLists/tracer_RN_PB.def_iso	(revision 4158)
+++ /LMDZ6/trunk/DefLists/tracer_RN_PB.def_iso	(revision 4158)
@@ -0,0 +1,7 @@
+&version=1.0
+&lmdz
+default    type=tracer  phases=g    hadv=10   vadv=10   parent=air
+H2O                                 hadv=14   vadv=14
+H2O                     phases=ls
+H2[18]O,H[2]HO,H2[16]O  phases=gls                      parent=H2O
+RN,PB
Index: /LMDZ6/trunk/libf/dyn3d_common/infotrac.F90
===================================================================
--- /LMDZ6/trunk/libf/dyn3d_common/infotrac.F90	(revision 4157)
+++ /LMDZ6/trunk/libf/dyn3d_common/infotrac.F90	(revision 4158)
@@ -132,5 +132,4 @@
    INTEGER,             SAVE, ALLOCATABLE :: conv_flg(:), &     !--- Convection     activation ; needed for INCA        (nbtr)
                                               pbl_flg(:)        !--- Boundary layer activation ; needed for INCA        (nbtr)
-   LOGICAL, PARAMETER :: lOldCode = .FALSE.
 
 CONTAINS
@@ -202,9 +201,5 @@
     
    CALL msg('type_trac = "'//TRIM(type_trac)//'"', modname)
-   IF(lOldCode) THEN
-      str = [type_trac]; nt = 1
-   ELSE
-      IF(strParse(type_trac, ',', str, n=nt)) CALL abort_gcm(modname,'can''t parse "type_trac = '//TRIM(type_trac)//'"',1)
-   END IF
+   IF(strParse(type_trac, ',', str, n=nt)) CALL abort_gcm(modname,'can''t parse "type_trac = '//TRIM(type_trac)//'"',1)
 
    !---------------------------------------------------------------------------------------------------------------------------
@@ -256,95 +251,4 @@
 ! 1) Get the numbers of: true (first order only) tracers "nqtrue", water tracers "nqo" (vapor/liquid/solid)
 !==============================================================================================================================
-
-!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-   IF(lOldCode) THEN         !--- "type_trac" is a single keyword => no need to loop on its parsed version "str(:)"
-!------------------------------------------------------------------------------------------------------------------------------
-   !--- Determine nqtrue and (INCA only) nqo, nbtr
-   OPEN(90, FILE='traceur.def', FORM='formatted', STATUS='old', IOSTAT=ierr)
-   IF(ierr /= 0) CALL abort_gcm(modname, 'file "traceur.def" not found !', 1)
-   CALL msg('File "traceur.def" successfully opened.', modname)
-
-   IF(ANY(['inca','inco'] == type_trac)) THEN
-#ifdef INCA
-      READ(90,*) nqo
-      IF(nqCO2==1 .AND. nqo==4) nqo = 3
-      CALL Init_chem_inca_trac(nqINCA)
-      nbtr = nqINCA + nqCO2
-      nqtrue = nbtr + nqo
-      IF(ALL([2,3] /= nqo)) CALL abort_gcm(modname, 'Only 2 or 3 water phases allowed ; found nqo='//TRIM(int2str(nqo)), 1)
-      ALLOCATE(hadv_inca(nqINCA), conv_flg_inca(nqINCA), solsym_inca(nqINCA))
-      ALLOCATE(vadv_inca(nqINCA),  pbl_flg_inca(nqINCA))
-      CALL init_transport(solsym_inca, conv_flg_inca, pbl_flg_inca, hadv_inca, vadv_inca)
-#endif
-   ELSE
-      READ(90,*) nqtrue
-   END IF
-
-   IF (planet_type=="earth" .AND. nqtrue < 2) &
-      CALL abort_gcm('infotrac_init', 'Not enough tracers: nqtrue='//TRIM(int2str(nqtrue))//', 2 tracers is the minimum', 1)
-
-   !--- Allocate variables depending on nqtrue
-   ALLOCATE(hadv(nqtrue), vadv(nqtrue), tnom_0(nqtrue), tnom_transp(nqtrue), tracers(nqtrue))
-
-   !--- Continue to read tracer.def
-   it = 0
-   DO iq = 1, nqtrue
-#ifdef INCA
-      IF(iq > nqo+nqCO2) THEN
-         it = it+1
-         hadv  (iq) = hadv_inca  (it)
-         vadv  (iq) = vadv_inca  (it) 
-         tnom_0(iq) = solsym_inca(it)
-         tnom_transp(iq) = 'air'
-         CYCLE
-      END IF
-#endif
-      READ(90,'(I2,X,I2,X,A)',IOSTAT=ierr) hadv(iq),vadv(iq),tchaine
-      IF(ierr/=0) CALL abort_gcm('infotrac_init', 'Pb dans la lecture de traceur.def', 1)
-      jq = INDEX(tchaine(1:LEN_TRIM(tchaine)),' ')
-      CALL msg("Ancienne version de traceur.def: traceurs d'air uniquement", modname, iq==1 .AND. jq==0)
-      CALL msg("Nouvelle version de traceur.def",                            modname, iq==1 .AND. jq/=0)
-      CALL msg('iq, hadv, vadv, tchaine ='//TRIM(strStack(int2str([iq, hadv(iq), vadv(iq)])))//', '//TRIM(tchaine), modname)
-      IF(jq /= 0) THEN                                               !--- Space in the string chain => new format
-         tnom_0     (iq) = tchaine(1:jq-1)
-         tnom_transp(iq) = tchaine(jq+1:)
-      ELSE
-         tnom_0     (iq) = tchaine
-         tnom_transp(iq) = 'air'
-      END IF
-   END DO
-   CLOSE(90)
-
-#ifndef INCA
-   IF(planet_type /= 'earth') nqo = 0                                !--- Same number of tracers in dynamics and physics
-   IF(planet_type == 'earth') nqo = COUNT(delPhase(tnom_0) == 'H2O') !--- for all planets except for Earth
-   nbtr = nqtrue - nqo
-#endif
-
-   CALL msg('RAW CONTENT OF "traceur.def" FILE:', modname)
-   IF(dispTable('iiss', ['hadv  ', 'vadv  ', 'name  ', 'parent'], cat(tnom_0, tnom_transp), cat(hadv, vadv))) &
-      CALL abort_gcm(modname, "problem with the tracers table content", 1)
-
-   !--- SET FIELDS %name, %parent, %phase, %component
-   tracers(:)%name      = old2newName(tnom_0)
-   tracers(:)%parent    = old2newName(tnom_transp)
-   tracers(:)%phase     = [( getPhase(tracers(iq)%name), iq=1, nqtrue )]
-   tracers(:)%component = type_trac
-   DO iq = 1, nqtrue
-      IF(addPhase('H2O',tracers(iq)%phase) == tracers(iq)%name) tracers(iq)%component = 'lmdz'
-   END DO
-   IF(ANY(['inca','inco'] == type_trac)) tracers(1+nqo:nqCO2+nqo)%component = 'co2i'
-   CALL setGeneration(tracers)                                       !--- SET FIELDS %iGeneration, %gen0Name
-   WHERE(tracers(:)%iGeneration == 2) tracers(:)%type = 'tag'        !--- DEFAULT VALUE: "tracer"
-
-   !--- FINALIZE
-   DEALLOCATE(tnom_0, tnom_transp)
-#ifdef INCA
-   DEALLOCATE(hadv_inca, vadv_inca, conv_flg_inca, pbl_flg_inca, solsym_inca)
-#endif
-
-!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-ELSE
-!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    IF(readTracersFiles(type_trac, fType, tracers)) CALL abort_gcm(modname, 'problem with tracers file(s)',1)
    IF(fType == 0) CALL abort_gcm(modname, 'Missing tracers file: "traceur.def", "tracer.def" or "tracer_<keyword>.def file.',1)
@@ -389,6 +293,4 @@
    END IF
    !---------------------------------------------------------------------------------------------------------------------------
-END IF
-!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
    CALL getKey_init(tracers)
@@ -495,18 +397,4 @@
          modname, iad == 14 .AND. ll))                 t1%iadv = 10
    END DO
-
-IF(lOldCode) THEN
-
-   CALL infotrac_setHeredity                !--- SET FIELDS %iqParent, %nqChilds, %iGeneration, %gen0Name, %iqDescen, %nqDescen
-   CALL infotrac_isoinit                    !--- SET FIELDS %type, %iso_iName, %iso_iZone, %iso_iPhase
-   CALL getKey_init(tracers, isotopes)
-   IF(isoSelect('H2O')) RETURN              !--- Select water isotopes ; finished if no water isotopes
-   iH2O = ixIso                             !--- Keep track of water family index
-
-   !--- Remove the isotopic tracers from the tracers list passed to phytrac
-   nbtr    = nbtr -nqo*   ntiso             !--- ISOTOPIC TAGGING TRACERS ARE NOT PASSED TO THE PHYSICS
-   nqtottr = nqtot-nqo*(1+ntiso)            !--- NO H2O-FAMILY    TRACER  IS      PASSED TO THE PHYSICS
-
-ELSE
 
    niso = 0; nzone=0; nphas=nqo; ntiso = 0; isoCheck=.FALSE.
@@ -542,6 +430,4 @@
       END DO
    END IF
-
-END IF
 
    !--- Convection / boundary layer activation for all tracers
@@ -586,177 +472,4 @@
 
 END SUBROUTINE infotrac_init
-
-
-
-SUBROUTINE infotrac_setHeredity
-   !--- Purpose: Set fields %iqParent, %nqChilds, %iGeneration, %iqDescen, %nqDescen (old method)
-   USE strings_mod, ONLY: strIdx
-   INTEGER               :: iq, jq, ipere, ifils
-   INTEGER, ALLOCATABLE  :: iqfils(:,:)
-   CHARACTER(LEN=maxlen) :: msg1, modname='infotrac_init'
-   INCLUDE "iniprint.h"
-
-   !=== SET FIELDS %iqParent, %nqChilds
-   ALLOCATE(iqfils(nqtot,nqtot)); iqfils(:,:) = 0
-   tracers(:)%nqChilds = 0
-   tracers(:)%iqParent = 0
-
-   DO iq = 1, nqtot
-      msg1 = 'Tracer nr. '//TRIM(int2str(iq))//', called "'//TRIM(tracers(iq)%name)//'" is '
-
-      !--- IS IT A GENERATION 0 TRACER ? IF SO, tracers(iq)%iqParent KEEPS ITS DEFAULT VALUE (0)
-      IF(fmsg(TRIM(msg1)//' a parent', modname, tracers(iq)%parent == tran0)) CYCLE
-
-      !--- TRACERS OF GENERATION > 0 ; FIND ITS PARENT INDEX
-      ipere = strIdx(tracers(:)%name, tracers(iq)%parent)
-      IF(ipere == 0)  CALL abort_gcm('infotrac_init', TRIM(msg1)//' an orphan', 1)
-      IF(iq == ipere) CALL abort_gcm('infotrac_init', TRIM(msg1)//' its own parent',1)
-
-      CALL msg(TRIM(msg1)//' the child of '//TRIM(tracers(ipere)%name), modname)
-      tracers(iq)%iqParent    = ipere
-      tracers(ipere)%nqChilds = tracers(ipere)%nqChilds+1
-      iqfils(tracers(ipere)%nqChilds,ipere) = iq
-   END DO
-
-   CALL msg('nqGen0   = '//int2str(COUNT(tracers(:)%parent == 'air')), modname)
-   CALL msg('nqChilds = '//strStack(int2str(tracers(:)%nqChilds)),     modname)
-   CALL msg('iqParent = '//strStack(int2str(tracers(:)%iqParent)),     modname)
-   CALL msg('iqChilds = '//strStack(int2str(PACK(iqfils,MASK=.TRUE.))),modname)
-
-   !=== SET FIELDS %iGeneration, %iqDescen, %nqDescen
-   tracers(:)%iGeneration = 0
-   tracers(:)%nqDescen = 0
-   DO iq = 1, nqtot
-      ifils = iq
-      DO WHILE(tracers(ifils)%iqParent > 0)
-         ipere = tracers(ifils)%iqParent
-         tracers(ipere)%nqDescen = tracers(ipere)%nqDescen+1   
-         tracers(iq)%iGeneration = tracers(iq)%iGeneration+1
-         iqfils(tracers(ipere)%nqDescen,ipere) = iq
-         ifils = ipere
-      END DO
-      msg1 = 'Tracer nr. '//TRIM(int2str(iq))//', called "'//TRIM(tracers(iq)%name)//'" is '
-      CALL msg(TRIM(msg1)//' of generation '//TRIM(int2str(tracers(iq)%iGeneration)), modname)
-   END DO
-   DO iq=1,nqtot
-      tracers(iq)%iqDescen = iqfils(1:tracers(iq)%nqDescen,iq)
-   END DO
-
-   !=== SET FIELD %gen0Name
-   DO iq = 1, nqtot
-      jq=iq; DO WHILE(tracers(jq)%iGeneration > 0); jq=tracers(jq)%iqParent; END DO
-      tracers(iq)%gen0Name = tracers(jq)%name
-   END DO
-
-   CALL msg('nqDescen = '//TRIM(strStack(int2str(tracers(:)%nqDescen))), modname)
-   CALL msg('nqDescen_tot = ' //TRIM(int2str(SUM(tracers(:)%nqDescen))), modname)
-   CALL msg('iqDescen = '//strStack(int2str(PACK(iqfils, MASK=.TRUE.))), modname)
-
-END SUBROUTINE infotrac_setHeredity
-
-
-
-SUBROUTINE infotrac_isoinit
-
-#ifdef CPP_IOIPSL
-   USE IOIPSL
-#else
-   USE ioipsl_getincom
-#endif
-   USE readTracFiles_mod, ONLY: tnom_iso => newH2OIso
-   IMPLICIT NONE
-   INTEGER, ALLOCATABLE  :: nb_iso(:), nb_tiso(:), nb_zone(:), ix(:), iy(:)
-   INTEGER               :: ii, ip, iq, it, iz, ixt
-   TYPE(isot_type), POINTER :: i
-   TYPE(trac_type), POINTER :: t(:), t1
-   CHARACTER(LEN=maxlen)    :: tnom_trac, modname, t0
-   CHARACTER(LEN=maxlen), ALLOCATABLE :: str(:)
-   LOGICAL, DIMENSION(:), ALLOCATABLE :: mask
-   REAL, ALLOCATABLE :: tnat0(:), alpha_ideal0(:)
-   INCLUDE "iniprint.h"
-
-   modname = 'infotrac_isoinit'
-   tnat0       = [ 1.0 ,  155.76e-6, 2005.2e-6, 0.004/100., 0.0 ]    !--- Same length as tnom_iso
-   alpha_ideal0= [ 1.0 ,  1.01,      1.006,     1.003,      1.0 ]    !--- Same length as tnom_iso
-   ALLOCATE(isotopes(1))                                             !--- Only water
-   nbIso = SIZE(isotopes)
-   t => tracers
-   i => isotopes(1)
-   i%parent = 'H2O'
-
-   !--- Effective isotopes names list (embedded in the "keys" field)
-   mask = t%type=='tracer' .AND. t%gen0Name==addPhase('H2O', 'g') .AND. t%iGeneration==1
-   str = PACK(delPhase(t%name), MASK=mask)
-   CALL strReduce(str)
-   i%niso = SIZE(str)
-   ALLOCATE(i%keys(i%niso))
-   i%keys(:)%name = str
-
-   !--- Check whether found isotopes are known
-   mask = [(ALL(tnom_iso /= str(ii)), ii=1, i%niso)]
-   IF(ANY(mask)) CALL abort_gcm(modname, 'The following isotopes are unknown: '//strStack(PACK(str, MASK=mask)), 1)
-
-   !--- Full isotopes list, with isotopes tagging tracers (if any) following the previous list
-   mask = t%type=='tag'    .AND. t%gen0Name==addPhase('H2O', 'g') .AND. t%iGeneration==2
-   str = PACK(delPhase(t%name), MASK=mask)
-   i%ntiso = i%niso + SIZE(str)
-   ALLOCATE(i%trac(i%ntiso))
-   i%trac(:) = [i%keys(:)%name, str]
-
-   !--- Effective tagging zones names list
-   i%zone = strTail(str, '_', .TRUE.)
-   CALL strReduce(i%zone)
-   i%nzone = SIZE(i%zone)
-   IF(i%ntiso /= i%niso*(i%nzone+1)) CALL abort_gcm(modname, 'Error in "ntiso" calculation', 1)
-
-   !--- Effective phases list
-   i%phase = ''
-   DO ip=1,nphases; IF(strIdx(t%name, addPhase('H2O', ip))/=0) i%phase=TRIM(i%phase)//known_phases(ip:ip); END DO
-   i%nphas = LEN_TRIM(i%phase)
-
-   !--- Indexes related to isotopes
-   DO iq = 1, nqtot
-      t1 => tracers(iq)
-      t0 = t1%gen0Name
-      IF(t1%iGeneration==0 .OR. .NOT.t1%isAdvected .OR. delPhase(t0)/='H2O') CYCLE
-      t1%iso_iGroup = 1
-      t1%iso_iPhase = INDEX(i%phase, getPhase(t0))
-      t1%iso_iZone = strIdx(i%zone,  strTail(t1%name, '_'))
-      IF(t1%iso_iZone /= 0) t1%iso_iName = strIdx(i%keys(:)%name, delPhase(t1%parent))
-      IF(t1%iso_iZone == 0) t1%iso_iName = strIdx(i%keys(:)%name, delPhase(t1%name  ))
-   END DO
-
-   !--- Get vectors, one value each "isotope%trac" element (and in the same order)
-   ix = strIdx(tnom_iso, i%trac)
-   iy =   PACK(ix, MASK = ix/=0)
-   tnat        = tnat0       (iy)
-   alpha_ideal = alpha_ideal0(iy)
-
-   !--- Tests
-   nb_iso  = [(COUNT(t%iso_iPhase == ip .AND. t%iGeneration == 1), ip=1, i%nphas)]
-   nb_tiso = [(COUNT(t%iso_iPhase == ip .AND. t%iGeneration == 2), ip=1, i%nphas)]
-   nb_zone = [(COUNT(t%iso_iZone  == iz), iz=1, i%nzone)]
-   IF(ANY(nb_iso (:) /= nb_iso (1))) CALL abort_gcm(modname, 'Phases must have same number of isotopes', 1)
-   IF(ANY(nb_tiso(:) /= nb_tiso(1))) CALL abort_gcm(modname, 'Phases must have same number of tagging tracers', 1)
-   IF(i%nzone >= 1) THEN
-      IF(ANY(nb_zone(:) /= nb_zone(1))) CALL abort_gcm(modname, 'Isotopes must have the same number of tagging tracers', 1)
-   END IF
-
-   !--- Isotopic checking routines activation flag
-   i%check = .FALSE.; IF(i%niso > 0) CALL getin('ok_iso_verif', i%check)
-
-   !--- Table: index in "qx(:)" of an isotope, knowing its indices "it","ip" in "isotope%iName,%iPhase"
-   i%iqIsoPha = RESHAPE([((strIdx(t%name, TRIM(addPhase(i%trac(it),ip,i%phase))),it=1,i%ntiso),ip=1,i%nphas)],[i%ntiso,i%nphas])
-
-   !--- Table: index in "isotope%tracs(:)%name" of an isotopic tagging tracer, knowing its indices "iz","ip" in "isotope%iZone,%iName"
-   i%itZonIso = RESHAPE([((strIdx(i%trac,TRIM(i%trac(it))//'_'//TRIM(i%zone(iz))),iz=1,i%nzone),it=1,i%niso )],[i%nzone,i%niso])
-
-   DO it=1,i%ntiso; CALL msg('iqIsoPha('//TRIM(int2str(it))//',:) = '//strStack(int2str(i%iqIsoPha(it,:))), modname); END DO
-   DO iz=1,i%nzone; CALL msg('itZonIso('//TRIM(int2str(iz))//',:) = '//strStack(int2str(i%itZonIso(iz,:))), modname); END DO
-
-   !--- Finalize :
-   DEALLOCATE(nb_iso)
-
-END SUBROUTINE infotrac_isoinit
 
 
Index: /LMDZ6/trunk/libf/phylmdiso/isotopes_mod.F90
===================================================================
--- /LMDZ6/trunk/libf/phylmdiso/isotopes_mod.F90	(revision 4157)
+++ /LMDZ6/trunk/libf/phylmdiso/isotopes_mod.F90	(revision 4158)
@@ -11,6 +11,4 @@
   !--- Contains all isotopic variables + their initialization
   !--- Isotopes-specific routines are in isotopes_routines_mod to avoid circular dependencies with isotopes_verif_mod.
-
-  LOGICAL, PARAMETER :: lOldCode=.FALSE.
 
    !--- Isotopes indices (in [1,niso] ; non-existing => 0 index)
@@ -165,13 +163,4 @@
    CALL msg('219: entree', modname)
 
-   !--- Memory allocations
-   IF(lOldCode) THEN
-   ALLOCATE(talph1(niso), tkcin0(niso),  talps1(niso),  tnat(niso))
-   ALLOCATE(talph2(niso), tkcin1(niso),  talps2(niso),  toce(niso))
-   ALLOCATE(talph3(niso), tkcin2(niso), tdifrel(niso), tcorr(niso))
-   ALLOCATE(alpha_liq_sol(niso),   Rdefault(niso),   Rmethox(niso))
-   END IF
-
-
    !--------------------------------------------------------------
    ! General:
@@ -231,6 +220,4 @@
       CALL get_in('lat_max_albedo', lat_max_albedo,  100.)
    END IF
-   IF(lOldCode) &
-   CALL get_in('deltaO18_oce',        deltaO18_oce,   0.0)
    deltaO18_oce=0.0
    CALL get_in('deltaP_BL',           deltaP_BL,     10.0)
@@ -306,116 +293,4 @@
    ! Parameters that depend on the nature of water isotopes:
    !--------------------------------------------------------------
-
-   !===========================================================================================================================
-   IF(lOldCode) THEN
-   !===========================================================================================================================
-
-   ! Local constants
-   fac_enrichoce18 = 0.0005            ! Then: tcorO18 = 1 + fac_enrichoce18
-                                       !       tcorD   = 1 + fac_enrichoce18*8
-                                       !       tcorO17 = 1 + fac_enrichoce18*0.528
-   alpha_liq_sol_O18 = 1.00291         ! From Lehmann & Siegenthaler, 1991, 
-                                       ! Journal of Glaciology, vol 37, p 23
-   talph1_O18 = 1137.  ; talph2_O18 = -0.4156   ; talph3_O18 = -2.0667E-3
-   talps1_O18 = 11.839 ; talps2_O18 = -0.028244 
-   tkcin0_O18 = 0.006  ; tkcin1_O18 =  0.000285 ; tkcin2_O18 =  0.00082
-   tdifrel_O18 = 1./0.9723
-
-   ! ln(alphaeq) ratio between O18 and O17
-   fac_coeff_eq17_liq = 0.529          ! From Amaelle
-  !fac_coeff_eq17_ice = 0.528          ! slope MWL 
-   fac_coeff_eq17_ice = 0.529
-
-   !--- Kinetic factor for surface evaporation:
-   ! (cf: kcin = tkcin0                  if |V|<tv0cin
-   !      kcin = tkcin1*|Vsurf| + tkcin2 if |V|>tv0cin )
-   ! (Rq: formula discontinuous for |V|=tv0cin... )        
-
-   DO ixt = 1, niso
-      sxt=int2str(ixt)
-      CALL msg('80: ixt='//TRIM(int2str(ixt)),modname)
-
-      Rdefault(ixt) = 0.0
-      IF(ixt == iso_HTO) THEN          !=== H[3]HO
-         tdifrel(ixt) = 1./0.968
-         tkcin0(ixt) = 0.01056
-         tkcin1(ixt) = 0.0005016
-         tkcin2(ixt) = 0.0014432
-         tnat  (ixt) = 0.
-         toce  (ixt) = 4.0E-19         ! Ratio T/H = 0.2 TU, Dreisigacker and Roether 1978
-        !toce  (ixt) = 2.2222E-8       ! Corrected by Alex Cauquoin
-        !toce  (ixt) = 1.0E-18         ! Ratio 3H/1H ocean
-         tcorr (ixt) = 1.
-         talph1(ixt) = 46480. ; talph2(ixt) = -103.87 ; talph3(ixt) = 0.
-         talps1(ixt) = 46480. ; talps2(ixt) = -103.87
-         alpha_liq_sol(ixt) = 1.
-         Rmethox(ixt) = 0.0
-      ELSE IF(ixt == iso_O17) THEN     !=== H2[17]O
-         tdifrel(ixt)=1./0.98555       ! Used in 1D and in LdG's model
-        !tdifrel(ixt)=1./0.985452      ! From Amaelle 
-        !fac_kcin=0.5145               ! From Amaelle
-         fac_kcin= (tdifrel(ixt)-1.0)/(tdifrel_O18-1.0)
-         tkcin0(ixt) = tkcin0_O18*fac_kcin
-         tkcin1(ixt) = tkcin1_O18*fac_kcin
-         tkcin2(ixt) = tkcin2_O18*fac_kcin
-         tnat  (ixt) = 0.004/100.      ! O17 = 0.004% of oxygen
-         pente_MWL=0.528
-         toce  (ixt) = tnat(ixt)*(1.0+deltaO18_oce/1000.0)**pente_MWL
-         tcorr (ixt) = 1.0+fac_enrichoce18*pente_MWL  ! From Amaelle            
-         talph1(ixt) = talph1_O18 ; talph2(ixt) = talph2_O18 ; talph3(ixt) = talph3_O18
-         talps1(ixt) = talps1_O18 ; talps2(ixt) = talps2_O18     
-         alpha_liq_sol(ixt) = (alpha_liq_sol_O18)**fac_coeff_eq17_liq 
-         IF(Rdefault_smow) Rdefault(ixt) = tnat(ixt)*(-3.15/1000.0+1.0)
-         Rmethox(ixt) = (230./1000.+1.)*tnat(ixt)     ! Zahn et al 2006
-      ELSE IF(ixt == iso_O18) THEN     !=== H2[18]O
-         tdifrel(ixt) = tdifrel_O18
-         tkcin0(ixt) = tkcin0_O18
-         tkcin1(ixt) = tkcin1_O18
-         tkcin2(ixt) = tkcin2_O18
-         tnat  (ixt) = 2005.2E-6
-         toce  (ixt) = tnat(ixt)*(1.0+deltaO18_oce/1000.0)
-         tcorr (ixt) = 1.0+fac_enrichoce18
-         talph1(ixt) = talph1_O18 ; talph2(ixt) = talph2_O18 ; talph3(ixt) = talph3_O18
-         talps1(ixt) = talps1_O18 ; talps2(ixt) = talps2_O18
-         alpha_liq_sol(ixt) = alpha_liq_sol_O18   
-         IF(Rdefault_smow) Rdefault(ixt) = tnat(ixt)*(-6.0/1000.0+1.0)
-         Rmethox(ixt) = (130./1000.+1.)*tnat(ixt) ! Zahn et al 2006   
-      ELSE IF(ixt == iso_HDO) THEN     !=== H[2]HO
-         tdifrel(ixt) = 1./0.9755
-        !fac_kcin=0.88
-         fac_kcin= (tdifrel(ixt)-1.0)/(tdifrel_O18-1.0)
-         tkcin0(ixt) = tkcin0_O18*fac_kcin
-         tkcin1(ixt) = tkcin1_O18*fac_kcin
-         tkcin2(ixt) = tkcin2_O18*fac_kcin
-         tnat  (ixt) = 155.76E-6
-         pente_MWL = 8.0
-         toce  (ixt) = tnat(ixt)*(1.0+pente_MWL*deltaO18_oce/1000.0)
-         tcorr (ixt) = 1.0+fac_enrichoce18*pente_MWL          
-         talph1(ixt) = 24844. ; talph2(ixt) = -76.248 ; talph3(ixt) = 52.612E-3
-         talps1(ixt) = 16288. ; talps2(ixt) = -0.0934
-        !alpha_liq_sol(ixt)=1.0192 ZX  ! From Weston, Ralph, 1955
-         alpha_liq_sol(ixt)=1.0212     ! From Lehmann & Siegenthaler, 1991, 
-                                       ! Journal of Glaciology, vol 37, p 23
-         IF(Rdefault_smow) Rdefault(ixt) = tnat(ixt)*((-6.0*pente_MWL+10.0)/1000.0+1.0)
-         Rmethox(ixt) = tnat(ixt)*(-25.0/1000.+1.) ! Zahn et al 2006
-      ELSE IF(ixt  == iso_eau) THEN    !=== H2O[16]
-         tkcin0(ixt) = 0.0
-         tkcin1(ixt) = 0.0
-         tkcin2(ixt) = 0.0
-         tnat  (ixt) = 1.
-         toce  (ixt)=tnat(ixt)
-         tcorr (ixt) = 1.0
-         tdifrel(ixt) = 1.
-         talph1(ixt) = 0. ; talph2(ixt) = 0. ; talph3(ixt) = 0.
-         talps1(ixt) = 0. ; talps2(ixt) = 0.
-         alpha_liq_sol(ixt)=1.
-         IF(Rdefault_smow) Rdefault(ixt) = tnat(ixt)*1.0
-         Rmethox(ixt) = 1.0
-      END IF
-   END DO
-   !===========================================================================================================================
-   ELSE
-   !===========================================================================================================================
-
    IF(getKey('tnat',    tnat,    isoName)) CALL abort_physic(modname, 'can''t get tnat',    1)
    IF(getKey('toce',    toce,    isoName)) CALL abort_physic(modname, 'can''t get toce',    1)
@@ -430,19 +305,8 @@
    IF(getKey('tkcin2',  tkcin2,  isoName)) CALL abort_physic(modname, 'can''t get tkcin2',  1)
    IF(getKey('tdifrel', tdifrel, isoName)) CALL abort_physic(modname, 'can''t get tdifrel', 1)
-   DO ixt = 1, niso
-      IF     (ixt == iso_HTO) THEN; tdifrel(ixt) = 1./0.968
-      ELSE IF(ixt == iso_HDO) THEN; tdifrel(ixt) = 1./0.9755
-      ELSE IF(ixt == iso_O17) THEN; tdifrel(ixt) = 1./0.98555
-      ELSE IF(ixt == iso_O18) THEN; tdifrel(ixt) = 1./0.9723
-      ELSE IF(ixt == iso_eau) THEN; tdifrel(ixt) = 1.; END IF
-   END DO
    IF(getKey('alpha_liq_sol', alpha_liq_sol, isoName)) CALL abort_physic(modname, 'can''t get alpha_liq_sol',  1)
    IF(getKey('Rdefault',Rdefault,isoName)) CALL abort_physic(modname, 'can''t get Rdefault',1)
    IF(getKey('Rmethox', Rmethox, isoName)) CALL abort_physic(modname, 'can''t get Rmethox', 1)
    IF(.NOT.Rdefault_smow) Rdefault(:) = 0.0
-
-   !===========================================================================================================================
-   END IF
-   !===========================================================================================================================
 
    !--- Sensitivity test: no kinetic effect in sfc evaporation
