retopi
C RETOPI SOURCE GOUNAND 21/04/06 21:15:24 10940 $ TOPINV,IMPR) IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER (I-N) C*********************************************************************** C NOM : RETOPI C DESCRIPTION : Remplit une topologie inverse avec les NEL premiers C éléments de MELEME. Si NEL est négatif, on prend tous les éléments C de MELEME. Si le premier noeud d'un élément de MELEME est 0, C l'élément est sauté. Si un autre noeud de l'élément est nul , on C part en erreur. C C C C C LANGAGE : ESOPE C AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SEMT/LTA) C mél : gounand@semt2.smts.cea.fr C*********************************************************************** C*********************************************************************** C SYNTAXE GIBIANE : C ENTREES : MELEME (Activé), NEL C ENTREES/SORTIES : TOPINV (Activé *MOD) C SORTIES : C CODE RETOUR (IRET) : = 0 si tout s'est bien passé C*********************************************************************** C VERSION : v1, 02/10/2017, version initiale C HISTORIQUE : v1, 02/10/2017, création C HISTORIQUE : C HISTORIQUE : C*********************************************************************** -INC PPARAM -INC CCOPTIO -INC SMELEME -INC TMATOP1 *-INC STOPINV INTEGER IMPR,IRET * * Executable statements * if (impr.ge.5) WRITE(IOIMP,*) 'Entrée dans retopi.eso' IDIMP=IDIM+1 NBELEM=NUM(/2) IF (NEL.GT.NBELEM) THEN write(ioimp,*) 'Nombre d''elements a ajouter trop grand' goto 9999 ENDIF IF (NEL.GE.0) NBELEM=NEL * * Remplissage de la topologie inverse * DO 1 IEL=1,NEL DO 10 INO=1,IDIMP IP=NUM(INO,IEL) * IF (IP.EQ.0) THEN ** On saute l'élément * IF (INO.EQ.1) GOTO 1 * write(ioimp,*) 'Meleme incorrect, noeud nul' * goto 9999 * ENDIF * Ajout de IP dans la bonne liste chaînée LDGT=LDGT+1 IF (IP.NE.0) THEN LAST=TIC(IP) TLC(LDGT)=LAST TIC(IP)=LDGT TDC(IP)=TDC(IP)+1 ENDIF 10 CONTINUE 1 CONTINUE * * Normal termination * RETURN * * Error handling * 9999 CONTINUE MOTERR(1:8)='RETOPI ' * 349 2 *Problème non prévu dans le s.p. %m1:8 contactez votre assistance RETURN * * End of subroutine RETOPI * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales