tma1cc
C TMA1CC SOURCE CHAT 06/03/29 21:35:47 5360 C C C > IT,ITVL,ITRAMA,NBITL,ICON,NBICON,iarr) C ************************************************************** C OBJET : C CALCUL DES ELEMENTS APPARTENANT A UN ENSEMBLE C DE MAILLES CONSECUTIVES ET CONNEXE AVEC 1 ELEMENT DONNE C EN ENTREE: C IDE : (1..3) DIMENSION DES ELEMENTS C ITRTRI: LES VOISINS DES ELEMENTS C NBCMAX : (2..6) NOMBRE DE COTES MAXIMUM DES ELEMENTS C IND : INDICE DU PREMIER ELEMENT DE L'ENSEMBLE C NBE : NOMBRE D'ELEMENTS DE L'ENSEMBLE C IT : L'ELEMENT DE DEPART C ITVL,NBITL : TABLEAU DE TRAVAIL NBITL < N*NBE C ITRAMA : " " " " DE TAILLE = NBE C EN SORTIE: C ICON : LISTE DES ELEMENTS CONNEXES AVEC IT C NBICON : NBRE D'ELEMENTS DE ICON C iarr : CODE D'ERREUR 0 => OK, -2 => ITVL TROP PETIT C CONDITION D'APPLICATION : MAILLAGE MIXTE 1D,2D ET C ET TETRAEDRES C ATTENTION : ITRAMA DOIT ETRE INITIALISE C NORMALEMENT ITRAMA(0..NBE) = 0 C SI ITRAMA(I)=1 ON CONSIDERE QUE L'ELEMENT I EST BLOQUANT C IT EST MIS DANS LA COMPOSANTE CONNEXE C ************************************************************ IMPLICIT INTEGER(I-N) INTEGER IDE,ITRTRI(*),NBCMAX,IND,NBE INTEGER IT,ITRAMA(*),ITVL(*),NBITL,ICON(*),NBICON,iarr C INTEGER I,J, NBTRA, ITT C ITVL(1) = IT ITRAMA(IT) = 1 NBTRA = 1 iarr = 0 C C ON BOUCLE TANTQUE ITVL N'EST PAS VIDE C ---------------------------------------- 310 J = ITVL(NBTRA) NBTRA = NBTRA-1 NBICON = NBICON+1 ICON(NBICON) = J C ON MET LES VOISINS A TRAITER DANS ITVL C ------------------------------------------ DO 350 I=1,NBCMAX ITT = ITRTRI(((J-1)*NBCMAX)+I) C IF((ITT.GT.IND).AND.(ITRAMA(ITT).NE.1))THEN C BUG2 O.STAB 03.08.95 IF((ITT.GE.IND).AND.(ITRAMA(ITT).EQ.0))THEN NBTRA = NBTRA + 1 IF( NBTRA .GT. NBITL )THEN iarr = -2 GO TO 999 ENDIF C ITVL(NBTRA) = ITT ITRAMA(ITT) = 1 ENDIF 350 CONTINUE IF( NBTRA .NE. 0 )GO TO 310 999 END
© Cast3M 2003 - Tous droits réservés.
Mentions légales