nuniso
C NUNISO SOURCE CHAT 05/01/13 02:03:40 5004 C C ***************************************************************** C OBJET NUNISO : PROPOSE UNE RENUMEROTATION POUR METTRE EN FIN LES C OBJET NOEUDS ISOLES. C C EN ENTREE: C NOETRI: TABLEAU DES ELEMENTS INCIDENTS AUX NOEUDS C NBN : NOMBRE DE NOEUDS C C EN SORTIE: C NBISOL : NOMBRE DE NOEUDS ISOLES C NUM : NOUVELLE NUMEROTATION C NUM(I) = NOUVEAU NUMERO DU NOEUD I C NUM EST UN TABLEAU DE TAILLE NBN C C CONDITION D'APPLICATION : TOUT MAILLAGE C ***************************************************************** IMPLICIT INTEGER(I-N) INTEGER NOETRI(*),NBN INTEGER NUM(*),NBISOL,IERR C INTEGER I C NBISOL = 0 I = 1 10 IF(I.GT.(NBN-NBISOL))GOTO 9999 C --- LE NOEUD EST ISOLE --- IF( NOETRI(I).EQ.0 )THEN C C --- RECHERCHE D'UN NOEUD (A LA FIN) POUR PERMUTER --- 20 IF( NOETRI(NBN-NBISOL).EQ. 0 )THEN NUM(NBN-NBISOL) = NBN-NBISOL NBISOL = NBISOL + 1 C --- TOUS LES NOEUDS SONT ISOLES --- IF( NBISOL.EQ.NBN )GOTO 9999 C --- ON A TROUVE TOUS LES NOEUDS ISOLES --- IF( I.GT.(NBN-NBISOL))GOTO 9999 GOTO 20 ENDIF C C --- ON A LE NOEUD POUR PERMUTER --- NUM(NBN-NBISOL) = I NUM(I) = NBN-NBISOL NBISOL = NBISOL + 1 ELSE NUM(I) = I ENDIF I = I + 1 GOTO 10 C 9999 END
© Cast3M 2003 - Tous droits réservés.
Mentions légales