Download zcoloc.eso

Back to the list

   1 : C ZCOLOC    SOURCE    AM        12/02/06    21:16:18     7281           
   2 :       SUBROUTINE ZCOLOC(XE,SHPTOT,NBNO,MELE,IFOUR,IGAU,BPSS)
   3 : C=======================================================================
   4 : C    -CALCUL DE LA MATRICE DE PASSAGE BPSS
   5 : C=======================================================================
   6 : C  INPUT
   7 : C     XE     = COORDONNEES  DE L ELEMENT
   8 : C     SHPTOT = FONCTIONS DE FORME
   9 : C            = SHPTOT(1,...) = FONCTIONS DE FORME
  10 : C            = SHPTOT(2,...) = DERIVEE PAR RAPPORT A QSI
  11 : C            = SHPTOT(3,...) = DERIVEE PAR RAPPORT A ETA
  12 : C     NBNO   = NOMBRE DE NOEUDS DE L'ELEMENT
  13 : C     MELE   = NUMERO DE L'ELEMENT FINI
  14 : C     IFOUR  
  15 : C  OUTPUT
  16 : C     BPSS   = MATRICE DE PASSAGE REPERE GLOBAL/REPERE LOCAL
  17 : C=======================================================================
  18 :       IMPLICIT INTEGER(I-N)
  19 :       IMPLICIT REAL*8(A-H,O-Z)
  20 :       DIMENSION XE(3,*),BPSS(3,3),SHPTOT(6,NBNO,*)
  21 :       DIMENSION S1(3),SN(3)
  22 : C
  23 :       NDIM = 2
  24 :       IF(IFOUR.GT.0) NDIM = 3
  25 : C
  26 : C----------     CALCUL DE LA MATRICE DE  PASSAGE
  27 : C
  28 :       DO 6 I=1,3
  29 :          S1(I)=0.0D0
  30 :          SN(I)=0.0D0
  31 :     6 CONTINUE
  32 : C
  33 : C-------------------TANGENTE AU POINT DE GAUSS IGAU SELON QSI
  34 : C
  35 :       DO 7 I=1,NBNO
  36 :          DO 77 J=1,NDIM 
  37 :            S1(J) = S1(J) + ( SHPTOT(2,I,IGAU)*XE(J,I) )
  38 :    77    CONTINUE
  39 :     7  CONTINUE
  40 : C
  41 : C-------------------NORMALISATION DE S1
  42 : C
  43 :        XNORME = SQRT((S1(1)**2) + (S1(2)**2) + (S1(3)**2))
  44 :        DO I=1,NDIM
  45 :          S1(I) = S1(I) / XNORME
  46 :        ENDDO 
  47 : 
  48 : *
  49 : *    CAS PARTICULIERS 2D,3D
  50 : *
  51 : 
  52 :        GO TO (200,300),NDIM-1
  53 :        GO TO 99
  54 :  200   CONTINUE
  55 : 
  56 : ***************
  57 : *    CAS 2D   *
  58 : ***************
  59 : C
  60 : C-------------------NORMALE (PAR ROTATION DE 90 DEGRES )
  61 : C
  62 :        SN(1) = -S1(2)
  63 :        SN(2) =  S1(1)
  64 : C
  65 : C-------------------STOCKAGE DE LA MATRICE DE PASSAGE
  66 : C
  67 :        DO 10 I=1,2
  68 :           BPSS(1,I) = S1(I)
  69 :           BPSS(2,I) = SN(I)
  70 :    10  CONTINUE
  71 : *
  72 :        GO TO 400
  73 : *
  74 : 
  75 :  300   CONTINUE
  76 : 
  77 : ***************
  78 : *    CAS 3D   *  PAS ENCORE DISPONIBLE
  79 : ***************
  80 :        GO TO 99
  81 : 
  82 : 
  83 :  400  CONTINUE
  84 : 
  85 :       RETURN
  86 : 
  87 : 99    CONTINUE
  88 : 
  89 :       RETURN
  90 :       END
  91 :  
  92 :  
  93 :  
  94 :  

© Cast3M 2003 - All rights reserved.
Disclaimer