





![[BIG]](../icons/zoom18.gif)
![[Normal]](../icons/zoom14.gif)
![[small]](../icons/zoom10.gif)
 Suiv.:  1.3 Les algorithmes
Sup.:   Liste des méthodes directes
 Préc.:  1.1 Introduction
Index
Table des matières
Cette partie est  une présentation des différents modules
 actuellement disponibles dans le code, avec le cadre de leur utilisation
 et leurs paramètres. Des exemples concrets de calcul sont rassemblés au chapitre 6.
 
 
  But : assemble les seconds membres élémentaires
(efforts, pressions, contraintes, flux, ...) par paquets,
 pour utiliser au mieux les
possibilités de parallélisation ou de vectorisation de l'ordinateur.  
 Utilisation :
-  dimensionner le tableau M (dans le common blanc),
-  appeler INITI,                                  
-  créer la structure de données d'entrée TAE (et éventuellement NDL1).
 Appel du module :
       CALL ASEMBV(M,NOT,NDSM,NCODSB,NFTAE,NITAE,
     +            NFNDL1,NINDL1,NFB,NIB,NTB)
 avec
 
-  M : le super-tableau
-  NOT : le numéro du tableau à assembler parmi les tableaux élémentaires
de la structure TAE
-  NDSM : le nombre de seconds membres
-  NCODSB : le code de stockage de la structure de données de sortie B 
(toujours non symétrique, soit NCODSB = -1)
-  NFTAE : le numéro du fichier support de la SDE TAE
-  NITAE : son numéro de niveau
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFB : le numéro du fichier support de la SDS B
-  NIB : son numéro de niveau
-  NTB : le nombre de tableaux associés à la SDS B (à fournir en données si NTB > 0)
  But : assemble les matrices élémentaires symétriques ou
non, sous la forme d'une matrice A profil   (matrice de raideur, matrice de
masse, ...) avec mémoire secondaire.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI                                   
-  créer la structure de données d'entrée TAE (et éventuellement NDL1)
-  exécuter le module PREPAC qui initialise la structure MUA, et crée le pointeur MUA4
 Appel du module :
       CALL ASMAPS(M,NOT,NFTAE,NITAE,NFNDL1,NINDL1,
     +            NFMUAE,NIMUAE,NFMUAS,NIMUAS)
 avec
 
-  M : le super-tableau
-  NOT : le numéro du tableau à assembler parmi les tableaux élémentaires
de la structure TAE
-  NFTAE : le numéro du fichier support de la SDE TAE (toujours > 0)
-  NITAE : son numéro de niveau
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUAE : le numéro du fichier support de la SDE MUA, 
    fichier en accès direct (toujours < 0)
-  NIMUAE : son numéro de niveau
-  NFMUAS : le numéro du fichier support de la SDS MUA, 
    fichier en accès direct (toujours < 0)
-  NIMUAS : son numéro de niveau. La SDS peut être identique à la SDE (NIMUAS = NIMUAE)
 ou distincte (NIMUAS  NIMUAE) NIMUAE)
  But : assemble les seconds membres élémentaires
(efforts, pressions, contraintes, flux, ...) en mémoire secondaire.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer la structure de données d'entrée TAE (et éventuellement NDL1)
 Appel du module :
       
      CALL ASMBMS(M,NOT,NDSM,NCODSB,NFTAE,NITAE,
     +            NFNDL1,NINDL1,NFB,NIB,NTB)
 avec
 
-  M : le super-tableau
-  NOT : le numéro du tableau à assembler parmi les tableaux élémentaires
de la structure TAE
-  NDSM : le nombre de seconds membres
-  NCODSB : le code de stockage de la structure de données de sortie B 
(toujours non symétrique, soit NCODSB = -1)
-  NFTAE : le numéro du fichier support de la SDE TAE
-  NITAE : son numéro de niveau
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFB : le numéro du fichier support de la SDS B,
    fichier en accès direct (toujours < 0)
