reduir
C REDUIR SOURCE CB215821 20/11/25 13:38:52 10792 C ====================================================================== C REDUIT LE CHPOINT ICHP AUX POINTS CONTENUS DANS LE MELEME IMEL.LE C RESULTAT IRET EST UN MELEME. C ATTENTION : ON A DUPLIQUE LA GEOMETRIE ET LE MPOVAL DANS TOUS LES CAS C======================================================================= IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (a-h,o-z) -INC PPARAM -INC CCOPTIO -INC SMCHPOI -INC SMELEME -INC SMCOORD SEGMENT ICPR(nbpts) SEGMENT/ITRAV/(ITRAV1(NNOE),ITRAV2(NSOUP)) SEGINI ICPR IRET=0 MELEME=IMEL SEGACT MELEME IKI=0 NBSOUS=LISOUS(/1) IPT1=MELEME DO 4 ISOU=1,MAX(1,NBSOUS) IF (NBSOUS.NE.0) THEN IPT1=LISOUS(ISOU) SEGACT IPT1 ENDIF NBNN=IPT1.NUM(/1) NBELEM=IPT1.NUM(/2) DO 6 I1=1,NBELEM IF(ICPR(IP1).NE.0) GO TO 7 IKI=IKI+1 ICPR(IP1)=IKI 7 CONTINUE 6 CONTINUE 4 CONTINUE NNOE=IKI C MCHPOI=ICHP SEGACT MCHPOI NSOUP=IPCHP(/1) NSOUPO=0 NBNN=1 NBSOUS=0 NBREF=0 SEGINI ITRAV DO 1 ISOU=1,NSOUP NBELEM=0 MSOUPO=IPCHP(ISOU) SEGACT MSOUPO MELEME=IGEOC SEGACT MELEME N2=NUM(/2) DO 2 I=1,N2 IF(ICPR(NUM(1,I)).EQ.0) GO TO 2 NBELEM=NBELEM+1 IF (IERR.NE.0) RETURN ITRAV1(NBELEM)=I 2 CONTINUE IF(NBELEM.EQ.0) GOTO 3 MPOVAL=IPOVAL SEGACT MPOVAL NC=VPOCHA(/2) N=NBELEM SEGINI MPOVA1 SEGINI IPT1 IPT1.ITYPEL=1 DO 17 I=1,NBELEM IP1=ITRAV1(I) IPT1.NUM(1,I)=NUM(1,IP1) DO 8 IC=1,NC MPOVA1.VPOCHA(I,IC)=VPOCHA(IP1,IC) 8 CONTINUE 17 CONTINUE IPT11=IPT1 SEGINI MSOUP1 MSOUP1.IGEOC=IPT1 MSOUP1.IPOVAL=MPOVA1 IF (IPT11.NE.IPT1) THEN IPT1=IPT11 SEGSUP,IPT1 ENDIF DO 9 IC=1,NC MSOUP1.NOCOMP(IC)=NOCOMP(IC) MSOUP1.NOHARM(IC)=NOHARM(IC) 9 CONTINUE NSOUPO=NSOUPO+1 ITRAV2(NSOUPO)=MSOUP1 3 CONTINUE 1 CONTINUE SEGSUP ICPR NAT=JATTRI(/1) SEGINI MCHPO1 DO 10 I=1,NAT MCHPO1.JATTRI(I)=JATTRI(I) 10 CONTINUE DO 11 I=1,NSOUPO MCHPO1.IPCHP(I)=ITRAV2(I) 11 CONTINUE MCHPO1.IFOPOI=IFOPOI MCHPO1.MTYPOI=MTYPOI MCHPO1.MOCHDE=MOCHDE IRET=MCHPO1 5000 CONTINUE SEGSUP ITRAV END
© Cast3M 2003 - Tous droits réservés.
Mentions légales