C POUBSG SOURCE CHAT 05/01/13 02:18:27 5004 SUBROUTINE POUBSG(FORCE,CARAC,COORD,CONT,WORK,KERRE) C----------------------------------------------------------------------- C ROUTINE DE CALCUL DES FORCES INTERNES B*SIGMA C POUR LA POUTRE DROITE C C ENTREE C CONT CONTRAINTES C CARAC TABLEAU DE CARACTERISTIQUES GEOMETRIQUES ET C MATERIELLES DE LA POUTRE ( 11 VALEURS ) C COORD COORDONNEES DES 2 NOEUDS C C SORTIE C FORCE FORCES INTERNES C KERRE INDICE D'ERREUR ( 0 SI PAS DE PB ) C TRAVAIL C WORK(300) C C MAI 85 MILLARD C----------------------------------------------------------------------- IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) DIMENSION CONT(*),CARAC(*),COORD(3,*),VECT(3),P(3,3), . XE(2),YE(2),ZE(2),FORCE(*),WORK(*) C KERRE=0 DO 1 I=1,3 1 VECT(I)=CARAC(6+I) DO 2 I=1,2 XE(I)=COORD(1,I) YE(I)=COORD(2,I) 2 ZE(I)=COORD(3,I) XL=(XE(2)-XE(1))**2+(YE(2)-YE(1))**2+(ZE(2)-ZE(1))**2 XL=SQRT(XL) IF(XL.EQ.0.) GO TO 999 C C VALEURS MOYENNES DANS L ELEMENT C SIGM=0.5D00*(CONT(1)+CONT(7)) TORM=0.5D00*(CONT(4)+CONT(10)) WORK(1)=-SIGM WORK(7)= SIGM WORK(4)=-TORM WORK(10)=TORM WORK(2)=-CONT(2) WORK(8)= CONT(8) WORK(3)=-CONT(3) WORK(9)= CONT(9) WORK(5)= -CONT(5) WORK(11)= CONT(11) WORK(6)= -CONT(6) WORK(12)= CONT(12) C C CALCUL DE LA MATRICE DE PASSAGE C CALL POUPAS(XE,YE,ZE,VECT,P,KERRE) IF(KERRE.NE.0) RETURN C C PASSAGE DES FORCES EN AXES GLOBAUX C CALL POUVEC(WORK,FORCE,P,2) RETURN 999 KERRE=1 RETURN END