-  NIB : son numéro de niveau
-  NTB : le nombre de tableaux associés à la SDS B 
 (à fournir en données si NTB > 0)
  But : assemble les matrices élémentaires par paquets,
 sous la forme d'une matrice A profil   (matrice de raideur, matrice de
masse, ...) pour utiliser au mieux les
possibilités de parallélisation ou de vectorisation de l'ordinateur. 
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer la structure de données d'entrée TAE (et éventuellement NDL1)
-  exécuter le module PREPAC qui initialise la structure MUA, et crée le pointeur MUA4
 Appel du module :
       CALL ASSMUA(M,NOT,NFTAE,NITAE,NFNDL1,NINDL1,
     +            NFMUAE,NIMUAE,NFMUAS,NIMUAS)
 avec
 
-  M : le super-tableau
-  NOT : le numéro du tableau à assembler parmi les tableaux élémentaires
de la structure TAE
-  NFTAE : le numéro du fichier support de la SDE TAE
-  NITAE : son numéro de niveau
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUAE : le numéro du fichier support de la SDE MUA (incomplète)
-  NIMUAE : son numéro de niveau
-  NFMUAS : le numéro du fichier support de la SDS MUA
-  NIMUAS : son numéro de niveau . La SDS peut être identique à la SDE (NIMUAS = NIMUAE)
 ou distincte (NIMUAS  NIMUAE) NIMUAE)
 But : effectue la factorisation  de
Cholesky, en  mémoire centrale, d'une matrice  A symétrique définie
positive  , déjà assemblée dans la structure MUA.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer la structure de données d'entrée MUA (et éventuellement NDL1)
-  exécuter le module PREPAC, puis le module ASSMUA qui créent la structure de données
d'entrée MUA, et éventuellement le module CLIMPC pour la prise en compte des
conditions aux limites
 Appel du module :
   
      CALL CHOLPC(M,EPS,NENTRE,NFNDL1,NINDL1,
     +            NFMUAE,NIMUAE,NFMUAS,NIMUAS,NRETOU)
 avec
 
-  M : le super-tableau
-  EPS : la valeur minimale acceptée pour un pivot  suivant le critère suivant le critère  
-  NENTRE : si NENTRE = 0 le module retourne au programme appelant
dès qu'un pivot est inférieur à EPS, ou continue les calculs si NENTRE = 1
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUAE : le numéro du fichier support de la SDE MUA
-  NIMUAE : son numéro de niveau
-  NFMUAS : le numéro du fichier support de la SDS MUA
-  NIMUAS : son numéro de niveau (la SDS peut être distincte de la SDE ;
 par exemple  si on veut
assembler de manière indépendante plusieurs tableaux élémentaires de la structure TAE).
-  NRETOU : paramètre de sortie : NRETOU = 1 si au moins un pivot a été jugé trop petit,
 NRETOU = 0 sinon
  But : effectue la factorisation de
Cholesky, avec  mémoire secondaire en accès direct , d'une matrice  A symétrique définie
positive  , déjà assemblée dans la structure MUA.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer la structure de données d'entrée MUA (et éventuellement NDL1)
-  exécuter le module PREPAC, puis le module ASMAPS qui créent la structure 
de données d'entrée MUA, et éventuellement le module CLIMPS pour la prise en compte des
conditions aux limites
 Appel du module :
   
      CALL CHOLPS(M,EPS,NENTRE,NFNDL1,NINDL1,
     +            NFMUAE,NIMUAE,NFMUAS,NIMUAS,NRETOU)
 avec
 
-  M : le super-tableau
-  EPS : la valeur minimale acceptée pour un pivot  suivant le critère suivant le critère  
-  NENTRE : si NENTRE = 0 le module retourne au programme appelant
dès qu'un pivot est inférieur à EPS, ou continue les calculs si NENTRE = 1
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUAE : le numéro du fichier support de la SDE MUA,
    fichier en accès direct (toujours < 0)
-  NIMUAE : son numéro de niveau
-  NFMUAS : le numéro du fichier support de la SDS MUA,
    fichier en accès direct (toujours < 0)
-  NIMUAS : son numéro de niveau . La SDS peut être identique à la SDE (NIMUAS = NIMUAE)
 ou distincte (NIMUAS  NIMUAE) NIMUAE)  Attention : si NFMUAE et NFMUAS sont distincts, les nombres de mots de leurs pages doivent 
être égaux !
 
-  NRETOU : paramètre de sortie : NRETOU = 1 si au moins un pivot a été jugé trop petit,
 NRETOU = 0 sinon
  But : prend en compte les conditions aux
limites   de type valeur imposée, ou relation linéaire.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer les structures de données d'entrée MUA et B (et éventuellement NDL1)
(exécuter le module PREPAC, puis les modules ASSMUA et ASEMBV, qui créent les
structures MUA et B)
 Appel du module :
   
      CALL CLIMPC(M,NIVO,VTG,NFNDL1,NINDL1,
     +            NFMUAE,NIMUAE,NFBE,NIBE,NFBDCL,NIBDCL,
     +            NFMUAS,NIMUAS,NFBS,NIBS)
 avec
 
-  M : le super-tableau
-  NIVO : le type de conditions aux limites imposées :  
      -   si NIVO = 0, les conditions aux limites
        portent sur la matrice A uniquement, et sont de la forme  = VTG = VTG
-  si NIVO = 1, les conditions aux limites
       portent uniquement sur le second membre, et sont de la forme
        = VTG = VTG V. V.
-   si NIVO = 2, les conditions aux limites
    portent sur A et B, et sont de la forme   = = VTG 
    et VTG 
    et VTG VTG V V
-  si NIVO = 3, les conditions aux limites                       
    portent sur A et B, et sont effectuées suivant 
     = VTG et = VTG et =VTG =VTG V pour tout degré 
    de liberté i bloqué, puis pour tout V pour tout degré 
    de liberté i bloqué, puis pour tout tel que tel que 0, 0, V et enfin V et enfin = 0 = 0
-  si NIVO = 4, les conditions aux limites                       
    portent sur A seulement, et sont de la forme  = VTG = VTG
 
-  VTG : valeur de multiplication des coefficients diagonaux des degrés de liberté bloqués
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUAE : le numéro du fichier support de la SDE MUA
-  NIMUAE : son numéro de niveau
-  NFBDCL : le numéro du fichier support de la SDE BDCL
-  NIBDCL : son numéro de niveau
-  NFBE : le numéro du fichier support de la SDE B
-  NIBE : son numéro de niveau
-  NFMUAS : le numéro du fichier support de la SDS MUA
-  NIMUAS : son numéro de niveau (la SDS peut être distincte de la SDE)
  But : prend en compte les conditions aux
limites   de type valeur imposée, ou relation linéaire. 
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer les structures de données d'entrée MUA et B (et éventuellement NDL1)
(exécuter le module PREPAC, puis les modules ASMAPS et ASMBMS, qui créent les
structures MUA et B)
 Appel du module :
   
      CALL CLIMPS(M,NIVO,VTG,NFNDL1,NINDL1,
     +            NFMUAE,NIMUAE,NFBE,NIBE,NFBDCL,NIBDCL,
     +            NFMUAS,NIMUAS,NFBS,NIBS)
 avec
 
-  M : le super-tableau
-  NIVO : le type de conditions aux limites imposées :
-   si NIVO = 0, les conditions aux limites
    portent sur la matrice A uniquement, et sont de la forme  = VTG = VTG
-  si NIVO = 1, les conditions aux limites
    portent uniquement sur le second membre, et sont de la forme  V. V.
-   si NIVO = 2, les conditions aux limites
    portent sur A et B, et sont de la forme   VTG 
    et VTG 
    et VTG VTG V V
-  si NIVO = 3, les conditions aux limites                       
    portent sur A et B, et sont effectuées suivant  =VTG =VTG V pour tout degré 
    de liberté i bloqué, puis pour tout k V pour tout degré 
    de liberté i bloqué, puis pour tout k i tel que i tel que  0, 0, V et enfin V et enfin = 0 = 0
