Télécharger matp1.eso

Retour à la liste

Numérotation des lignes :

matp1
  1. C MATP1 SOURCE FANDEUR 22/01/03 21:15:30 11237
  2. SUBROUTINE MATP1(NBMAIL,IPGEOM,IPMAHY,IPRIG1,COEF,DELTAT,IPCK,
  3. S IPRIG2)
  4. C-----------------------------------------------------------------------
  5. C Calcul de la matrice en trace de charge dans le cas d'une
  6. C formulation mixte hybride pour les equations de DARCY.
  7. C-----------------------------------------------------------------------
  8. C
  9. C---------------------------
  10. C Parametres Entree/Sortie :
  11. C---------------------------
  12. C
  13. C E/ NBMAIL : Nombre de zones élémentaires de MMODEL
  14. C E/ IPGEOM : Pointeur de l'objet maillage
  15. C E/ IPMAHY : Segment contenant le pointeur vers le meleme des
  16. C connectivites elements/faces pour les zones du MMODEL
  17. C ou on a defini DARCY.
  18. C E/ IPRIG1 : RIGIDITE de sous type 'DARCY'
  19. C E/ COEF : Parametre de discretisation temporelle (theta-methode)
  20. C E/ DELTAT : Pas de discretisation temporelle
  21. C E/ IPCK : MCHAML donnant pour chaque element Ck|K|
  22. C /S IPRIG2 : RIGIDITE de sous type 'HYBTP'
  23. C
  24. C----------------------
  25. C Variables en COMMON :
  26. C----------------------
  27. C
  28. C E/ IFOMOD : Voir CCOPTIO
  29. C E/ NOMDD(20) : Voir CCHAMP
  30. C E/ NOMDU(20) : Voir CCHAMP
  31. C
  32. C
  33. C-----------------------------------------------------------------------
  34. C
  35. C Langage : ESOPE + FORTRAN77
  36. C
  37. C Auteurs : 08/93 F.DABBENE - Cas permanent
  38. C 09/94 X.NOUVELLON - Extension au cas transitoire
  39. C
  40. C-----------------------------------------------------------------------
  41. IMPLICIT INTEGER(I-N)
  42. IMPLICIT REAL*8 (A-H,O-Z)
  43. *
  44.  
  45. -INC PPARAM
  46. -INC CCOPTIO
  47. -INC CCHAMP
  48. -INC SMRIGID
  49. -INC SMCHAML
  50. -INC SMELEME
  51. *
  52. SEGMENT IPMAHY
  53. INTEGER MAHYBR(NSOUS)
  54. ENDSEGMENT
  55. *
  56. * Initialisations
  57. *
  58. RI1 = IPRIG1
  59. MCHELM = IPCK
  60. *
  61. * Création du chapeau de l'objet RIGIDITE
  62. *
  63. NRIGE = 6
  64. NRIGEL = NBMAIL
  65. SEGINI MRIGID
  66. IPRIG2 = MRIGID
  67. ICHOLE = 0
  68. IMGEO1 = 0
  69. IMGEO2 = 0
  70. IFORIG = IFOUR
  71. ISUPEQ = 0
  72. MTYMAT = 'HYBTP '
  73. NBGEOR = 0
  74. DO 10 IA=1,NBMAIL
  75. IRIGEL(4,IA) = 0
  76. COERIG(IA) = 1.D0
  77. 10 CONTINUE
  78. *
  79. *= BOUCLE SUR LES MAILLAGES ELEMENTAIRES,ZONE IMAIL
  80. *
  81. SEGACT IPMAHY
  82. IF (IPCK.NE.0) SEGACT MCHELM
  83. SEGACT RI1
  84. DO 30 IMAIL=1,NBMAIL
  85. *
  86. * Recuperation de l'objet maillage ELTFA pour la zone IMAIL
  87. *
  88. IMAHYB = MAHYBR(IMAIL)
  89. IF (IMAHYB.EQ.0) GOTO 30
  90. *
  91. * Récupération du MELVAL de la sous zone pour le MCHAML
  92. *
  93. IF (IPCK.NE.0) THEN
  94. MCHAML = ICHAML(IMAIL)
  95. SEGACT MCHAML
  96. MELVAL = IELVAL(1)
  97. ELSE
  98. MELVAL = 0
  99. ENDIF
  100. *
  101. * Récupération des matrices masses hybrides pour la sous zone
  102. *
  103. xMATR1 = RI1.IRIGEL(4,IMAIL)
  104. *
  105. * Création du segment DESCRIPTEUR pour la sous zone IMAIL
  106. *
  107. MELEME = IMAHYB
  108. SEGACT MELEME
  109. NBDDL = NUM(/1)
  110. NBELEM = NUM(/2)
  111. *
  112. NLIGRP = NBDDL
  113. NLIGRD = NBDDL
  114. SEGINI DESCR
  115. DO 20 IB=1,NLIGRP
  116. LISINC(IB) = NOMDD(20)
  117. LISDUA(IB) = NOMDU(20)
  118. NOELEP(IB) = IB
  119. NOELED(IB) = IB
  120. 20 CONTINUE
  121. IDESCR = DESCR
  122. SEGDES DESCR
  123. *
  124. * Création du segment IMATRI
  125. * Initialisation du tableau IRIGEL pour la sous zone IMAIL
  126. *
  127. NELRIG = NBELEM
  128. SEGINI,xMATRI=xmatr1
  129. IRIGEL(1,IMAIL) = IMAHYB
  130. IRIGEL(2,IMAIL) = 0
  131. IRIGEL(3,IMAIL) = IDESCR
  132. IRIGEL(4,IMAIL) = xMATRI
  133. IRIGEL(5,IMAIL) = 0
  134. IRIGEL(6,IMAIL) = 0
  135. SEGDES xMATRI
  136. *
  137. * Calcul de RIGIDITE resultat pour la sous zone
  138. *
  139. CALL MATP2(xmatr1,COEF,DELTAT,MELVAL,xMATRI)
  140. 30 CONTINUE
  141. SEGDES RI1
  142. SEGDES IPMAHY
  143. SEGDES MRIGID
  144. END
  145.  
  146.  
  147.  
  148.  

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