Vargas : la bibliothèque NAG


Support technique → Calcul scalaire → Logiciels et bibliothèques → Les bibliothèques scientifiques → NAG.

NAG

1 - Description

La bibliothèque NAG (Numerical Algorithms Group) en provenance d'Oxford est constituée d'environ 1000 sous-programmes classés par chapitre :

2 - Versions installées

3 - Utilisation

Compilation et édition de liens Mode numérique Nom des sous-programmes Mode d'adressage
$ module load nag
$ xlf_r call_nag.f
I4D8 ...F 64

4 - Modules pré-compilés Fortran

La bibliothèque NAG est distribuée avec des modules Fortran précompilés (.mod). Pour utiliser ces modules dans des codes pré-existants : Exemple d'un code F77 écrit en format fixe appelant D01DAF :
      PROGRAM appel_D01DAF

* Add USE statements for relevant chapters          *
      USE NAG_F77_D_CHAPTER
      IMPLICIT NONE

*     .. Parameters ..
*     ...

*     .. External Subroutines ..
* EXTERNAL declarations need to be removed.          *
C     EXTERNAL         D01DAF

*     .. Executable Statements ..
      ...
      CALL D01DAF(YA,YB,P1,P2A,FA,ABSACC,ANS,NPTS,IFAIL)
      ...
...
END

5 - Exemple

vargas : cat nag.f

program nag integer, parameter :: nout=6 real(kind=8) x real(kind=8) g05caf integer i external g05caf external g05cbf write (nout,*) 'g05caf example program results' write (nout,*) call g05cbf(0) do i =1,5 x = g05caf(x) write (nout, '(1x,f10.4)') x end do end program nag
vargas : module load nag vargas : xlf_r -qfree nag.f

Pour chaque sous-programme de NAG, un exemple d'appel est disponible et peut être lancé à l'aide du script nag_exemple pour tester la bibliothèque. Ce script copie le source du code et ses fichiers de données dans le répertoire courant, compile et exécute le test.

$ cd $WORKDIR
$ module load nag
$ /usr/local/prod/NAG/def/scripts/nag_example e04ucf

6 - Documentations


© CNRS - IDRIS, 23/04/2012