Changeset 6544


Ignore:
Timestamp:
07/11/23 15:37:53 (11 months ago)
Author:
acosce
Message:

Add INCA compilation
Create a link for the executable to not modify the name to be used by configuration without Inca

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CONFIG/UNIFORM/v7/IPSLCM7/compile_ipslcm7.sh

    r6538 r6544  
    4141rad=rrtm 
    4242opt_rad="" 
     43#choose chemistry inca configuration  
     44optchimie=GES 
    4345 
    4446# orchversion tells if ORCHIDEE_2_2 or ORCHIDEE_trunk is compiled. This is used as argument and also in the suffix of the executables. 
     
    101103./compile_ipslcm7.sh -orch4 
    102104./compile_ipslcm7.sh -regular_latlon 144x142x79 -orch4 
     105 
     106 
     107Example 6: compilation of a specific chemistry for INCA (default is GES)  
     108./compile_ipslcm7.sh -chimie NMHC_AER_S  
    103109 
    104110end_help 
     
    121127        "-orch22")     orchversion="orch22"; orchcomp=orchidee2.1; shift ;; 
    122128        "-orch4")      orchversion="orch4"; orchcomp=orchideetrunk; shift ;; 
     129        "-chimie")     optchimie=$2; shift ; shift;; 
    123130        *)             echo "unknown option "$1" , exiting..." ; exit 
    124131    esac 
     
    351358 
    352359 
    353 ## 2.6 Compile LMDZ  
     360##2.6  Compile INCA  
     361    cd $modipsl/modeles/INCA 
     362 
     363    echo; echo "NOW COMPILE INCA ${optchimie}" 
     364    echo ./makeinca_fcm -chimie ${optchimie} -$optmode -xios -parallel mpi_omp -j 8 -arch ${fcm_arch}  -arch_path $arch_path $full_flag  >> $outfile 
     365    ./makeinca_fcm -chimie ${optchimie} -$optmode -xios -parallel mpi_omp  -j 8 -arch ${fcm_arch} -arch_path $arch_path  $full_flag >> $outfile 2>&1 
     366 
     367    # Test if compiling finished 
     368    if [[ $? != 0 ]] ; then 
     369        echo "THERE IS A PROBLEM IN INCA COMPILATION - STOP" 
     370        echo "ALL INFORMATION IN FILE $outfile" 
     371        exit 
     372    fi 
     373 
     374    echo "Move inca.dat modipsl/bin" 
     375    if [[ -f $modipsl/modeles/INCA/SIMULATIONS/${optchimie}/inca.dat ]] ;  then   
     376        mv $modipsl/modeles/INCA/SIMULATIONS/${optchimie}/inca.dat $modipsl/bin/inca_${optchimie}.dat ; 
     377    else 
     378        echo "THERE IS A PROBLEM IN INCA COMPILATION - STOP" 
     379        echo "ALL INFORMATION IN FILE $outfile" 
     380        exit     
     381    fi 
     382 
     383    echo "Move tracer.def to  modipsl/bin" 
     384    if [[ -f $modipsl/modeles/INCA/tracer.def ]] ;  then 
     385        mv $modipsl/modeles/INCA/tracer.def $modipsl/bin/tracer_${optchimie}.def ; 
     386    fi 
     387 
     388 
     389 
     390## 2.7 Compile LMDZ  
    354391cd $modipsl/modeles/LMDZ 
    355392# Compile LMDZ as library to couple to DYNAMICO 
     
    385422if [ $lmdzsvn -le 4185 -a $rad = "ecrad" ] ; then echo "ecrad only available for LMDZ rev starting with 4186 " ; exit ; fi 
    386423 
    387 echo ./makelmdz_fcm -p lmd -c OMCT $opt_rad -$optmode -mem -parallel $parallel -libphy -v $orchcomp -io xios -arch $fcm_arch -arch_path $arch_path -j 8 $full_lmdz    >> $outfile  
    388      ./makelmdz_fcm -p lmd -c OMCT $opt_rad -$optmode -mem -parallel $parallel -libphy -v $orchcomp -io xios -arch $fcm_arch -arch_path $arch_path -j 8 $full_lmdz    >> $outfile 2>&1 
     424echo ./makelmdz_fcm -p lmd -c OMCT $opt_rad -$optmode -mem -parallel $parallel -libphy -v $orchcomp -chimie INCA  -io xios -arch $fcm_arch -arch_path $arch_path -j 8 $full_lmdz    >> $outfile  
     425     ./makelmdz_fcm -p lmd -c OMCT $opt_rad -$optmode -mem -parallel $parallel -libphy -v $orchcomp -chimie INCA  -io xios -arch $fcm_arch -arch_path $arch_path -j 8 $full_lmdz    >> $outfile 2>&1 
    389426# Test if compiling finished 
    390427if [[ $? != 0 ]] ; then 
     
    394431 
    395432 
    396 ## 2.6 Compile DYNAMICO 
     433## 2.8 Compile DYNAMICO 
    397434cd $modipsl/modeles/DYNAMICO 
    398435echo; echo "NOW COMPILE DYNAMICO " 
     
    408445 
    409446 
    410 ## 2.7 Compile interface ICOSA_LMDZ 
     447## 2.9 Compile interface ICOSA_LMDZ 
    411448cd $modipsl/modeles/ICOSA_LMDZ 
    412449echo; echo "NOW COMPILE ICOSA_LMDZ " 
    413450echo >> $outfile ; echo " NOW COMPILE ICOSA_LMDZ"   >> $outfile  
    414451 
    415 echo ./make_icosa_lmdz -nodeps -p lmd -$optmode -parallel $parallel -with_oasis -with_orchidee -arch ${fcm_arch} -arch_path ${arch_path} -job 8 $full_dyna    >> $outfile  
    416      ./make_icosa_lmdz -nodeps -p lmd -$optmode -parallel $parallel -with_oasis -with_orchidee -arch ${fcm_arch} -arch_path ${arch_path} -job 8 $full_dyna    >> $outfile 2>&1 
     452echo ./make_icosa_lmdz -nodeps -p lmd -$optmode -parallel $parallel -with_oasis -with_orchidee -with_inca -arch ${fcm_arch} -arch_path ${arch_path} -job 8 $full_dyna    >> $outfile  
     453     ./make_icosa_lmdz -nodeps -p lmd -$optmode -parallel $parallel -with_oasis -with_orchidee -with_inca -arch ${fcm_arch} -arch_path ${arch_path} -job 8 $full_dyna    >> $outfile 2>&1 
    417454# Test if compiling finished 
    418455if [[ $? != 0 ]] ; then 
     
    422459# Move executables to modipsl/bin 
    423460if [ -f $modipsl/modeles/ICOSA_LMDZ/bin/icosa_lmdz.exe ] ; then  
    424     mv $modipsl/modeles/ICOSA_LMDZ/bin/icosa_lmdz.exe $modipsl/bin/icosa_lmdz_${orchversion}_${optmode}.exe 
     461    mv $modipsl/modeles/ICOSA_LMDZ/bin/icosa_lmdz.exe $modipsl/bin/icosa_lmdz_${orchversion}_${optmode}_${optchimie}.exe 
     462    #create link to be use by IPSLCM and LMDZOR without any change in the executable name 
     463    cd  $modipsl/bin 
     464    rm -f icosa_lmdz_${orchversion}_${optmode}.exe 
     465    ln -s icosa_lmdz_${orchversion}_${optmode}_${optchimie}.exe icosa_lmdz_${orchversion}_${optmode}.exe 
    425466else 
    426467    echo "THERE IS A PROBLEM IN ICOSA_LMDZ COMPILATION EXECUTABLE MISSING - STOP" 
     
    430471 
    431472 
    432 ## 2.8 Compile LMDZ for regular latlon configuration 
     473## 2.10 Compile LMDZ for regular latlon configuration 
    433474if [ $regular_latlon = yes ] ; then 
    434475 
     
    449490        rm -f .lock 
    450491    fi 
    451     echo ./makelmdz_fcm -d ${resol_atm} -c OMCT -p lmd $opt_rad -$optmode -mem -parallel $parallel -io xios -v $orchcomp -arch $fcm_arch -arch_path $arch_path -j 8 $full_lmdz gcm    >> $outfile  
    452          ./makelmdz_fcm -d ${resol_atm} -c OMCT -p lmd $opt_rad -$optmode -mem -parallel $parallel -io xios -v $orchcomp -arch $fcm_arch -arch_path $arch_path -j 8 $full_lmdz gcm    >> $outfile 2>&1 
     492    echo ./makelmdz_fcm -d ${resol_atm} -c OMCT -p lmd $opt_rad -$optmode -mem -parallel $parallel -chimie INCA  -io xios -v $orchcomp -arch $fcm_arch -arch_path $arch_path -j 8 $full_lmdz gcm    >> $outfile  
     493         ./makelmdz_fcm -d ${resol_atm} -c OMCT -p lmd $opt_rad -$optmode -mem -parallel $parallel -chimie INCA  -io xios -v $orchcomp -arch $fcm_arch -arch_path $arch_path -j 8 $full_lmdz gcm    >> $outfile 2>&1 
    453494    # Test if compiling finished 
    454495    if [[ $? != 0 ]] ; then 
     
    461502    if [ $lmdzsvn -ge 4186 ] ; then suffix=${suffix}_${rad} ; fi 
    462503    if [ $parallel == seq ] || [ $parallel == none ] ; then 
    463         suffix=${suffix}_seq_orch.e 
     504        suffix=${suffix}_seq_orch_inca.e 
    464505    else 
    465         suffix=${suffix}_para_mem_orch_couple.e 
     506        suffix=${suffix}_para_mem_orch_couple_inca.e 
    466507    fi 
    467508    echo gcm suffix = $suffix 
     
    470511    echo "Move gcm.e executable to modipsl/bin" 
    471512    if [ -f $modipsl/modeles/LMDZ/bin/gcm${suffix} ] ;  then 
    472         mv $modipsl/modeles/LMDZ/bin/gcm${suffix} $modipsl/bin/gcm_${resol_atm}_${orchversion}_${optmode}.e 
     513        mv $modipsl/modeles/LMDZ/bin/gcm${suffix} $modipsl/bin/gcm_${resol_atm}_${orchversion}_${optmode}_${optchimie}.e 
     514        #create link to be use by IPSLCM and LMDZOR without any change in the executable name 
     515        cd $modipsl/bin 
     516        rm -f gcm_${resol_atm}_${orchversion}_${optmode}.e 
     517        ln -s gcm_${resol_atm}_${orchversion}_${optmode}_${optchimie}.e gcm_${resol_atm}_${orchversion}_${optmode}.e 
    473518    else 
    474519        echo "ERROR gcm${suffix} executable does not exist."  
     
    478523 
    479524    # Compile ce0l initialization program for LMDZ regular lat-lon exectuable 
     525    cd $modipsl/modeles/LMDZ 
    480526    echo; echo "NOW COMPILE CE0L OF LMDZ. Resolution = ${resol_atm}" 
    481527    echo >> $outfile ; echo " NOW COMPILE CE0L OF LMDZ. Resolution = ${resol_atm}"   >> $outfile  
Note: See TracChangeset for help on using the changeset viewer.