Télécharger matglo.eso

Retour à la liste

Numérotation des lignes :

matglo
  1. C MATGLO SOURCE CB215821 26/08/24 21:17:16 12622
  2. SUBROUTINE MATGLO(CMAT,CMAT1,CMAT2,TXR,XLOC,XGLOB,VALMAT,
  3. S NDIM,IDIM,INM,IFOMOD)
  4. C-----------------------------------------------------------------------
  5. C Transformation d'une matrice exprimée dans le repere local a l'element
  6. C au repere global dans le cas d'un materiau ...trope.
  7. C Cette matrice, issue du MCHAML materiau de sous type caracteristique,
  8. C caracterise le materiau : Conductibilité, Perméabilité ...
  9. C-----------------------------------------------------------------------
  10. C
  11. C---------------------------
  12. C Parametres Entree/Sortie :
  13. C---------------------------
  14. C
  15. C /S CMAT : Matrice caracterisant le materiau dans le repere global.
  16. C E/ TXR : Cosinus directeurs des axes locaux / repere global.
  17. C E/ VALMAT : Valeurs des coeff. de la matrice CMAT et des
  18. C cosinus directeurs des axes d'ortho. / repere local.
  19. C E/ NDIM : Taille de la matrice CMAT (=IDIM sauf en FOURIER=3)
  20. C E/ IDIM : Dimension de l'espace (2 en 2D et 3 en 3D)
  21. C E/ INM : Indique la Nature du Materiau (1/iso,2/ortho,3/aniso)
  22. C E/ IFOMOD : Vaut 1 si on utilise les elements massifs 2D de FOURIER.
  23. C
  24. C----------------------
  25. C Tableaux de travail :
  26. C----------------------
  27. C
  28. C CMAT1 : Matrice caracterisant le materiau dans le repere local.
  29. C CMAT2 : Matrice caracterisant le materiau dans le repere global.
  30. C XLOC : Cosinus directeurs des axes d'ortho. / repere local.
  31. C XGLOB : Cosinus directeurs des axes d'ortho. / repere global.
  32. C
  33. C-----------------------------------------------------------------------
  34. C
  35. C Langage : FORTRAN77
  36. C
  37. C Auteurs : F.DABBENE 08/93 d'apres tnumac.eso de P. DOWLATYARI 10/90
  38. C
  39. C-----------------------------------------------------------------------
  40. IMPLICIT INTEGER(I-N)
  41. IMPLICIT REAL*8(A-H,O-Z)
  42. C
  43. DIMENSION CMAT(NDIM,NDIM), CMAT1(IDIM,IDIM), CMAT2(IDIM,IDIM),
  44. S TXR (IDIM,IDIM), XLOC (IDIM,IDIM), XGLOB(IDIM,IDIM),
  45. S VALMAT(*)
  46. C
  47. C= Mise a zero des tableaux de travail
  48. C
  49. CALL ZERO(CMAT,NDIM,NDIM)
  50. CALL ZERO(CMAT1,IDIM,IDIM)
  51. CALL ZERO(CMAT2,IDIM,IDIM)
  52. CALL ZERO(XGLOB,IDIM,IDIM)
  53. C
  54. C------------------------------------------------------------------
  55. C RECUPERATION DE LA MATRICE DANS LE REPERE LOCAL ET CONSTRUCTION
  56. C DE LA MATRICE DE PASSAGE DU REPERE LOCAL AU REPERE GLOBAL
  57. C------------------------------------------------------------------
  58. C
  59. IF (IDIM.EQ.2) THEN
  60. C
  61. C= ELEMENT MASSIF BIDIM
  62. C
  63. IF (INM.EQ.1) THEN
  64. C
  65. C- Materiau isotrope
  66. C
  67. CMAT(1,1) = VALMAT(1)
  68. CMAT(2,2) = VALMAT(1)
  69. RETURN
  70. ELSEIF (INM.EQ.2) THEN
  71. C
  72. C- Materiau orthotrope
  73. C
  74. CMAT1(1,1) = VALMAT(1)
  75. CMAT1(2,2) = VALMAT(2)
  76. C
  77. XLOC(1,1) = VALMAT(3)
  78. XLOC(2,1) = VALMAT(4)
  79. XLOC(1,2) =-VALMAT(4)
  80. XLOC(2,2) = VALMAT(3)
  81. ELSEIF (INM.EQ.3) THEN
  82. C
  83. C- Materiau anisotrope
  84. C
  85. CMAT1(1,1) = VALMAT(1)
  86. CMAT1(2,2) = VALMAT(2)
  87. CMAT1(2,1) = VALMAT(3)
  88. CMAT1(1,2) = CMAT1(2,1)
  89. C
  90. XLOC(1,1) = VALMAT(4)
  91. XLOC(2,1) = VALMAT(5)
  92. XLOC(1,2) =-VALMAT(5)
  93. XLOC(2,2) = VALMAT(4)
  94. ENDIF
  95. C
  96. C- Calcul des cos.directeurs des axes orth. /repere global
  97. C- XGLOB=TXR*XLOC
  98. C
  99. DO 22 K=1,IDIM
  100. DO 21 J=1,IDIM
  101. DO 10 I=1,IDIM
  102. XGLOB(K,J) = TXR(J,I)*XLOC(I,K) + XGLOB(K,J)
  103. 10 CONTINUE
  104. 21 CONTINUE
  105. 22 CONTINUE
  106. ELSE
  107. C
  108. C= ELEMENT MASSIF TRIDIM
  109. C
  110. IF (INM.EQ.1) THEN
  111. C
  112. C- Materiau isotrope
  113. C
  114. CMAT(1,1) = VALMAT(1)
  115. CMAT(2,2) = VALMAT(1)
  116. CMAT(3,3) = VALMAT(1)
  117. RETURN
  118. ELSEIF (INM.EQ.2) THEN
  119. C
  120. C- Materiau orthotrope
  121. C
  122. CMAT1(1,1) = VALMAT(1)
  123. CMAT1(2,2) = VALMAT(2)
  124. CMAT1(3,3) = VALMAT(3)
  125. C
  126. XLOC(1,1) = VALMAT(4)
  127. XLOC(2,1) = VALMAT(5)
  128. XLOC(3,1) = VALMAT(6)
  129. XLOC(1,2) = VALMAT(7)
  130. XLOC(2,2) = VALMAT(8)
  131. XLOC(3,2) = VALMAT(9)
  132. ELSEIF (INM.EQ.3) THEN
  133. C
  134. C- Materiau anisotrope
  135. C
  136. CMAT1(1,1) = VALMAT(1)
  137. CMAT1(2,2) = VALMAT(2)
  138. CMAT1(3,3) = VALMAT(3)
  139. CMAT1(2,1) = VALMAT(4)
  140. CMAT1(1,2) = CMAT1(2,1)
  141. CMAT1(3,1) = VALMAT(5)
  142. CMAT1(1,3) = CMAT1(3,1)
  143. CMAT1(3,2) = VALMAT(6)
  144. CMAT1(2,3) = CMAT1(3,2)
  145. C
  146. XLOC(1,1) = VALMAT(7)
  147. XLOC(2,1) = VALMAT(8)
  148. XLOC(3,1) = VALMAT(9)
  149. XLOC(1,2) = VALMAT(10)
  150. XLOC(2,2) = VALMAT(11)
  151. XLOC(3,2) = VALMAT(12)
  152. ENDIF
  153. C
  154. C- Calcul du vecteur 3
  155. C
  156. CALL CROSS2(XLOC(1,1),XLOC(1,2),XLOC(1,3),IRR)
  157. C
  158. C- Calcul des cos.directeurs des axes orth. /repere global
  159. C- XGLOB=TXR*XLOC
  160. C
  161. DO 24 K=1,IDIM
  162. DO 23 J=1,IDIM
  163. DO 20 I=1,IDIM
  164. XGLOB(K,J) = TXR(J,I)*XLOC(I,K) + XGLOB(K,J)
  165. 20 CONTINUE
  166. 23 CONTINUE
  167. 24 CONTINUE
  168. ENDIF
  169. C
  170. C----------------------------------------------------------
  171. C TRANSFORMATION DE LA MATRICE CMAT1 DANS LE REPERE GLOBAL
  172. C----------------------------------------------------------
  173. C
  174. IF (IFOMOD.EQ.1) THEN
  175. C
  176. C- Element massif bidim de FOURIER
  177. C
  178. CALL PRODT(CMAT2,CMAT1,XGLOB,IDIM,IDIM)
  179. CMAT(1,1)=CMAT2(1,1)
  180. IF (INM.EQ.2) THEN
  181. CMAT(2,2) = VALMAT(5)
  182. ELSE
  183. CMAT(2,2) = VALMAT(6)
  184. ENDIF
  185. CMAT(1,3) = CMAT2(1,2)
  186. CMAT(3,1) = CMAT (1,3)
  187. CMAT(3,3) = CMAT2(2,2)
  188. ELSE
  189. C
  190. C- Element MASSIF : CMAT = transpose(XGLOB)*CMAT1*XGLOB
  191. C
  192. CALL PRODT(CMAT,CMAT1,XGLOB,IDIM,IDIM)
  193. ENDIF
  194. C
  195. RETURN
  196. END
  197.  
  198.  
  199.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales