Ignore:
Timestamp:
Dec 23, 2021, 6:54:17 PM (2 years ago)
Author:
dcugnet
Message:

Second commit for new tracers.

  • include most of the keys in the tracers descriptor vector "tracers(:)".
  • fix in phylmdiso/cv3_routines: fq_* variables were used where their fxt_* counterparts were expected.
  • multiple IF(nqdesc(iq)>0) and IF(nqfils(iq)>0) tests suppressed, because they are not needed: "do ... enddo" loops with 0 upper bound are not executed.
  • remove French accents from comments (encoding problem) in phylmdiso/cv3_routines and phylmdiso/cv30_routines.
  • modifications in "isotopes_verif_mod", where the call to function "iso_verif_tag17_q_deltad_chn" in "iso_verif_tag17_q_deltad_chn" was not detected at linking stage, although defined in the same module (?).
File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/dyn3dmem/dynetat0_loc.F90

    r4046 r4050  
    77!-------------------------------------------------------------------------------
    88  USE parallel_lmdz
    9   USE infotrac
     9  USE infotrac,    ONLY: nqtot, tracers, iqiso, iso_indnum, tnat, alpha_ideal, ok_isotopes, maxlen
    1010  USE netcdf, ONLY: NF90_OPEN,  NF90_INQUIRE_DIMENSION, NF90_INQ_VARID,        &
    1111      NF90_NOWRITE, NF90_CLOSE, NF90_INQUIRE_VARIABLE,  NF90_GET_VAR, NF90_NoErr
    1212  USE control_mod, ONLY: planet_type
    13   USE strings_mod, ONLY: maxlen
    1413  USE assert_eq_m, ONLY: assert_eq
    1514  USE comvert_mod, ONLY: pa,preff
     
    4241  CHARACTER(LEN=maxlen) :: msg, var, modname
    4342  INTEGER, PARAMETER :: length=100
    44   INTEGER :: iq, fID, vID, idecal, ierr
     43  INTEGER :: iq, fID, vID, idecal, ierr, iqParent, iName, iZone, iPhase
    4544  REAL    :: time, tab_cntrl(length)               !--- RUN PARAMS TABLE
    4645  REAL,             ALLOCATABLE :: vcov_glo(:,:),masse_glo(:,:),   ps_glo(:)
     
    174173   !--- CRisi: for isotops, theoretical initialization using very simplified
    175174   !           Rayleigh distillation las.
    176     IF(ok_isotopes.AND.iso_num(iq)>0) THEN
    177       IF(zone_num(iq)==0) q(:,:,iq)=q(:,:,iqpere(iq))*tnat(iso_num(iq))        &
    178      &           *(q(:,:,iqpere(iq))/30.e-3)**(alpha_ideal(iso_num(iq))-1)
    179       IF(zone_num(iq)==1) q(:,:,iq)=q(:,:,iqiso(iso_indnum(iq),phase_num(iq)))
     175    iName = tracers(iq)%iso_iName
     176    iZone = tracers(iq)%iso_iZone
     177    iPhase= tracers(iq)%iso_iPhase
     178    iqParent = tracers(iq)%iqParent
     179    IF(ok_isotopes .AND. iName>0) THEN
     180      IF(iZone==0) q(:,:,iq) = q(:,:,iqParent)*tnat(iName)    &
     181     &           *(q(:,:,iqParent)/30.e-3)**(alpha_ideal(iName)-1.)
     182      IF(iZone==1) q(:,:,iq) = q(:,:,iqiso(iso_indnum(iq),iPhase))
    180183    END IF
    181184  END DO
Note: See TracChangeset for help on using the changeset viewer.