Changeset 4500 for LMDZ6


Ignore:
Timestamp:
Apr 6, 2023, 3:12:16 PM (20 months ago)
Author:
Laurent Fairhead
Message:

Some modifications needed for DYNAMICO interface

Location:
LMDZ6/trunk/libf/phylmd
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/infotrac_phy.F90

    r4487 r4500  
    202202      CASE('coag'); CALL msg(TRIM(msg1)//' tracers are treated for COAGULATION tests', modname)
    203203      CASE('lmdz'); CALL msg(TRIM(msg1)//' tracers are treated in LMDZ only',          modname)
    204       CASE DEFAULT; CALL abort_gcm(modname,'type_trac='//TRIM(type_trac)//' not possible yet.',1)
     204      CASE DEFAULT; CALL abort_physic(modname,'type_trac='//TRIM(type_trac)//' not possible yet.',1)
    205205   END SELECT
    206206
     
    209209      CASE('inca', 'inco')
    210210#ifndef INCA
    211          CALL abort_gcm(modname, 'You must add cpp key INCA and compile with INCA code', 1)
     211         CALL abort_physic(modname, 'You must add cpp key INCA and compile with INCA code', 1)
    212212#endif
    213213      CASE('repr')
    214214#ifndef REPROBUS
    215          CALL abort_gcm(modname, 'You must add cpp key REPROBUS and compile with REPROBUS code', 1)
     215         CALL abort_physic(modname, 'You must add cpp key REPROBUS and compile with REPROBUS code', 1)
    216216#endif
    217217      CASE('coag')
    218218#ifndef CPP_StratAer
    219          CALL abort_gcm(modname, 'You must add cpp key StratAer and compile with StratAer code', 1)
     219         CALL abort_physic(modname, 'You must add cpp key StratAer and compile with StratAer code', 1)
    220220#endif
    221221   END SELECT
     
    234234
    235235   !=== DETERMINE THE TYPE OF THE INPUT TRACERS DESCRIPTION FILE
    236    IF(testTracersFiles(modname, texp, fType, lInit)) CALL abort_gcm(modname, 'problem with tracers file(s)',1)
     236   IF(testTracersFiles(modname, texp, fType, lInit)) CALL abort_physic(modname, 'problem with tracers file(s)',1)
     237
    237238   ttp = type_trac; IF(fType /= 1) ttp = texp
    238239
    239240!##############################################################################################################################
    240241   IF(lInit) THEN
    241       IF(readTracersFiles(ttp, type_trac == 'repr')) CALL abort_gcm(modname, 'problem with tracers file(s)',1)
     242      IF(readTracersFiles(ttp, type_trac == 'repr')) CALL abort_physic(modname, 'problem with tracers file(s)',1)
    242243   ELSE
    243244      CALL msg('No tracers description file(s) reading needed: already done in the dynamics', modname)
     
    246247
    247248   !---------------------------------------------------------------------------------------------------------------------------
    248    IF(fType == 0) CALL abort_gcm(modname, 'Missing tracers file: "traceur.def", "tracer.def" or "tracer_<keyword>.def file.',1)
     249   IF(fType == 0) CALL abort_physic(modname, 'Missing tracers file: "traceur.def", "tracer.def" or "tracer_<keyword>.def file.',1)
    249250   !---------------------------------------------------------------------------------------------------------------------------
    250251   IF(fType == 1 .AND. ANY(['inca','inco']==type_trac) .AND. lInit) THEN  !=== FOUND OLD STYLE INCA "traceur.def"
     
    255256      nbtr = nqINCA + nqCO2                                          !--- Number of tracers passed to phytrac
    256257      nqtrue = nbtr + nqo                                            !--- Total number of "true" tracers
    257       IF(ALL([2,3] /= nqo)) CALL abort_gcm(modname, 'Only 2 or 3 water phases allowed ; found nqo='//TRIM(int2str(nqo)), 1)
     258      IF(ALL([2,3] /= nqo)) CALL abort_physic(modname, 'Only 2 or 3 water phases allowed ; found nqo='//TRIM(int2str(nqo)), 1)
    258259      ALLOCATE(hadv(nqtrue), hadv_inca(nqINCA), conv_flg_inca(nqINCA), solsym_inca(nqINCA))
    259260      ALLOCATE(vadv(nqtrue), vadv_inca(nqINCA),  pbl_flg_inca(nqINCA))
     
    279280         CALL addKey('phase',     t1%phase,     t1%keys)
    280281      END DO
    281       IF(setGeneration(tracers)) CALL abort_gcm(modname,'See above',1) !- SET FIELDS %iGeneration, %gen0Name
     282      IF(setGeneration(tracers)) CALL abort_physic(modname,'See below',1) !- SET FIELDS %iGeneration, %gen0Name
    282283      DEALLOCATE(had, hadv_inca, vad, vadv_inca, conv_flg_inca, pbl_flg_inca, solsym_inca)
    283284#endif
     
    314315      IF( hadv(iq)<20 .OR. (ANY(hadv(iq)==[20,30]) .AND. hadv(iq)==vadv(iq)) ) CYCLE
    315316      WRITE(msg1,'("The choice hadv=",i0,", vadv=",i0,a)')hadv(iq),vadv(iq),' for "'//TRIM(tracers(iq)%name)//'" is not available'
    316       CALL abort_gcm(modname, TRIM(msg1), 1)
     317      CALL abort_physic(modname, TRIM(msg1), 1)
    317318   END DO
    318319   nqtot =    COUNT( hadv< 20 .AND. vadv< 20 ) &                     !--- No additional tracer
     
    340341      IF(hadv(iq)==10 .AND. vadv(iq)==16) iad = 11
    341342      WRITE(msg1,'("Bad choice of advection scheme for ",a,": hadv = ",i0,", vadv = ",i0)')TRIM(t1%name), hadv(iq), vadv(iq)
    342       IF(iad == -1) CALL abort_gcm(modname, msg1, 1)
     343      IF(iad == -1) CALL abort_physic(modname, msg1, 1)
    343344
    344345      !--- SET FIELDS %longName, %isAdvected, %isInPhysics
     
    381382   !=== READ PHYSICAL PARAMETERS FOR ISOTOPES
    382383   niso = 0; nzone = 0; nphas = nqo; ntiso = 0; isoCheck = .FALSE.
    383    IF(readIsotopesFile()) CALL abort_gcm(modname, 'Problem when reading isotopes parameters', 1)
     384   IF(readIsotopesFile()) CALL abort_physic(modname, 'Problem when reading isotopes parameters', 1)
    384385
    385386!##############################################################################################################################
     
    387388!##############################################################################################################################
    388389   !--- Convection / boundary layer activation for all tracers
    389    ALLOCATE(conv_flg(nbtr)); conv_flg(1:nbtr) = 1
    390    ALLOCATE( pbl_flg(nbtr));  pbl_flg(1:nbtr) = 1
     390   IF (.NOT.ALLOCATED(conv_flg)) ALLOCATE(conv_flg(nbtr)); conv_flg(1:nbtr) = 1
     391   IF (.NOT.ALLOCATED(pbl_flg)) ALLOCATE( pbl_flg(nbtr));  pbl_flg(1:nbtr) = 1
    391392
    392393   !--- Note: nqtottr can differ from nbtr when nmom/=0
    393394   nqtottr = nqtot - COUNT(delPhase(tracers%gen0Name) == 'H2O' .AND. tracers%component == 'lmdz')
    394395   IF(COUNT(tracers%iso_iName == 0) - COUNT(delPhase(tracers%name) == 'H2O' .AND. tracers%component == 'lmdz') /= nqtottr) &
    395       CALL abort_gcm(modname, 'pb dans le calcul de nqtottr', 1)
     396      CALL abort_physic(modname, 'pb dans le calcul de nqtottr', 1)
    396397
    397398   !=== DISPLAY THE RESULTS
     
    414415      cat([(iq, iq=1, nqtot)], t%iGeneration, t%iqParent, t%nqDescen, t%nqChildren, t%iso_iGroup,          &
    415416                  t%iso_iName, t%iso_iZone, t%iso_iPhase), nColMax=maxTableWidth, nHead=2, sub=modname))   &
    416       CALL abort_gcm(modname, "problem with the tracers table content", 1)
     417      CALL abort_physic(modname, "problem with the tracers table content", 1)
    417418   IF(niso > 0) THEN
    418419      CALL msg('Where, for isotopes family "'//TRIM(isotope%parent)//'":', modname)
  • LMDZ6/trunk/libf/phylmd/tracinca_mod.F90

    r4412 r4500  
    3030
    3131    !--- COHERENCE TEST BETWEEN "type_trac" AND "config_inca"
    32     IF(ANY(type_trac == ['inca','inco']) .AND. ALL(config_inca /= ['aero','aeNP','chem'])) CALL abort_gcm('tracinca_init', &
     32    IF(ANY(type_trac == ['inca','inco']) .AND. ALL(config_inca /= ['aero','aeNP','chem'])) CALL abort_physic('tracinca_init', &
    3333       'INCA enabled, but unknown config_inca = "'//TRIM(config_inca)//'". Please modify "run.def"', 1)
    3434
    3535    !--- PROBLEM IF "config_inca" DIFFERS FROM "none" AND INCA HAS NOT BEEN ACTIVATED
    36     IF(ALL(type_trac /= ['inca','inco'])  .AND.    config_inca /= 'none')                  CALL abort_gcm('tracinca_init', &
     36    IF(ALL(type_trac /= ['inca','inco'])  .AND.    config_inca /= 'none')                  CALL abort_physic('tracinca_init', &
    3737       'INCA disabled, but config_inca = "'//TRIM(config_inca)//'" should be "none". Please modify "run.def"', 1)
    3838
Note: See TracChangeset for help on using the changeset viewer.