epthan
C EPTHAN SOURCE BP208322 17/03/01 21:17:26 9325 1 TXR,XLOC,XGLOB,ROTS,RES,KERRE) ******************************************************************* * APPELE PAR EPTHP :DEFORMATIONS THERMIQUES POUR LES MATERIAUX * ANISOTROPES * * ENTREES : * MFR = FORMULATION DE L ELEMENT FINI * MELE = NUMERO DE L'ELEMENT FINI * VALMAT = TABLEAU DE MATERIAU * NSTRS = NOMBRE DE COMPOSANTES DES DEFORMATIONS * TEMP = TEMPERATURES * LHOOK = TAILLE DE LA MATRICE DE HOOKE * TXR,XLOC,XGLOB,ROTS = TABLEAUX DE TRAVAIL * SORTIES : * RES = TABLEAU DE DEFORMATIONS * KERRE = INDICATEUR D'ERREUR * * AM1 JANV 95 *********************************************************************** IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) * -INC PPARAM -INC CCOPTIO -INC CCHAMP * DIMENSION XLOC(3,3),XGLOB(3,3) DIMENSION ROTS(NSTRS,*) DIMENSION TXR(IDIM,*),RES(NSTRS) DIMENSION VALMAT(*) * DIMENSION EPS1(6),EPS2(6) * KERRE=0 * * TEST SUR LA FORMULATION * *-------------------------------------------------------------- * CAS MASSIF ET POREUX *-------------------------------------------------------------- IF(MFR.EQ.1.OR.MFR.EQ.33.OR.MFR.EQ.31) THEN * * * CONTRAINTES PLANES * IF(IFOUR.EQ.-2)THEN * ALP1= VALMAT(1) ALP2= VALMAT(2) AL12= VALMAT(3) ALP3=0.D0 XLOC(1,1)=VALMAT(4) XLOC(2,1)=VALMAT(5) XLOC(1,2)=-XLOC(2,1) XLOC(2,2)=XLOC(1,1) * DEFINITION DES AXES ORTHO./AXES GLOBAUX DO 3310 K=1,IDIM DO 3310 J=1,IDIM DO 3310 I=1,IDIM XGLOB(J,K)=TXR(J,I)*XLOC(I,K)+XGLOB(J,K) 3310 CONTINUE CC=XGLOB(1,1)*XGLOB(1,1) SS=XGLOB(2,1)*XGLOB(2,1) CS=XGLOB(1,1)*XGLOB(2,1) * * EN AXES D'ORTHOTROPIE * EPS1(1)=ALP1 EPS1(2)=ALP2 EPS1(3)=ALP3 EPS1(4)=AL12 * * CHGT D'AXES * EPS2(1)=CC*EPS1(1)+SS*EPS1(2)-CS*EPS1(4) EPS2(2)=CC*EPS1(2)+SS*EPS1(1)+CS*EPS1(4) EPS2(4)=CS*(EPS1(1)-EPS1(2))*2.D0+(CC-SS)*EPS1(4) * RES(1)=EPS2(1)*TEMP RES(2)=EPS2(2)*TEMP RES(3)=0.D0 RES(4)=EPS2(4)*TEMP * * DEFORMATIONS PLANES OU AXI OU FOURIER * ELSEIF(IFOUR.EQ.-1.OR.IFOUR.EQ.0 1 .OR.IFOUR.EQ.1.OR.IFOUR.EQ.-3)THEN ALP1= VALMAT(1) ALP2= VALMAT(2) AL12= VALMAT(3) ALP3= VALMAT(4) XLOC(1,1)=VALMAT(5) XLOC(2,1)=VALMAT(6) XLOC(1,2)=-XLOC(2,1) XLOC(2,2)=XLOC(1,1) C DEFINITION DES AXES ORTHO./AXES GLOBAUX DO 3320 K=1,IDIM DO 3320 J=1,IDIM DO 3320 I=1,IDIM XGLOB(J,K)=TXR(J,I)*XLOC(I,K)+XGLOB(J,K) 3320 CONTINUE CC=XGLOB(1,1)*XGLOB(1,1) SS=XGLOB(2,1)*XGLOB(2,1) CS=XGLOB(1,1)*XGLOB(2,1) * * EN AXES D'ORTHOTROPIE * EPS1(1)=ALP1 EPS1(2)=ALP2 EPS1(3)=ALP3 EPS1(4)=AL12 * * CHGT D'AXES * EPS2(1)=CC*EPS1(1)+SS*EPS1(2)-CS*EPS1(4) EPS2(2)=CC*EPS1(2)+SS*EPS1(1)+CS*EPS1(4) EPS2(4)=CS*(EPS1(1)-EPS1(2))*2.D0+(CC-SS)*EPS1(4) EPS2(3)=EPS1(3) * IF(IFOUR.EQ.-1.OR.IFOUR.EQ.0)THEN RES(1)=EPS2(1)*TEMP RES(2)=EPS2(2)*TEMP RES(3)=EPS2(3)*TEMP RES(4)=EPS2(4)*TEMP ELSE RES(1)=EPS2(1)*TEMP RES(2)=EPS2(2)*TEMP RES(3)=EPS2(3)*TEMP RES(4)=EPS2(4)*TEMP RES(5)=0.D0 RES(6)=0.D0 ENDIF * * TRIDIMENSIONNEL * ELSEIF(IFOUR.EQ.2)THEN ALP1= VALMAT(1) ALP2= VALMAT(2) ALP3= VALMAT(3) AL12= VALMAT(4) AL13= VALMAT(5) AL23= VALMAT(6) XLOC(1,1)=VALMAT(7) XLOC(2,1)=VALMAT(8) XLOC(3,1)=VALMAT(9) XLOC(1,2)=VALMAT(10) XLOC(2,2)=VALMAT(11) XLOC(3,2)=VALMAT(12) C DEFINITION DES AXES ORTHO./AXES GLOBAUX DO 3330 K=1,IDIM DO 3330 J=1,IDIM DO 3330 I=1,IDIM XGLOB(J,K)=TXR(J,I)*XLOC(I,K)+XGLOB(J,K) 3330 CONTINUE * * MATRICE DE TRANSFORMATION * DO 3331 IC=1,3 DO 3331 IL=1,3 ROTS (IL,IC)=XGLOB(IL,IC)*XGLOB(IL,IC) 3331 CONTINUE C DO 3332 IL=1,3 ROTS (IL,4)=XGLOB(IL,1)*XGLOB(IL,2) ROTS (IL,5)=XGLOB(IL,2)*XGLOB(IL,3) ROTS (IL,6)=XGLOB(IL,1)*XGLOB(IL,3) 3332 CONTINUE C DO 3333 IC=1,3 ROTS (4,IC)=2.D0*XGLOB(1,IC)*XGLOB(2,IC) ROTS (5,IC)=2.D0*XGLOB(2,IC)*XGLOB(3,IC) ROTS (6,IC)=2.D0*XGLOB(1,IC)*XGLOB(3,IC) 3333 CONTINUE C DO 3334 IL=4,6 IL1=IL-3 IL2=IL1+1 IF(IL2.GT.3)IL2=IL2-3 DO 3334 IC=4,6 IC1=IC-3 IC2=IC1+1 IF(IC2.GT.3)IC2=IC2-3 ROTS (IL,IC)=XGLOB(IL1,IC1)*XGLOB(IL2,IC2)+ . XGLOB(IL1,IC2)*XGLOB(IL2,IC1) 3334 CONTINUE DO 3335 IC=1,6 AA=ROTS (6,IC) ROTS (6,IC)=ROTS (5,IC) ROTS (5,IC)=AA 3335 CONTINUE DO 3336 IL=1,6 AA=ROTS (IL,6) ROTS (IL,6)=ROTS (IL,5) ROTS (IL,5)=AA 3336 CONTINUE * * EN AXES D'ORTHOTROPIE * EPS1(1)=ALP1 EPS1(2)=ALP2 EPS1(3)=ALP3 EPS1(4)=AL12 EPS1(5)=AL13 EPS1(6)=AL23 * * CHGT D'AXES * DO 3350 I=1,6 EPS2(I)=0.D0 DO 3350 J=1,6 EPS2(I)=ROTS(I,J)*EPS1(J)+EPS2(I) 3350 CONTINUE * RES(1)=EPS2(1)*TEMP RES(2)=EPS2(2)*TEMP RES(3)=EPS2(3)*TEMP RES(4)=EPS2(4)*TEMP RES(5)=EPS2(5)*TEMP RES(6)=EPS2(6)*TEMP ELSE KERRE=19 GOTO 99 ENDIF ELSE IF(MFR.EQ.75) THEN IF (IDIM.EQ.3) THEN ALP1= VALMAT(1) ALP2= VALMAT(2) ALP3= VALMAT(3) ALQ1= VALMAT(4) ALQ2= VALMAT(5) ALQ3= VALMAT(6) * EPS1(1)=ALP1 EPS1(2)=ALP2 EPS1(3)=ALP3 EPS1(4)=ALQ1 EPS1(5)=ALQ2 EPS1(6)=ALQ3 * DO I=1,6 RES(I)=EPS1(I)*TEMP ENDDO * ELSE IF (IDIM.EQ.2) THEN ALP1= VALMAT(1) ALP2= VALMAT(2) ALQ3= VALMAT(3) * EPS1(1)=ALP1 EPS1(2)=ALP2 EPS1(3)=ALQ3 * DO I=1,3 RES(I)=EPS1(I)*TEMP ENDDO ENDIF ELSE KERRE=19 ENDIF * 99 CONTINUE RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales