C GRAF SOURCE CB215821 23/11/02 21:15:04 11779 SUBROUTINE GRAF IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) *--------------------------------------------------------------------* * * * Opérateur GRADIENT DE FLEXION * * ________________________________ * * * * Syntaxe : GRAF1 = GRAF MOD1 DEP1 ( CAR1 ) ; * * * * Entrees: * * * * MOD1 objet MMODEL * * DEP1 CHPOINT ou MCHAML de déplacements * * CAR1 MCHAML de sous-type CARACTERISTIQUES * * * * Sortie: * * * * GRAF1 MCHAML de sous-type GRADIENT DE FLEXION * * * * passage aux nouveaux MCHAMLs par P.DOWLATYARI le 28/03/91 * * * *--------------------------------------------------------------------* -INC PPARAM -INC CCOPTIO * IPCHL1=0 IPCHE1=0 IRET1=0 IRET2=0 IRET3=0 * * LECTURE D'UN MMODEL * CALL LIROBJ('MMODEL',IPMODL,1,IRET) IF (IERR.NE.0) RETURN CALL ACTOBJ('MMODEL ',IPMODL,1) * * LECTURE D'UN CHPOINT * CALL LIROBJ('CHPOINT',IPCHP1,0,IRET1) IF(IERR.NE.0) RETURN * * CHPOINT DE DEPLACEMENT ---> MCHAML AUX NOEUDS * IF (IRET1.NE.0) THEN CALL ACTOBJ('CHPOINT',IPCHP1,1) CALL CHAME1(0,IPMODL,IPCHP1,' ',IPCHE2,1) IF (IERR.NE.0) RETURN * * LECTURE D'UN PREMIER MCHAML (DEPLACEMENTS) * ELSE CALL LIROBJ('MCHAML',IPIN,1,IRET2) IF (IERR.NE.0) RETURN CALL ACTOBJ('MCHAML ',IPIN,1) CALL REDUAF(IPIN,IPMODL,IPCHE2,0,IR,KER) IF(IR .NE. 1) CALL ERREUR(KER) IF(IERR .NE. 0) RETURN ENDIF * * LECTURE D'UN DEUXIEME MCHAML (CARACTERISTIQUE) * CALL LIROBJ('MCHAML',IPIN,0,IRET3) IF (IERR.NE.0) RETURN IPCHE1=0 IF (IRET3 .EQ. 1) THEN CALL ACTOBJ('MCHAML ',IPIN,1) CALL REDUAF(IPIN,IPMODL,IPCHE1,0,IR,KER) IF(IR .NE. 1) CALL ERREUR(KER) IF(IERR .NE. 0) RETURN ENDIF IF (IRET3.NE.0.AND.IRET2.NE.0) THEN CALL RNGCHA (IPCHE1,IPCHE2,'CARACTERISTIQUES', 1 'DEPLACEMENTS',IPCHA1,IPCHA2) IF(IPCHA1.EQ.0.OR.IPCHA2.EQ.0)THEN CALL ERREUR(805) RETURN ENDIF IPCHE1=IPCHA1 IPCHE2=IPCHA2 ENDIF * * GESTION DES OPERANDES * CALL GRAF1(IPMODL,IPCHE2,IPCHE1,IPCHL1,IRET) IF(IERR .NE. 0) RETURN * IF (IRET.EQ.1) THEN CALL ACTOBJ('MCHAML',IPCHL1,1) CALL ECROBJ('MCHAML',IPCHL1) ENDIF RETURN END