-  si NIVO = 4, les conditions aux limites                       
    portent sur A seulement, et sont de la forme  =VTG =VTG
 
-  VTG : valeur de multiplication des coefficients diagonaux des degrés de liberté bloqués
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUAE : le numéro du fichier support de la SDE MUA (toujours < 0)
-  NIMUAE : son numéro de niveau
-  NFBDCL : le numéro du fichier support de la SDE BDCL
-  NIBDCL : son numéro de niveau
-  NFBE : le numéro du fichier support de la SDE B (toujours < 0)
-  NIBE : son numéro de niveau
-  NFMUAS : le numéro du fichier support de la SDS MUA (toujours < 0)
-  NIMUAS : son numéro de niveau (la SDS peut être distincte de la SDE)
  Attention : si NFMUAE et NFMUAS (resp. NFBE et NFBS) sont distincts, 
les nombres de mots de leurs pages doivent  être égaux !
 
  But : construit la SD NDL1 à partir de la SD MAIL. Les algorithmes décrits
dans ce guide font appel à la fonction NDL  , qui affecte à NDL(I+1)
 le numéro du dernier degrés de liberté associé au noeud I (avec la convention NDL(1)=0). 
Pour initialiser cette fonction, le module fait un appel à la fonction LRNDL1, et ensuite
-  si le nombre de degré de liberté en chaque noeud ND est constant, 
    NDL(I+1) = I * ND
   
-  sinon NDL(I+1), le numéro du dernier degré de liberté associé au 
    noeud I, est lu dans la S.D NDL1
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
 Appel du module :
   
      CALL CONDL1(M,NNSEG,NFMAIL,NIMAIL,NFNDL1,NINDL1,LNOET,
     +            NNOMAX,ND,NDLMAX)
 avec
 
-  M : le super-tableau
-  NNSEG : le nombre de noeuds par segment de NDL1 (Si il est initialisé à une très 
grande valeur, en sortie il vaut le nombre de noeuds + 1)
-  NFMAIL : le numéro du fichier support de la SDE MAIL
-  NIMAIL : son numéro de niveau
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
 le module donne en sortie :
 
-  LNOET : le nombre total de noeuds des types d'élément
-  NNOMAX : le nombre maximum de noeuds parmi tous les types d'éléments
-  ND : le nombre de degré de liberté en chaque noeud, s'il est constant (0 sinon)
-  NDLMAX : le nombre maximal de degrés de liberté en un noeud
 But : effectue la factorisation   de Crout, en
