Ignore:
Timestamp:
Mar 29, 2023, 3:14:27 PM (18 months ago)
Author:
lguez
Message:

Sync latest trunk changes to branch LMDZ_ECRad

Location:
LMDZ6/branches/LMDZ_ECRad
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/LMDZ_ECRad

  • LMDZ6/branches/LMDZ_ECRad/makelmdz_fcm

    r4203 r4482  
    4545isotrac=false
    4646force_compile=false
     47cplocninca=false
    4748
    4849arch_defined="FALSE"
     
    9495[-prod / -dev / -debug]    : compilation mode production (default) / developement / debug
    9596[-c false/MPI1/OMCT]       : coupling with ocean model : MPI1/OMCT/false (default: false)
    96 [-v false/orchidee2.0/orchidee1.9/true] : version of the vegetation model to include (default: false)
     97[-v false/orchideetrunk/orchidee2.1/orchidee2.0/orchidee1.9] : version of the vegetation model to include (default: false)
    9798          false       : no vegetation model
    98           orchidee2.1 : compile using ORCHIDEE 2.1 (or more recent version)
     99          orchideetrunk : compile using ORCHIDEE trunk from revision 7757 or higher
     100          orchidee2.1 : compile using ORCHIDEE 2.1 until 4.1 included or until revision 7757 on the trunk
    99101          orchidee2.0 : compile using ORCHIDEE 2.0
    100102          orchidee1.9 : compile using ORCHIDEE up to the version including OpenMP in ORCHIDEE : tag 1.9-1.9.5(version AR5)-1.9.6
    101103          true        : (obsolete; for backward compatibility) use ORCHIDEE tag 1.9-1.9.6
    102104[-chimie INCA/false]       : with INCA chemistry model or without (default: false)
     105[-cplocninca ]        : allow transfer of species from PISCES to INCA (default: false)
    103106[-cosp true/false]    : compile with/without cosp package (default: false)
    104107[-cosp2 true/false]    : compile with/without cosp2 package (default: false)
     
    179182          chimie="$2" ; shift ; shift ;;
    180183
     184     "-cplocninca")
     185          cplocninca=TRUE ; shift ;;
     186
    181187      "-isotopes")
    182188          isotopes="$2" ; shift ; shift ;;
     
    364370then
    365371   CPP_KEY="$CPP_KEY INCA"
    366    INCLUDE="$INCLUDE -I${INCA_INCDIR}"
    367    LIB="$LIB -L${INCA_LIBDIR} -lchimie"
     372   INCLUDE="$INCLUDE ${INCA_INCDIR}"
     373   LIB="$LIB ${INCA_LIBDIR} ${INCA_LIB}"
    368374fi
    369375
     
    399405    else
    400406        CPP_KEY="$CPP_KEY CPP_COUPLE CPP_OMCT"
    401         INCLUDE="$INCLUDE -I${OASIS_INCDIR}"
    402         LIB="$LIB -L${OASIS_LIBDIR} -lpsmile.MPI1 -lscrip -lmct -lmpeu"
     407        INCLUDE="$INCLUDE ${OASIS_INCDIR}"
     408        LIB="$LIB ${OASIS_LIBDIR} -lpsmile.MPI1 -lscrip -lmct -lmpeu"
    403409    fi
    404410fi
     
    428434fi
    429435
    430 if [ "$veget" = "true" -o "$veget" = "orchidee1.9" -o "$veget" = "orchidee2.0" -o "$veget" = "orchidee2.1" ]
    431 then
     436if [ "$veget" = "true" -o "$veget" = "orchidee1.9" -o "$veget" = "orchidee2.0" -o "$veget" = "orchidee2.1" -o "$veget" = "orchideetrunk" ]
     437then
     438        echo "doing orchidee"
    432439#NB: option 'true': for backward compatibility. To be used with ORCHIDEE tag 1.9-1.9.6
    433440#    For this case, cpp flag ORCHIDEE_NOOPENMP must be added to the makelmdz_fcm arguments
    434441#    option orchidee1.9 : Compile with ORCHIDEE version up to the inclusion of OpenMP in ORCHIDEE : tag 1.9-1.9.5(version AR5)-1.9.6
    435    INCLUDE="${INCLUDE} -I${ORCH_INCDIR}"
     442   INCLUDE="${INCLUDE} ${ORCH_INCDIR}"
    436443   CPP_KEY="$CPP_KEY CPP_VEGET"
    437444# temporary, for Orchidee versions 1.9.* (before openmp activation)
     
    440447   fi
    441448   if [[ "$veget" == "orchidee2.0" ]] ; then
    442       orch_libs="sechiba parameters stomate parallel orglob orchidee"
     449      orch_libs="-lsechiba -lparameters -lstomate -lparallel -lorglob -lorchidee"
    443450      CPP_KEY="$CPP_KEY ORCHIDEE_NOUNSTRUCT"
    444451   elif [[ "$veget" == "orchidee2.1" ]] ; then
    445       orch_libs="sechiba parameters stomate parallel orglob orchidee"
     452      CPP_KEY="$CPP_KEY ORCHIDEE_NOLIC"
     453      orch_libs="-lsechiba -lparameters -lstomate -lparallel -lorglob -lorchidee"
     454   elif [[ "$veget" == "orchideetrunk" ]] ; then
     455      orch_libs="-lorchidee"
    446456   else
    447       orch_libs="sechiba parameters stomate parallel orglob"
     457      orch_libs="-lsechiba -lparameters -lstomate -lparallel -lorglob"
    448458   fi
    449    LIB="${LIB} -L${ORCH_LIBDIR}"
    450    for lib in ${orch_libs} ; do
    451       if [ -f ${ORCH_LIBDIR}/lib${LIBPREFIX}$lib.a ] ; then
    452          LIB="${LIB} -l${LIBPREFIX}$lib "
    453       fi
    454    done
     459   LIB="${LIB} ${ORCH_LIBDIR} ${orch_libs}"
     460#   for lib in ${orch_libs} ; do
     461#      if [ -f ${ORCH_LIBDIR#-L}/lib${LIBPREFIX}$lib.a ] ; then
     462#         LIB="${LIB} -l${LIBPREFIX}$lib "
     463#      fi
     464#   done
     465   echo "orchidee lib"
     466   echo ${LIB}
    455467elif [[ "$veget" != "false" ]] ; then
    456468   echo "Option -v $veget does not exist"
     
    495507then
    496508   CPP_KEY="$CPP_KEY CPP_IOIPSL"
    497    INCLUDE="$INCLUDE -I${IOIPSL_INCDIR}"
    498    LIB="$LIB -L${IOIPSL_LIBDIR} -l${LIBPREFIX}ioipsl"
     509   INCLUDE="$INCLUDE ${IOIPSL_INCDIR}"
     510   LIB="$LIB ${IOIPSL_LIBDIR} ${IOIPSL_LIB}"
    499511elif [[ $io == mix ]]
    500512then
    501513   # For now, xios implies also using ioipsl
    502514   CPP_KEY="$CPP_KEY CPP_IOIPSL CPP_XIOS"
    503    INCLUDE="$INCLUDE -I${IOIPSL_INCDIR} -I${XIOS_INCDIR}"
    504    LIB="$LIB -L${IOIPSL_LIBDIR} -l${LIBPREFIX}ioipsl -L${XIOS_LIBDIR} -l${LIBPREFIX}stdc++ -l${LIBPREFIX}xios -l${LIBPREFIX}stdc++"
     515   INCLUDE="$INCLUDE ${IOIPSL_INCDIR} ${XIOS_INCDIR}"
     516   LIB="$LIB ${IOIPSL_LIBDIR} ${IOIPSL_LIB} ${XIOS_LIBDIR} ${XIOS_LIB}"
    505517elif [[ $io == xios ]]
    506518then
    507519   # For now, xios implies also using ioipsl
    508520   CPP_KEY="$CPP_KEY CPP_IOIPSL CPP_XIOS CPP_IOIPSL_NO_OUTPUT"
    509    INCLUDE="$INCLUDE -I${IOIPSL_INCDIR} -I${XIOS_INCDIR}"
    510    LIB="$LIB -L${IOIPSL_LIBDIR} -l${LIBPREFIX}ioipsl -L${XIOS_LIBDIR} -l${LIBPREFIX}stdc++ -l${LIBPREFIX}xios -l${LIBPREFIX}stdc++"
     521   INCLUDE="$INCLUDE ${IOIPSL_INCDIR} ${XIOS_INCDIR}"
     522   LIB="$LIB ${IOIPSL_LIBDIR} ${IOIPSL_LIB} ${XIOS_LIBDIR} ${XIOS_LIB}"
    511523fi
    512524
     
    532544fi
    533545
     546if [[ "$cplocninca" == "TRUE" ]]
     547then
     548    CPP_KEY="${CPP_KEY} CPP_CPLOCNINCA"
     549fi
    534550
    535551
    536552INCLUDE="$INCLUDE ${NETCDF_INCDIR}"
    537 LIB="$LIB ${NETCDF_LIBDIR}"
     553LIB="$LIB ${NETCDF_LIBDIR} ${NETCDF_LIB}"
    538554
    539555########################################################################
     
    598614then
    599615  CPP_KEY="$CPP_KEY CPP_1D"
    600 ##in 1D, add dyn3d to include path (because main prog is in physics)
    601   INCLUDE="$INCLUDE -Ilibf/dyn3d -Ilibf/dyn3d_common"
    602616## no filtre in 1d:
    603617  FILTRE_PATH=$LMDGCM/.void_dir
Note: See TracChangeset for help on using the changeset viewer.