1 : C KREPER SOURCE CHAT 05/01/13 01:06:37 5004 2 : SUBROUTINE KREPER(NES,NSOM,U1,A1,HCM) 3 : IMPLICIT INTEGER(I-N) 4 : IMPLICIT REAL*8 (A-H,O-Z) 5 : DIMENSION U1(NES),A1(NES,NSOM),HCM(NES,NES) 6 : DIMENSION R(3,3),T1(3),T2(3) 7 : C 8 : C Calcul des facteurs de forme en 3D 9 : C calcul de la matrice de passage du repere H.C au repere global 10 : C 11 : C NES : dim espace 12 : C NSOM : nombre de sommets 13 : C U1 : vecteur normal unitaire 14 : C A1 : sommets du triangle 15 : C HCM : matrice de passage 16 : C le repere local est orthonorme =(U1,A1.12,produit vectoriel) 17 : C 18 : DO 1 I=1,NES 19 : R(I,1)=U1(I) 20 : T1(I)=A1(I,2)-A1(I,1) 21 : 1 CONTINUE 22 : 23 : S=0.D0 24 : DO 2 I=1,NES 25 : S = S+T1(I)*T1(I) 26 : 2 CONTINUE 27 : S = DSQRT(S) 28 : 29 : IF(S.LT.1D-10) THEN 30 : WRITE(6,*) ' >KREPER longueur cote 1 nulle' 31 : ELSE 32 : DO 3 I=1,NES 33 : T1(I)=T1(I)/S 34 : 3 CONTINUE 35 : 36 : C produit vectoriel 36 : CALL KPVEC(U1,T1,T2) 37 : 38 : DO 4 I=1,NES 39 : R(I,2)=T1(I) 40 : R(I,3)=T2(I) 41 : 4 CONTINUE 42 : 43 : C matrice inverse 43 : CALL KPINV3(R,HCM) 44 : 45 : C write(6,*) ' >KREPER : matrice R ' 45 : C CALL UTPRIN(R,NES,NES) 46 : C write(6,*) ' >KREPER : matrice inverse ' 46 : C CALL UTPRIN(HCM,NES,NES) 47 : ENDIF 48 : 49 : RETURN 50 : END 51 : 52 :
© Cast3M 2003 - All rights reserved.
Disclaimer