C PRAJUS SOURCE CHAT 07/10/29 21:25:38 5940 C INTERFACE AVEC TRANSF POUR PERMETTRE A CE DERNIER D'ETRE C ECRIT EN FORTRAN,CE QUI EST PLUS ECONOMIQUE C SUBROUTINE PRAJUS(FER,XPROJ,MELEME,NUMELG,NUMNP,ichp) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) -INC CCOPTIO -INC SMELEME -INC CCGEOME SEGMENT/FER/(NFI(ITT),MAI(IPP),ITOUR),AFER.FER SEGMENT/XPROJ/(X(3,1)) SEGMENT /SXAUX/(XAUX(2,NFI(/1)),INAT(MAI(/1))) CHARACTER*(4) MOT NFMAX=NFI(/1) MAIMAX=MAI(/1)-1 IMOYE=0 QUAL=0.4 IREGU=4 930 CONTINUE CALL LIRCHA(MOT,0,IRETOU) IF (IRETOU.EQ.0) GOTO 932 IF (MOT.NE.'REGU') GOTO 910 CALL LIRENT(IREGU,1,IRETOU) IF (IERR.NE.0) RETURN GOTO 930 910 CONTINUE IF (MOT.NE.'MOYE') GOTO 931 CALL LIRREE(XXX,1,IRETOU) XMOY=XXX IF (IERR.NE.0) RETURN IMOYE=1 GOTO 930 931 CONTINUE IF (MOT.NE.'QUAL') GOTO 933 CALL LIRREE(XXX,1,IRETOU) QUAL=XXX IF (IERR.NE.0) RETURN GOTO 930 933 CALL REFUS 932 CONTINUE SEGINI SXAUX NBNN=3 IF (KSURF(ILCOUR).EQ.8.OR.KSURF(ILCOUR).EQ.10) NBNN=4 NBELEM=X(/2)*2 C CORRECTION POUR LE CAS DE FABRICATION DE TRI6 IF (MAI(1).NE.0) NBELEM=NBELEM/4+1 NCTIN=MAI(1)+1 NBSOUS=0 NBREF=0 SEGINI MELEME MAXPTS=X(/2) IRECHA=0 CALL TRANSF(NFI(1),NFMAX,MAI(1),MAIMAX,ITOUR,X(1,1),MAXPTS, # NUM(1,1),NBNN,NBELEM,NUMELG,NUMNP,XAUX(1,1),NUMINI,ICLE, # QUAL,INAT(1),IREGU,IMOYE,XMOY,NBNN,IRECHA,ichp) IF(IRECHA.NE.0) THEN CALL ERREUR(IRECHA) IF (IRECHA.EQ.27.AND.IOLEC.NE.5) IERR=2 RETURN ENDIF SEGSUP FER,SXAUX IF (ICLE.EQ.0) RETURN CALL PRAMEL(XPROJ,MELEME,NUMELG,NUMNP,NUMINI,ICLE,QUAL,NCTIN,NBNN) RETURN END