R-INLA est un paquet en langage R qui utilise une méthodologie d'approximation de l’inférence bayésienne.
Installation¶
L'installation est un peu plus compliquée que celle pour les autres paquets R parce que d'autres exécutables précompilés doivent être téléchargés pour assurer la compatibilité avec nos environnements logiciels standards.
Les scripts ci-dessous ont été testés avec les versions qu'ils utilisent. Puisque R installe toujours la dernière version des paquets, les versions des modules devront être ajustées au besoin.
```bash tab="install_INLA_StdEnv2023.sh"
!/bin/bash¶
(1)¶
module load StdEnv/2023 gcc/12.3 r/4.4.0 geos/3.12.0 gdal/3.9.1 udunits/2.2.28 gsl/2.7 jags/4.3.2
LOGFILE=r_INLA_install_${EBVERSIONR}${CC_CLUSTER}$(date --iso=min).log
(2)¶
export R_LIBS="$HOME/R/x86_64-pc-linux-gnu-library/${EBVERSIONR:0:3}" echo "R_LIBS is $R_LIBS" mkdir -p $R_LIBS R -e 'install.packages("remotes", repos=c("https://mirror.csclub.uwaterloo.ca/CRAN/"))' R -e 'install.packages("INLA", version="25.06.07", repos=c("https://mirror.csclub.uwater Waterloo.ca/CRAN/", INLA="https://inla.r-inla-download.org/R/stable"), dep=TRUE, Ncpus=2)' \ |& tee $LOGFILE
(3)¶
R -e 'library(INLA); inla.binary.install(os="Rocky Linux-8")' |& tee -a $LOGFILE
(4)¶
chmod u+x $R_LIBS/INLA/bin/linux/64bit/{.so.,.so,first/.so} sed -i 's/(^.export LD_LIBRARY_PATH)/echo "Skipping LD_LIBRARY_PATH." #\1/g' $R_LIBS/INLA/bin/linux/64bit/.run setrpaths.sh --path $R_LIBS/INLA/bin/linux/64bit/malloc --add_path "\$ORIGIN:$EBROOTGENTOO/lib/gcc/x86_64-pc-linux-gnu/${EBVERSIONGCC::2}" setrpaths.sh --path $R_LIBS/INLA/bin/linux/64bit --add_path '$ORIGIN/first:$ORIGIN:$ORIGIN/malloc'
```bash tab="install_INLA_StdEnv2020.sh"
#!/bin/bash
# (1)
module load StdEnv/2020 gcc/9.3.0 r/4.2.1 geos/3.9.1 gdal/3.2.3 udunits/2.2.26 gsl/2.6
LOGFILE=r_INLA_install_${EBVERSIONR}_${CC_CLUSTER}_$(date --iso=sec).log
# (2)
export R_LIBS="$HOME/R/x86_64-pc-linux-gnu-library/${EBVERSIONR:0:3}"
echo "R_LIBS is $R_LIBS"
mkdir -p $R_LIBS
R -e 'install.packages("INLA", repos=c("https://cran.utstat.utoronto.ca/", INLA="https://inla.r-inla-download.org/R/stable"), dep=TRUE, Ncpus=2)' \
|& tee $LOGFILE
# (3)
R -e 'library(INLA); inla.binary.install(os="CentOS Linux-7")' |& tee -a $LOGFILE
# (4)
chmod u+x $R_LIBS/INLA/bin/linux/64bit/{*.so.*,*.so,first/*.so}
sed -i 's/\(^.*export LD_LIBRARY_PATH\)/echo "Skipping LD_LIBRARY_PATH." #\1/g' $R_LIBS/INLA/bin/linux/64bit/*.run
setrpaths.sh --path $R_LIBS/INLA/bin/linux --add_path '$ORIGIN/first:$ORIGIN'
Commentaires sur le script
- (1) Pour charger les modules requis. Il faut aussi charger les mêmes modules dans le script pour la tâche.
- (2) Pour installer le paquet R-INLA et ses dépendances.
- (3) Pour installer les exécutables précompilés requis par R-INLA.
- (4) Pour corriger les exécutables précompilés pour qu'ils soient compatibles avec nos environnements logiciels standards.