mémoire centrale, d'une matrice  A symétrique  , déjà
assemblée dans la structure MUA.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer la structure de données d'entrée MUA (et éventuellement NDL1)
(exécuter le module PREPAC, puis le module ASSMUA qui créent la structure de données
d'entrée MUA)
 Appel du module :
   
      CALL CROUPC(M,EPS,NENTRE,NFNDL1,NINDL1,NFMUAE,
     +            NIMUAE,NFMUAS,NIMUAS,NRETOU)
 avec
 
-  M : le super-tableau
-  EPS :  la valeur minimale acceptée pour un pivot la valeur minimale acceptée pour un pivot suivant le critère suivant le critère  
-  NENTRE : si NENTRE = 0 le module retourne au programme appelant
dès qu'un pivot est inférieur en valeur absolue à EPS, ou continue les calculs si NENTRE = 1
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUAE : le numéro du fichier support de la SDE MUA
-  NIMUAE : son numéro de niveau
-  NFMUAS : le numéro du fichier support de la SDS MUA
-  NIMUAS : son numéro de niveau (la SDS peut être distincte de la SDE, ou confondue).
-  NRETOU : paramètre de sortie : NRETOU = 1 si au moins un pivot a été jugé trop petit,
 NRETOU = 0 sinon
 But : effectue la résolution du système
linéaire en mémoire centrale , après factorisation de Cholesky. La
matrice  L triangulaire inférieure est déjà stockée dans la
structure MUA.      
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer les structures de données d'entrée MUA et B (et éventuellement NDL1)
-  exécuter le module CHOLPC, qui effectue la factorisation de Cholesky de la matrice A :
A = L    Appel du module :
   
      CALL DRCHPC(M,NIVEAU,NCLRL,NFNDL1,NINDL1,
     +            NFMUA,NIMUA,NFBE,NIBE,
     +            NFBDCL,NIBDCL,NFBS,NIBS)
 avec
 
-  M : le super-tableau
-  NIVEAU : le type de résolution choisie :
-   si NIVEAU = 0, seule la remontée  x = B est effectuée x = B est effectuée
-   si NIVEAU = 1, seule la descente  x = B est effectuée x = B est effectuée
-   si NIVEAU > 1, la résolution complète L  x = B est effectuée x = B est effectuée
 
-  NCLRL : nombre de conditions aux limites en relation linéaire
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUA : le numéro du fichier support de la SDE MUA
-  NIMUA : son numéro de niveau
-  NFBDCL : le numéro du fichier support de la SDE BDCL
-  NIBDCL : son numéro de niveau
-  NFBE : le numéro du fichier support de la SDE B (contient le second membre)
-  NIBE : son numéro de niveau
-  NFBS : le numéro du fichier support de la SDS B (contient la solution)
-  NIBS : son numéro de niveau.
  Attention : si  NIBS = NIBE, la solution écrase le second membre !
 
 But : effectue la résolution du système
linéaire en mémoire centrale , après factorisation de Crout. La
matrice triangulaire inférieure  L et la diagonale D sont déjà
stockées dans la structure MUA.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer les structures de données d'entrée MUA et B (et éventuellement NDL1)
-  exécuter le module CROUPC, qui effectue la factorisation de Crout de la matrice A :
A = L  D D   Appel du module :
   
      CALL DRCRPC(M,NIVEAU,NCLRL,NFNDL1,NINDL1,
     +            NFMUA,NIMUA,NFBE,NIBE,
     +            NFBDCL,NIBDCL,NFBS,NIBS)
 avec
 
-  M : le super-tableau
-  NIVEAU : le type de résolution choisie :
-   si NIVEAU = 0, seule la remontée  x = B est effectuée x = B est effectuée
-   si NIVEAU = 1, seule la descente  x = B est effectuée x = B est effectuée
-   si NIVEAU = 2, la descente L  D D x = B est effectuée x = B est effectuée
-   si NIVEAU = 3, la résolution complète L  D D x = B 
   est effectuée x = B 
   est effectuée
-   si NIVEAU = 4, la remontée D  x = B est effectuée x = B est effectuée
 
-  NCLRL : nombre de conditions aux limites en relation linéaire
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUA : le numéro du fichier support de la SDE MUA
-  NIMUA : son numéro de niveau
-  NFBDCL : le numéro du fichier support de la SDE BDCL
-  NIBDCL : son numéro de niveau
-  NFBE : le numéro du fichier support de la SDE B (contient le second membre)
-  NIBE : son numéro de niveau
-  NFBS : le numéro du fichier support de la SDS B (contient la solution)
-  NIBS : son numéro de niveau                                             
  Attention : si  NIBE = NIBS, la solution écrase le second membre !
 
  But : effectue la résolution du système
linéaire en mémoire centrale , après factorisation   de Gauss. La
matrice  triangulaire inférieure L  et la matrice  triangulaire supérieure
U sont déjà stockées dans la structure MUA.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer les structures de données d'entrée MUA et B (et éventuellement NDL1)
-  exécuter le module GAUSPC, qui effectue la factorisation de Gauss de la matrice A :
A = L * U
 Appel du module :
   
      CALL DRGAPC(M,NIVEAU,NCLRL,NFNDL1,NINDL1,
     +            NFMUA,NIMUA,NFBE,NIBE,
     +            NFBDCL,NIBDCL,NFBS,NIBS)
 avec
 
-  M : le super-tableau
-  NIVEAU : le type de résolution choisie :
-   si NIVEAU = 0, seule la remontée U  x = B est effectuée x = B est effectuée
-   si NIVEAU = 1, seule la descente L  x = B est effectuée x = B est effectuée
-   si NIVEAU = 2,  la résolution complète L  U U x = B 
   est effectuée x = B 
   est effectuée
 
-  NCLRL : nombre de conditions aux limites en relation linéaire
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUA : le numéro du fichier support de la SDE MUA
-  NIMUA : son numéro de niveau
-  NFBDCL : le numéro du fichier support de la SDE BDCL
-  NIBDCL : son numéro de niveau
-  NFBE : le numéro du fichier support de la SDE B (contient le second membre)
-  NIBE : son numéro de niveau
-  NFBS : le numéro du fichier support de la SDS B (contient la solution)
-  NIBS : son numéro de niveau           
  Attention : si  NIBS = NIBE, la solution écrase le second membre !
 
  But : effectue l'assemblage du système linéaire, 
la prise en compte des conditions aux limites, et la résolution en
mémoire centrale par la méthode frontale.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer le fichier NFFRON à l'aide du module PREPAF
 Appel du module :
   
      CALL FRONT(M,NFFRON,NFTAEM,NITAEM,NFTAES,NITAES,
     +           NFGAUS,NFBDCL,NIBDCL,NFB,NIB,NTB,
     +           NFNDL1,NINDL1,NTYPFR,LF,
     +           NOT1,NOT2,NDSM,EPS,VTG)
 avec
 
-  M : le super-tableau
-  NFFRON : le numéro du fichier support des données de la méthode frontale 
(créé par le module PREPAF, toujours >0)
-  NFTAEM : le numéro du fichier support de la structure TAE des matrices élémentaires
-  NITAEM : son numéro de niveau
-  NFTAES : le numéro du fichier support de la structure TAE des seconds membres élémentaires
 (peut être égal à NFTAEM)
-  NITAES : son numéro de niveau
 (peut être égal à NITAEM)
-  NFGAUS : le numéro du fichier support des résultats de la méthode frontale 
(créé par le module FRONT)
-  NFBDCL : le numéro du fichier support de la SDE BDCL
-  NIBDCL : son numéro de niveau
-  NFB : le numéro du fichier support de la SDE B (contient le second membre)
-  NIB : son numéro de niveau
-  NTB : le nombre de tableaux associés
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NTYPFR : le nombre de type de fronts 
-  LF : tableau entier de longueur NTYPFR, (créé par PREPAF)
-  NOT1 : le numéro du tableau matrice élémentaire de la structure TAE
-  NOT2 : le numéro du tableau second membre élémentaire de la structure TAE
-  NDSM : le nombre de seconds membres
-  EPS  :  la valeur minimale admise pour un élément de la matrice frontale 
(en valeur absolue)
-  VTG : valeur de multiplication des coefficients diagonaux des degrés de liberté bloqués
  Attention :
    Les paramètres NTYPFR et LF (tableau de longueur NTYPFR) doivent
    être donnés par l'utilisateur si les modules
     PREPAF et  FRONT ne sont pas exécutés dans le même job.
 
 
 But : effectue la factorisation de Gauss, en
mémoire centrale, d'une matrice  A non singulière, déjà
assemblée dans la structure MUA.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer la structure de données d'entrée MUA (et éventuellement NDL1)
(exécuter le module PREPAC, puis le module ASSMUA qui créent la structure de données
d'entrée MUA)
 Appel du module :
   
      CALL GAUSPC(M,EPS,NENTRE,NFNDL1,NINDL1,
     +            NFMUAE,NIMUAE,NFMUAS,NIMUAS,NRETOU)
 avec
 
-  M : le super-tableau
-  EPS :  la valeur minimale acceptée pour un pivot la valeur minimale acceptée pour un pivot suivant le critère suivant le critère  
-  NENTRE : si NENTRE = 0 le module retourne au programme appelant
dès qu'un pivot est inférieur à EPS, ou continue les calculs si NENTRE = 1
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFMUAE : le numéro du fichier support de la SDE MUA
-  NIMUAE : son numéro de niveau
-  NFMUAS : le numéro du fichier support de la SDS MUA
-  NIMUAS : son numéro de niveau (la SDS peut être distincte de la SDE, ou confondue).
-  NRETOU : paramètre de sortie : NRETOU = 1 si au moins un pivot a été jugé trop petit,
 NRETOU = 0 sinon
  But :  détermine les pointeurs de la matrice A,
 et calcule les tailles des structures de données MUA et B.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer les structures de données d'entrée MAIL et éventuellement
NDL1 et BDCL
 Appel du module :
   
      CALL PREPAC(M,NNOMAX,ND,NDSM,NCLRL,NCODSA,NTY,
     +            NFMAIL,NIMAIL,NFNDL1,NINDL1,
     +            NFBDCL,NIBDCL,NFMUA,NIMUA,NTMUA,
     +            LBDP,LBDPDL,MCNDL1,MCMUA,MCB)
 avec
 
-  M : le super-tableau
-  NNOMAX : le nombre maximum de noeuds parmi tous les types d'éléments
-  ND : le nombre de degrés de liberté en chaque noeud, s'il est constant (0 sinon)
-  NDSM : le nombre de seconds membres
-  NCLRL : le nombre de conditions aux limites en relation linéaire
-  NCODSA : le code de stockage de la matrice
- NCODSA  > 0 : stockage symétrique de la partie triangulaire inférieure
- NCODSA  = 0 : stockage diagonal 
- NCODSA  < 0 : stockage non symétrique de la matrice complète
-  NTY : le type des tableaux MUA5 et B4 à assembler
-  NFMAIL : le numéro du fichier support de la SDE MAIL
-  NIMAIL : son numéro de niveau
-  NFNDL1 : le numéro du fichier support de la SDE NDL1
-  NINDL1 : son numéro de niveau
-  NFBDCL : le numéro du fichier support de la SDE BDCL
-  NIBDCL : son numéro de niveau
-  NFMUA : le numéro du fichier support de la SDS MUA
-  NIMUA : son numéro de niveau
-  NTMUA : le nombre de tableaux associés
-  LBDP : paramètre de sortie : plus grande différence entre les numéros des
noeuds d'un même élément
-  LBDPL : paramètre de sortie : plus grande différence entre les numéros des
degrés de liberté d'un même élément
-  MCNDL1 : le nombre de mots de la structure NDL1
-  MCMUA : le nombre de mots de la structure MUA
-  MCB : le nombre de mots de la structure B
  But : détermine les pointeurs de la matrice A et des seconds
membres B, et calcule la place mémoire nécessaire à la résolution 
d'un système linéaire par la méthode frontale.
 Utilisation :
-  dimensionner le tableau M (dans le common blanc)
-  appeler INITI
-  créer la structure de données d'entrée MAIL
 Appel du module :
                                                
      CALL PREPAF(M,NFMAIL,NIMAIL,NFFRON,LFRON,NTYPFR,LF)
 avec
 
-  M : le super-tableau
-  NFMAIL : le numéro du fichier support de la SDE MAIL
-  NIMAIL : son numéro de niveau
-  NFFRON : le numéro du fichier support des résultats (toujours > 0)
-  LFRON : la longueur du front prévue par l'utilisateur
-  NTYFR : le nombre de types de front (i.e. de type de noeuds dans le maillage)
-  LF : tableau entier de longueur NTYFR
-  LF(I) contient en sortie la longueur du I-ème front. Si en cours d'exécution
 une de ces valeurs dépasse LFRON, le programme s'arrête avec impression d'un message
 






![[BIG]](../icons/zoom18.gif)
![[Normal]](../icons/zoom14.gif)
![[small]](../icons/zoom10.gif)
 Suiv.:  1.3 Les algorithmes
Sup.:   Liste des méthodes directes
 Préc.:  1.1 Introduction
Index
Table des matières