1 : C BDST2 SOURCE CHAT 05/01/12 21:38:07 5004 2 : SUBROUTINE BDST2(XEL,XDDL,IGAU,BGENE,CMATE,COSA,SINA,XSTRS) 3 : C====================================================================== 4 : C 5 : C AJOUTE DANS LES DEFORMATIONS XSTRS LA PARTIE EPS2 6 : C QUE POUR LES ELEMENTS DST 7 : C ENTREE 8 : C XEL(3,3) =COORDONNEES LOCALES DU DST 9 : C XDDL(18) =D D L LOCAUX DE LA FORMULATION 10 : C IGAU =NUMERO DU POINT DE GAUSS DE 1 A 3 11 : C XSTRS(8) =DEFORMATIONS EPS1 12 : C BGENE(8,18) =RELIE LES DEFORMATIONS AUX DDL 13 : C CMATE ='ISOTROPE' OU 'ORTHOTRO' 14 : C COSA =COSINUS ET SINUS DU L'ANGLE ENTRE l'AXE 15 : C SINA 1 DE L'ORTHOTROPIE ET L'AXE X 16 : CC SORTIE 17 : C XSTRS(6) =(EPS1 + EPS2 ) 18 : C 19 : C CODE EBERSOLT AOUT 85 + P DOWLATYARI OCT. 91 POUR ELEMENT DST 20 : C======================================================================= 21 : IMPLICIT INTEGER(I-N) 22 : IMPLICIT REAL*8(A-H,O-Z) 23 : DIMENSION XEL(3,*),XSTRS(*),XDDL(*),BGENE(8,*) 24 : DIMENSION EPS2(3),SHP(6,9),ROT(9) 25 : CHARACTER*8 CMATE 26 : C 27 : C 28 : DATA XZER,UNDEMI,TRDEMI/0.D0,.5D0,1.5D0/ 29 : C 30 : BETAX=XZER 31 : BETAY=XZER 32 : GAMAXZ=XZER 33 : GAMAYZ=XZER 34 : C 34 : CALL DKTSHP(IGAU,XEL,SHP,DJAC) 35 : C 36 : C ON EXTRAIT LES DEGRES W ROT X ROT Y 37 : C 38 : IACC= 0 39 : IADD= 2 40 : DO 100 IA=1,3 41 : DO 110 IB=1,3 42 : ROT(IACC+IB)=XDDL(IADD+IB) 43 : 110 CONTINUE 44 : IF(CMATE.NE.'ISOTROPE')THEN 45 : RRX=ROT(IACC+2)*COSA+ROT(IACC+3)*SINA 46 : RRY=ROT(IACC+2)*(-SINA)+ROT(IACC+3)*COSA 47 : ROT(IACC+2)=RRX 48 : ROT(IACC+3)=RRY 49 : ENDIF 50 : IACC=IACC+3 51 : IADD=IADD+6 52 : 100 CONTINUE 53 : C 54 : C LES ROT SONT DES W W,X W,Y AUX 3 NOEUDS 55 : C LES XDDL SONT LES W RX RY AUX 3 NOEUDS 56 : C 57 : CCC = ROT(2) 58 : ROT(2)=-ROT(3) 59 : ROT(3)= CCC 60 : C 61 : CCC = ROT(5) 62 : ROT(5)=-ROT(6) 63 : ROT(6)= CCC 64 : C 65 : CCC = ROT(8) 66 : ROT(8)=-ROT(9) 67 : ROT(9)= CCC 68 : C 69 : DO 200 IA=1,9 70 : BETAX =SHP(2,IA)*ROT(IA) +BETAX 71 : BETAY =SHP(3,IA)*ROT(IA) +BETAY 72 : 200 CONTINUE 73 : C 74 : DO 210 IA=1,18 75 : GAMAXZ=BGENE(7,IA)*XDDL(IA)+GAMAXZ 76 : GAMAYZ=BGENE(8,IA)*XDDL(IA)+GAMAYZ 77 : 210 CONTINUE 78 : C 79 : C ON AJOUTE L'EFFET DE CISAILLEMENT 80 : C 81 : IF(IGAU.EQ.1)THEN 82 : DX=XEL(1,2)-XEL(1,1) 83 : DY=XEL(2,2)-XEL(2,1) 84 : ELSEIF(IGAU.EQ.2)THEN 85 : DX=XEL(1,3)-XEL(1,1) 86 : DY=XEL(2,3)-XEL(2,1) 87 : ELSE 88 : DX=XEL(1,3)-XEL(1,2) 89 : DY=XEL(2,3)-XEL(2,2) 90 : ENDIF 91 : XLONG= DX*DX + DY*DY 92 : XLON2= SQRT(XLONG) 93 : CC=DX/XLON2 94 : SS=DY/XLON2 95 : BETAX=BETAX-TRDEMI*CC*CC*GAMAXZ-TRDEMI*SS*CC*GAMAYZ 96 : BETAY=BETAY-TRDEMI*SS*CC*GAMAXZ-TRDEMI*SS*SS*GAMAYZ 97 : C 98 : C BETA EST EN REALITE -BETA DONC:W,X=BETAX+GAMAXZ 99 : C 100 : C 101 : DWDX = BETAX + GAMAXZ 102 : DWDY = BETAY + GAMAYZ 103 : C 104 : XSTRS(1)= DWDX*DWDX*UNDEMI +XSTRS(1) 105 : XSTRS(2)= DWDY*DWDY*UNDEMI +XSTRS(2) 106 : XSTRS(3)= DWDX*DWDY +XSTRS(3) 107 : C 108 : RETURN 109 : END 110 :
© Cast3M 2003 - All rights reserved.
Disclaimer