1 : C MAPALI SOURCE CHAT 05/01/13 01:30:39 5004 2 : C MAPALI SOURCE DJ 93/01/12 21:20:55 781 3 : SUBROUTINE MAPALI(XE,NBNN,WORK,B,KERRE) 4 : C======================================================================= 5 : C RECHERCHE DU REPERE LOCAL DE LIA2 ( element de liaison a 2 noeuds) 6 : C======================================================================= 7 : IMPLICIT INTEGER(I-N) 8 : IMPLICIT REAL*8(A-H,O-Z) 9 : DIMENSION XE(3,NBNN),B(3,3),WORK(9) 10 : * --------------------------------------------------- 11 : VX2P=WORK(7) 12 : VY2P=WORK(8) 13 : VZ2P=WORK(9) 14 : C 15 : VX1=XE(1,2)-XE(1,1) 16 : VY1=XE(2,2)-XE(2,1) 17 : VZ1=XE(3,2)-XE(3,1) 18 : VL1=DSQRT(VX1*VX1+VY1*VY1+VZ1*VZ1) 19 : AL=VL1 20 : KERRE=0 21 : IF(AL.EQ.0.D0) THEN 22 : KERRE=1 23 : GO TO 999 24 : ENDIF 25 : C 26 : VX3=VY1*VZ2P-VY2P*VZ1 27 : VY3=VX2P*VZ1-VX1*VZ2P 28 : VZ3=VX1*VY2P-VX2P*VY1 29 : VL3=DSQRT(VX3*VX3+VY3*VY3+VZ3*VZ3) 30 : C 31 : B(1,1)=VX1/VL1 32 : B(1,2)=VY1/VL1 33 : B(1,3)=VZ1/VL1 34 : B(3,1)=VX3/VL3 35 : B(3,2)=VY3/VL3 36 : B(3,3)=VZ3/VL3 37 : B(2,1)=B(3,2)*B(1,3)-B(3,3)*B(1,2) 38 : B(2,2)=B(3,3)*B(1,1)-B(1,3)*B(3,1) 39 : B(2,3)=B(3,1)*B(1,2)-B(3,2)*B(1,1) 40 : 999 CONTINUE 41 : C 42 : * WRITE(*,*) ' matrice BPSS ' 43 : * WRITE(*,1190) ((B(IA,IC),IA=1,3),IC=1,3) 44 : *1199 FORMAT(12(1X,E8.2)) 45 : RETURN 46 : END 47 : 48 :
© Cast3M 2003 - All rights reserved.
Disclaimer