C PRINVE SOURCE CB215821 19/07/31 21:16:42 10277 C INTERFACE ENTRE PILOT ET INVERS C SERT A INVERSER UN OBJET SUBROUTINE PRINVE IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC PPARAM -INC CCOPTIO -INC SMELEME C === C 1 - Lecture d'un MAILLAGE : C Inversion du sens de parcours de ligne(s) (SEG2/SEG3) ou de C l'orientation des elements "surfaciques" (QUA4/QUA8/TRI3/TRI6) C === CALL LIROBJ('MAILLAGE',IPT1,0,IRETOU) IF (IERR.NE.0) RETURN IF (IRETOU .NE. 0) THEN MELEME=IPT1 SEGACT MELEME NBSOUS=LISOUS(/1) IF (NBSOUS.EQ.0) THEN CALL INVERS(IPT1,IPT2) ELSE NBREF=0 NBNN=0 NBELEM=0 SEGINI IPT2 DO i=1,NBSOUS IPT1=LISOUS(i) SEGACT IPT1 CALL INVERS(IPT1,IPT3) SEGDES IPT1,IPT3 IPT2.LISOUS(i)=IPT3 ENDDO ENDIF SEGDES MELEME,IPT2 CALL ECROBJ('MAILLAGE',IPT2) C === C 2 - Lecture d'un CHPOINT : C Inversion des composantes au sens de la multiplication '*' C === ELSE CALL LIROBJ('CHPOINT ',ICHP1,1,IRETOU) CALL ACTOBJ('CHPOINT ',ICHP1,1) IF (IERR.NE.0) RETURN CALL INVCHP(ICHP1,ICHP2) CALL ACTOBJ('CHPOINT ',ICHP2,1) CALL ECROBJ('CHPOINT ',ICHP2) ENDIF END