cukskp
C CUKSKP SOURCE CHAT 07/10/22 21:15:40 5921 implicit real*8(A-H,O-Z) implicit integer (I-N) * SUBROUTINE CUB_KSI_KP(IFACE,BKSI) C ELEMENT SHB8 C DEDIEE AU CALCUL DE KP: POUR LES 4 NOEUDS DE LA FACE PRESSION C C ------------------------------------------------------------------ C C DERIVEE P/R VARIABLES CANONIQUE AUX POINTS D INTEGRATION C POUR LES ELEMENTS CUBES A 8 NOEUDS C H. BUNG 03-93 C CORRIGE PAR A. LEGAY POUR 4 NOEUDS C ------------------------------------------------------------------ C C C ENTREES C IFACE : =1 FACE INFERIEURE C =2 FACE SUPERIEURE C SORTIES : C BKSI(3,8) : LES DERIVEES C * IMPLICIT NONE C C VARIABLES GLOBALES C * INTEGER IFACE * REAL *8 BKSI(3,4) DIMENSION BKSI(3,4) C C VARIABLES LOCALES C * REAL *8 XPOINT(4,3),ZI,UNS8 DIMENSION XPOINT(4,3) UNS8=0.125D0 C XPOINT(1,1)=-1. XPOINT(1,2)=-1. XPOINT(2,1)=1. XPOINT(2,2)=-1. XPOINT(3,1)=1. XPOINT(3,2)=1. XPOINT(4,1)=-1. XPOINT(4,2)=1. IF(IFACE.EQ.1)THEN XPOINT(1,3)=-1. XPOINT(2,3)=-1. XPOINT(3,3)=-1. XPOINT(4,3)=-1. ZI=-1. ENDIF IF(IFACE.EQ.2)THEN XPOINT(1,3)=1. XPOINT(2,3)=1. XPOINT(3,3)=1. XPOINT(4,3)=1. ZI=+1. ENDIF IF(IFACE.NE.1.AND.IFACE.NE.2) THEN WRITE(6,*)'******** FACE NON DEFINIE DANS CUB_KSI_KP *******' STOP ENDIF C BKSI(1,1) = UNS8*(1+XPOINT(1,3)*ZI)*XPOINT(1,1) BKSI(1,2) = UNS8*(1+XPOINT(2,3)*ZI)*XPOINT(2,1) BKSI(1,3) = UNS8*(1+XPOINT(3,3)*ZI)*XPOINT(3,1) BKSI(1,4) = UNS8*(1+XPOINT(4,3)*ZI)*XPOINT(4,1) C BKSI(2,1) = UNS8*(1+XPOINT(1,3)*ZI)*XPOINT(1,2) BKSI(2,2) = UNS8*(1+XPOINT(2,3)*ZI)*XPOINT(2,2) BKSI(2,3) = UNS8*(1+XPOINT(3,3)*ZI)*XPOINT(3,2) BKSI(2,4) = UNS8*(1+XPOINT(4,3)*ZI)*XPOINT(4,2) C BKSI(3,1) = UNS8*XPOINT(1,3) BKSI(3,2) = UNS8*XPOINT(2,3) BKSI(3,3) = UNS8*XPOINT(3,3) BKSI(3,4) = UNS8*XPOINT(4,3) RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales