invers
C INVERS SOURCE GOUNAND 16/05/25 21:15:05 8924 C INVERSE UN OBJET MAILLAGE ELEMENTAIRE C IPT1 (E) MAILLAGE A INVERSER (segment ACTIF) C MELEME (S) MAILLAGE INVERSE (segment ACTIF) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC SMELEME * * SG 2016/05/11 * * Nouvelle programmation : INVERS est une interface à INVER4 * (INVER4 est également utilisé par ORIE) * C 2) ICLE=1 (ou =2) indique que l'on inverse aussi (ou non) C l'ordre des elements dans le maillage. C Ceci est indispensable pour les lignes. C 3) Si le type de l'element n'est pas "inversable", on retourne le C maillage d'entree tel quel. ITYP=IPT1.ITYPEL IF (ITYP.EQ.2 .OR. ITYP.EQ.3) THEN ICLE=1 ELSE ICLE=2 ENDIF * RETURN * * SG 2016/05/11 * * Ancienne programmation c$$$C 1) Les elements "inversables" sont les suivants : c$$$C SEG2 (2) , SEG3 (3) , TRI3 (4), QUA4 (8) , TRI6 (6) , QUA8 (10) c$$$C TRI7 (7), QUA9 (11) c$$$C 2) ICLE=1 (ou =2,3) indique que l'on inverse aussi (ou non) c$$$C l'ordre des elements dans le maillage. c$$$C Ceci est indispensable pour les lignes. c$$$C 3) Si le type de l'element n'est pas "inversable", on retourne le c$$$C maillage d'entree tel quel. c$$$ c$$$ IF (ITYP.EQ.2 .OR. ITYP.EQ.3) THEN c$$$ ICLE=1 c$$$ ELSE IF (ITYP.EQ.4 .OR. ITYP.EQ.8 .OR. c$$$ & ITYP.EQ.6 .OR. ITYP.EQ.10) THEN c$$$ ICLE=2 c$$$ ELSE IF (ITYP.EQ.7 .OR. ITYP.EQ.11) THEN c$$$ ICLE=3 c$$$ ELSE c$$$ MELEME=IPT1 c$$$ RETURN c$$$ ENDIF c$$$ c$$$C On choisit d'oublier le contour suite a l'inversion. c$$$ NBREF=IPT1.LISREF(/1) c$$$ IF (NBREF.EQ.1) NBREF=0 c$$$ NBSOUS=0 c$$$ NBNN=IPT1.NUM(/1) c$$$ NBELEM=IPT1.NUM(/2) c$$$ SEGINI MELEME c$$$ ITYPEL=IPT1.ITYPEL c$$$ IF (NBREF.NE.0) THEN c$$$ DO I=1,NBREF c$$$ LISREF(I)=IPT1.LISREF(I) c$$$ ENDDO c$$$ ENDIF c$$$ IF (ICLE.EQ.1) THEN c$$$ DO J=1,NBELEM c$$$ K=NBELEM+1-J c$$$ DO I=1,NBNN c$$$ NUM(I,J)=IPT1.NUM(NBNN+1-I,K) c$$$ ENDDO c$$$ ICOLOR(J)=IPT1.ICOLOR(K) c$$$ ENDDO c$$$ ELSEIF (ICLE.EQ.2) THEN c$$$ DO J=1,NBELEM c$$$ DO I=1,NBNN c$$$ K=MOD(NBNN+1-I,NBNN)+1 c$$$ NUM(K,J)=IPT1.NUM(I,J) c$$$ ENDDO c$$$ ICOLOR(J)=IPT1.ICOLOR(J) c$$$ ENDDO c$$$ ELSE c$$$* Cas des QUAF c$$$ DO J=1,NBELEM c$$$ DO I=1,NBNN-1 c$$$ K=MOD(NBNN-I,NBNN-1)+1 c$$$ NUM(K,J)=IPT1.NUM(I,J) c$$$ ENDDO c$$$ NUM(NBNN,J)=IPT1.NUM(NBNN,J) c$$$ ICOLOR(J)=IPT1.ICOLOR(J) c$$$ ENDDO c$$$ ENDIF c$$$ RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales