1. Préambule et prérequis
La librairie SPHEREPACK
est une librairie (Fortran) permettant de réaliser
des calculs sur la sphere (cas fréquent en géphysique)
par méthode spectrale. Cette librairie fourni en particulier
tous les opérateurs usuels (gradient, divergence, laplacien,...)
utile pour la résolution d'équations différentielles
sur la sphère.
2. Télécharger la librairie SPHEREPACK
On peut récupérer la librairie SPHEREPACK sur le page du
CISL
du NCAR qui lui est consacré. A ce jour (octobre 2012)
il s'agit de la version 3.2;
il suffit de cliquer sur l'onglet "Download" et cocher la case "I accept", puis
cliquer sur le bouton "submit", pour obtenir l'archive "spherepack3.2.tar"
(penser également à passer par l'onglet "Documentation" pour
récuper un manuel (in english, of course).
3. Procédure d'installation
Une fois le fichier spherepack3.2.tar récupéré,
extraire son
contenu dans un répertoire approprié (par exemple,
et pour la suite "/chemin/vers/librairies"):
tar xvf spherepack3.2.tar
Tout est dans le répertoire "spherepack3.2" ainsi
généré. Ce dernier continent deux fichiers,
"Makefile" et "make.inc" ainsi que les répertoires
"doc", lib", "objs", "output", "src" et "test".
Pour pouvoir compiler la librairie, il faut adapter le fichier "make.inc"
(qui contient les instructions pour le "Makefile"), ou plus précisement
en cré un (celui qui est fourni est sensé géré
beaucoup de cas possibles).
Un fichier "make.inc" adapté est:
LIB=../lib/libspherepack.a
F90 := gfortran -O2 -Wall -I../lib -J../lib
CPP := gfortran -cpp
MAKE := make
AR := /usr/bin/ar
On peut éventuelement modifier (LIB) le chemin ou sera mise la
librairie et/ou les options de compilations (on peut notament
ajouter l'option "-fdefault-real-8" pour compiler la librairie en
double précision).
On peut alors lancer la compilation, via le makefile:
make all > make_all.log 2>&1
(la redirection des sorties et erreurs "> make_all.log 2>&1" n'est qu'une
préférence personnelle; je préfère conserver
des traces).
A noter que certains programmes tests sont alors compilés; et
exécutés et qu'il est une bonne idée d'aller voir si
tout s'est bien passé (voir au choix dans les en-têtes des
programmes pour savoir à quelles valeurs ces derniers devraient aboutir,
ou sinon dans les fichiers du répertoire "output").