Modulefpreviousupnextcontentsindex[BIG][Normal][small]
Suiv.: 1.2 La SD ATRI Sup.: 1 Description des SD par type Préc.: Introduction Index Table des matières


1.1 La SD AMAT

 

1.1.1 Contenu

Cette SD permet de stocker les coefficients non nuls d'une matrice creuse carrée ou rectangulaire de type "éléments finis". Ce type de stockage est dit morse ou compact.

La SD AMAT est composée de sept tableaux dont l'organisation est prédéfinie.

Tableau AMA0 : Informations générales.

De type entier, ce tableau possède 32 variables. Il contient une description générale du travail (titre, date, nom), de la SD AMAT (type, niveau, ...) et indique la présence ou non du tableau AMA1.

1:20 TITRE

le titre du travail en 20 mots de 4 caractères (stockés dans des entiers),

21:22 DATE

la date de création en 2 mots de 4 caractères (idem),

23:28 NOMCRE

le nom du créateur en 6 mots de 4 caractères (idem),

29 'AMAT'

le type de la SD,

30 NIVEAU

le paramètre de niveau de la SD,

31 ETAT

un paramètre réservé,

32 NTACM

le nombre de tableaux supplémentaires associés à la SD
(ils seront décrits dans le tableau AMA1).

Tableau AMA1 : Descripteur des éventuels tableaux supplémentaires.

Ce tableau est analogue au tableau B1 de la SD B (voir cette SD).

Tableau AMA2 : Description générale de la matrice.

Ce tableau de type entier contient 10 valeurs.

1 NTDL

l'ordre de la matrice,

2 NTYP

le type des coefficients de la matrice,

3 NTCOEF

le nombre de coefficients a priori non nuls de la matrice,

4 NMO56

le nombre de mots nécessaires en M.C. pour stocker les tableaux AMA5 et AMA6,

5 NPAGE

le nombre de pages de la matrice (si une mémoire secondaire est utilisée),

6 NCODSA

le type de stockage de la matrice avec :

7 ND

le nombre de degrés de liberté par noeud s'il est constant, 0 sinon,

8 NOE

le nombre de noeuds,

9 NMASMS

le nombre de matrices assemblées et stockées sur la M.S. (si 0 : AMA5 existe mais AMA6 n'existe pas),

10 NFACTO

le type de la factorisation de la matrice,
0 : aucune factorisation,
1 : factorisation complète ou non de Cholesky,
2 : factorisation complète ou non de Crout,

Tableau AMA3 : Pointeur sur la dernière ligne de chaque page.

Ce tableau, de type entier et de NPAGE + 1 mots, contient :

Tableau AMA4 : Pointeur sur le coefficient diagonal de chaque ligne.

Ce tableau, de type entier et de NTDL + 1 (ou 2) mots, contient :

Tableau AMA5 : Pointeur sur les colonnes.

Ce tableau est de type entier et contient NTCOEF mots si NCODSA 0 et 0 mots sinon :

Tableau AMA6 : Les coefficients de la matrice.

De type NTYP, ce tableau contient les NTCOEF coefficients non nuls de la matrice :

Outils associés

Ecriture et lecture d'une SD AMAT

Une SD, résidant en mémoire centrale, est écrite en M.S. sur fichier d'accès séquentiel.

Cette SD est de catégorie 2, seuls ses 6 premiers tableaux ainsi que les éventuels tableaux associés (décrits dans son tableau AMA1) sont lus (module SDLECT) ou écrits (module SDECRI) :

Impression d'une SD AMAT et dessin de sa structure creuse

Le contenu (total ou partiel) d'une SD AMAT peut être imprimé en utilisant le module IMAMAT. Le préprocesseur IMAGXX permet l'appel conversationnel de IMAMAT.

La structure de la matrice contenue dans un fichier peut être dessinée via le préprocesseur TRPRXX [RM 96].

Modules de création et de manipulation d'une SD AMAT

Le module ASMAGC construit la SD AMAT à partir d'une SD TAE par assemblage de tableaux élémentaires.

Le module AMAT2 réalise la combinaison linéaire de deux SD AMAT.

Le module AMATB réalise le produit d'une SD AMAT par des vecteurs (SD B).

Le module TAMMUA effectue la conversion d'une SD AMAT en une SD MUA, le module CSAMAT réalise l'opération inverse et élimine les 0.

Les modules de résolution utilisant une SD AMAT sont décrits dans
[RM 26].

Organisation relative à ce stockage

Suivent 4 exemples de matrice.

Exemple 1 : Matrice diagonale en M.C.

On considère la matrice d'ordre 9 suivante (les valeurs sont les rangs dans le stockage et non les coefficients de la matrice) :

Alors, on a :

Exemple 2 : Matrice symétrique tout en M.C.

On considère la matrice d'ordre 9 suivante (les valeurs sont les rangs dans le stockage et non les coefficients de la matrice) :

Alors, on a :

Les chaînages entre les tableaux AMA3, AMA4 et AMA5, donc la position des coefficients de la matrice dans le tableau AMA6 sont illustrés sur la figure 1.1.

 
Figure: Chaînages pour l'exemple 2 

Exemple 3 : Matrice symétrique en M.S.

On considère la matrice d'ordre 9 suivante (les valeurs sont les rangs dans le stockage et non les coefficients de la matrice) :

Alors, on a :

Les chaînages entre les tableaux AMA3, AMA4 et AMA5, donc la position des coefficients de la matrice dans le tableau AMA6 sont illustrés sur la figure 1.2.

 
Figure: Chaînages pour l'exemple 3 

Exemple 4 : Matrice non symétrique en M.C.

On considère la matrice d'ordre 9 suivante (les valeurs sont les rangs dans le stockage et non les coefficients de la matrice) :

Alors, on a :

Les chaînages entre les tableaux AMA3, AMA4 et AMA5, donc la position des coefficients de la matrice dans le tableau AMA6 sont illustrés sur la figure 1.3.

 
Figure: Chaînages pour l'exemple 4 


Modulefpreviousupnextcontentsindex[BIG][Normal][small]
Suiv.: 1.2 La SD ATRI Sup.: 1 Description des SD par type Préc.: Introduction Index Table des matières