1 : C HOOKMU SOURCE CHAT 05/01/13 00:25:47 5004 2 : SUBROUTINE HOOKMU(EPAIST,EXCEN,LHOOK,DDHOOK,DDHOMU) 3 : *======================================================================= 4 : * 5 : * ENTREES 6 : * EPAIST = EPAISSEUR 7 : * EXCEN = EXCEN POUR ELEMENT MULTI COUCHE 8 : * DDHOOK(LHOOK,LHOOK) = MATRICE DE HOOKE 9 : * LHOOK = TAILLE MATRICE DE HOOKE 10 : * SORTIES 11 : * DDHOMU(LHOOK,LHOOK)= 1 BLOC 3 3 * EPAIST 12 : * 2 3 BLOC 3 3 * EPAIST*EXCEN 13 : * 4 BLOC 3 3 * (EPAIST**3)/12+EPAIST*EXCEN*EXCEN 14 : * EBERSOLT MAI 86 15 : * 16 : *======================================================================= 17 : IMPLICIT INTEGER(I-N) 18 : IMPLICIT REAL*8(A-H,O-Z) 19 : PARAMETER (UNDOU = .83333 33333 33333D-1) 20 : PARAMETER (XMAX = 1.D-10) 21 : DIMENSION DDHOOK(LHOOK,*),DDHOMU(LHOOK,*) 22 : * 23 : * MISE A ZERO 24 : * 24 : CALL ZERO(DDHOMU,LHOOK,LHOOK) 25 : * 26 : EEAA = EPAIST*EXCEN 27 : EEEE = EEAA*EXCEN + EPAIST*EPAIST*EPAIST*UNDOU 28 : * 29 : * ON MULTIPLIE 30 : * 31 : IF (LHOOK.EQ.4) THEN 32 : DO 30 IC=1,2 33 : DO 30 ID=1,2 34 : DDHOMU(ID,IC ) = DDHOOK(ID,IC)*EPAIST 35 : DDHOMU(ID,IC+2) = DDHOOK(ID,IC)*EEAA 36 : DDHOMU(ID+2,IC ) = DDHOOK(ID,IC)*EEAA 37 : DDHOMU(ID+2,IC+2) = DDHOOK(ID+2,IC+2)*EEEE 38 : 30 CONTINUE 39 : ELSE IF (LHOOK.EQ.6.OR.LHOOK.EQ.8) THEN 40 : DO 40 IC=1,3 41 : DO 40 ID=1,3 42 : DDHOMU(ID,IC ) = DDHOOK(ID,IC )*EPAIST 43 : DDHOMU(ID,IC+3) = DDHOOK(ID,IC )*EEAA 44 : DDHOMU(ID+3,IC ) = DDHOOK(ID,IC )*EEAA 45 : DDHOMU(ID+3,IC+3) = DDHOOK(ID+3,IC+3)*EEEE 46 : 40 CONTINUE 47 : ENDIF 48 : * 49 : * CAS DES COQUES AVEC CISAILLEMENT TRANSVERSE 50 : * 51 : IF (LHOOK.EQ.8) THEN 52 : DO 50 IC=7,8 53 : DO 50 ID=7,8 54 : DDHOMU(ID,IC) = DDHOOK(ID,IC)*EPAIST 55 : 50 CONTINUE 56 : ENDIF 57 : * 58 : RETURN 59 : END 60 :
© Cast3M 2003 - All rights reserved.
Disclaimer