1 : C CALC3 SOURCE CHAT 05/01/12 21:45:39 5004 2 : C CALC3.eso SOURCE bald MAR 28/03/95 00:00:00 3 : SUBROUTINE CALC3(KNN,KNT,KTN,KTT,SIG0,DU1,DU2,DV,NSTRS, 4 : $ DELTA,RI0,DCON) 5 : C 6 : C------------------------------------------------------------- 7 : C 8 : C ENTREES 9 : C 10 : C KNN,KNT,KTN,KTT = RAIDEURS DU JOINT 2D EQUIVALENT 11 : C SIG0(NSTRS) = CONTRAINTES INITIALES (AU PAS PRECEDENT) 12 : C DU1 = INCREMENT DE LA U1 13 : C DU2 = INCREMENT DE LA U2 14 : C DV = INCREMENT DE LA V 15 : C NSTRS = NOMBRE DE COMPOSANTES DE CONTRAINTES 16 : C 17 : C SORTIES 18 : C 19 : C DELTA = INCREMENT DE LA U EQUIVALENTE 20 : C RI0(NSTRS,NSTRS) = MATRICE DE RIGIDITE DU JOINT 21 : C DCON(NSTRS) = VECTEUR DES INCREMENTS DE CONTRAINTE 22 : C 23 : C------------------------------------------------------------- 24 : C 25 : c 26 : IMPLICIT INTEGER(I-N) 27 : IMPLICIT REAL*8(A-H,O-Z) 28 : DIMENSION SIG0(NSTRS), RI0(NSTRS,NSTRS), DCON(NSTRS) 29 : REAL*8 KNN, KNT, KTN, KTT 30 : c 31 : TOL1=1.D-20 32 : TOL2=1.D-8 33 : c 34 : c calcul de la matrice Dt reale (3D) 35 : c 36 : IF((ABS(SIG0(1)).LE.TOL1).AND.(ABS(SIG0(2)).LE.TOL1))THEN 37 : c 38 : c les deux tau sont nulles 39 : c 40 : IF((ABS(DU1).LE.TOL2).AND.(ABS(DU2).LE.TOL2))THEN 41 : c 42 : c les deux incréments de déformation sont nuls 43 : c 44 : DELTA=0.D0 45 : c 46 : RI0(1,1)=0.D0 47 : RI0(1,2)=0.D0 48 : RI0(1,3)=0.D0 49 : c 50 : RI0(2,1)=0.D0 51 : RI0(2,2)=0.D0 52 : RI0(2,3)=0.D0 53 : c 54 : RI0(3,1)=0.D0 55 : RI0(3,2)=0.D0 56 : RI0(3,3)=KNN 57 : c 58 : ELSE 59 : c 60 : DELTA=SQRT(DU1**2+DU2**2) 61 : c 62 : RI0(1,1)=KTT 63 : RI0(1,2)=0.D0 64 : RI0(1,3)=KTN*(DU1/SQRT(DU1**2+DU2**2)) 65 : c 66 : RI0(2,1)=0.D0 67 : RI0(2,2)=KTT 68 : RI0(2,3)=KTN*(DU2/SQRT(DU1**2+DU2**2)) 69 : c 70 : RI0(3,1)=KNT*(DU1/SQRT(DU1**2+DU2**2)) 71 : RI0(3,2)=KNT*(DU2/SQRT(DU1**2+DU2**2)) 72 : RI0(3,3)=KNN 73 : c 74 : END IF 75 : c 76 : ELSE 77 : c 78 : DELTA=(SIG0(1)*DU1+SIG0(2)*DU2)/SQRT(SIG0(1)**2+SIG0(2)**2) 79 : c 80 : RI0(1,1)=KTT*(1.D0+(SIG0(2)**2)/(SIG0(1)**2+SIG0(2)**2)) 81 : RI0(1,2)=-KTT*(SIG0(1)*SIG0(2))/(SIG0(1)**2+SIG0(2)**2) 82 : RI0(1,3)=KTN*SIG0(1)/SQRT(SIG0(1)**2+SIG0(2)**2) 83 : c 84 : RI0(2,1)=-KTT*(SIG0(2)*SIG0(1))/(SIG0(1)**2+SIG0(2)**2) 85 : RI0(2,2)=KTT*(1.D0+(SIG0(1)**2)/(SIG0(1)**2+SIG0(2)**2)) 86 : RI0(2,3)=KTN*SIG0(2)/SQRT(SIG0(1)**2+SIG0(2)**2) 87 : c 88 : RI0(3,1)=KNT*SIG0(1)/SQRT(SIG0(1)**2+SIG0(2)**2) 89 : RI0(3,2)=KNT*SIG0(2)/SQRT(SIG0(1)**2+SIG0(2)**2) 90 : RI0(3,3)=KNN 91 : c 92 : END IF 93 : c 94 : DCON(1)=RI0(1,1)*DU1+RI0(1,2)*DU2+RI0(1,3)*DV 95 : DCON(2)=RI0(2,1)*DU1+RI0(2,2)*DU2+RI0(2,3)*DV 96 : DCON(3)=RI0(3,1)*DU1+RI0(3,2)*DU2+RI0(3,3)*DV 97 : c 98 : RETURN 99 : c 100 : END 101 :
© Cast3M 2003 - All rights reserved.
Disclaimer