Download tma1cc.eso

Back to the list

   1 : C TMA1CC    SOURCE    CHAT      06/03/29    21:35:47     5360           
   2 : C
   3 : C
   4 : C
   5 :       SUBROUTINE TMA1CC(IDE,ITRTRI,NBCMAX,IND,NBE,
   6 :      >                  IT,ITVL,ITRAMA,NBITL,ICON,NBICON,iarr)
   7 : C     **************************************************************
   8 : C     OBJET :  
   9 : C        CALCUL DES ELEMENTS APPARTENANT A UN ENSEMBLE
  10 : C        DE MAILLES CONSECUTIVES ET CONNEXE AVEC 1 ELEMENT DONNE
  11 : C     EN ENTREE:
  12 : C      IDE    :  (1..3) DIMENSION DES ELEMENTS 
  13 : C      ITRTRI:  LES VOISINS DES ELEMENTS
  14 : C      NBCMAX :  (2..6) NOMBRE DE COTES MAXIMUM DES ELEMENTS 
  15 : C      IND    :  INDICE DU PREMIER ELEMENT DE L'ENSEMBLE
  16 : C      NBE    :  NOMBRE D'ELEMENTS DE L'ENSEMBLE
  17 : C      IT     :  L'ELEMENT DE DEPART
  18 : C      ITVL,NBITL : TABLEAU DE TRAVAIL NBITL < N*NBE
  19 : C      ITRAMA        : "    "   "    "  DE TAILLE = NBE
  20 : C     EN SORTIE: 
  21 : C      ICON   :  LISTE DES ELEMENTS CONNEXES AVEC IT
  22 : C      NBICON :  NBRE D'ELEMENTS DE ICON
  23 : C      iarr   :  CODE D'ERREUR 0 => OK, -2 => ITVL TROP PETIT
  24 : C     CONDITION D'APPLICATION : MAILLAGE MIXTE 1D,2D ET 
  25 : C                               ET TETRAEDRES
  26 : C     ATTENTION : ITRAMA DOIT ETRE INITIALISE 
  27 : C         NORMALEMENT ITRAMA(0..NBE) = 0 
  28 : C         SI ITRAMA(I)=1 ON CONSIDERE QUE L'ELEMENT I EST BLOQUANT
  29 : C         IT EST MIS DANS LA COMPOSANTE CONNEXE
  30 : C     ************************************************************
  31 :       IMPLICIT INTEGER(I-N)
  32 :       INTEGER    IDE,ITRTRI(*),NBCMAX,IND,NBE
  33 :       INTEGER    IT,ITRAMA(*),ITVL(*),NBITL,ICON(*),NBICON,iarr
  34 : C
  35 :       INTEGER    I,J, NBTRA, ITT
  36 : C
  37 :       ITVL(1) = IT
  38 :       ITRAMA(IT) = 1
  39 :       NBTRA = 1
  40 :       iarr = 0
  41 : C
  42 : C     ON BOUCLE TANTQUE ITVL N'EST PAS VIDE
  43 : C     ----------------------------------------
  44 :   310 J     = ITVL(NBTRA)
  45 :       NBTRA  = NBTRA-1  
  46 :       NBICON = NBICON+1
  47 :       ICON(NBICON) = J
  48 : C     ON MET LES VOISINS A TRAITER DANS ITVL
  49 : C     ------------------------------------------
  50 :       DO 350 I=1,NBCMAX 
  51 :         ITT = ITRTRI(((J-1)*NBCMAX)+I)
  52 : C        IF((ITT.GT.IND).AND.(ITRAMA(ITT).NE.1))THEN
  53 : C       BUG2 O.STAB 03.08.95
  54 :         IF((ITT.GE.IND).AND.(ITRAMA(ITT).EQ.0))THEN
  55 :             NBTRA = NBTRA + 1
  56 :             IF( NBTRA .GT. NBITL )THEN
  57 :               iarr = -2
  58 :               GO TO 999
  59 :             ENDIF
  60 : C
  61 :             ITVL(NBTRA) = ITT
  62 :             ITRAMA(ITT) = 1
  63 :         ENDIF
  64 :   350 CONTINUE
  65 :       IF( NBTRA .NE. 0 )GO TO 310
  66 :   999 END
  67 :  
  68 :  
  69 :  

© Cast3M 2003 - All rights reserved.
Disclaimer