Download kreper.eso

Back to the list

   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