Télécharger sore.eso

Retour à la liste

Numérotation des lignes :

sore
  1. C SORE SOURCE CB215821 24/04/12 21:17:16 11897
  2.  
  3. ************************************************************************
  4. *
  5. * SORE
  6. * ----
  7. *
  8. * FONCTION:
  9. * ---------
  10. * CREATION D UNE MATRICE DE CONDUCTIVITE ASSOCIEE A L EFFET SORET
  11. * INTEGRATION DE N DIV(GRAD T)
  12. * ELEMENTS MASSIFS UNIQUEMENT
  13. *
  14. * PHRASE D'APPEL (EN GIBIANE):
  15. * ----------------------------
  16. *
  17. * CND1 = SORE MOD1 MAT1 MCHAM1 CHPO1 ;
  18. *
  19. * OPERANDES ET RESULTAT:
  20. * ----------------------
  21. *
  22. * CND1 'RIGIDITE' MATRICE DE CONDUCTIVITE
  23. *
  24. * MOD1 'MODELE' STRUCTURE MODELISEE
  25. * MAT1 'MCHAML' PROPRIETES DU MATERIAU
  26. * MCHAM1 'MCHAML' CHAMP DES FACTEURS DU POTENTIEL
  27. * CHPO1 'CHPOINT' POTENTIEL DONT LE GRADIENT EST LA 'FORCE MOTRICE'
  28. *
  29. *
  30. * AUTEUR,DATE DE CREATION:
  31. * ------------------------
  32. *
  33. * J.M.BAZE AVRIL 97
  34. *
  35. * LANGAGE:
  36. * --------
  37. *
  38. * ESOPE + FORTRAN77
  39. *
  40. ************************************************************************
  41.  
  42. SUBROUTINE SORE
  43.  
  44. IMPLICIT INTEGER(I-N)
  45. IMPLICIT REAL*8(A-H,O-Z)
  46.  
  47.  
  48. -INC PPARAM
  49. -INC CCOPTIO
  50. -INC SMCOORD
  51.  
  52. -INC SMCHAML
  53. -INC SMMODEL
  54. -INC SMCHPOI
  55.  
  56. CHARACTER*8 LETYPE
  57. PARAMETER ( LINUM=14,LINUC=12)
  58. INTEGER INUMA(LINUM)
  59.  
  60. * TRI3 TRI6 QUA4 QUA8 CUB8 CU20 PRI6 PR15
  61. DATA INUMA/ 4, 6, 8, 10, 14, 15, 16, 17,
  62. * TET4 TET10 PYR5 PY13 T1D2 T1D3
  63. 1 23, 24, 25, 26, 191, 192 /
  64.  
  65.  
  66. MOTERR(1:8)=' MODELE '
  67. CALL MESLIR(-137)
  68. CALL LIROBJ('MMODEL ',IPMODE,1,iretou)
  69. CALL ACTOBJ('MMODEL ',IPMODE,1)
  70. IF (IERR.NE.0) RETURN
  71. *
  72. CALL MESLIR(-135)
  73. CALL LIROBJ('MCHAML ',IPIN,1,iretou)
  74. CALL ACTOBJ('MCHAML ',IPIN,1)
  75. IF (IERR.NE.0) RETURN
  76. CALL REDUAF(IPIN,IPMODE,IPCHEL,0,IR,KER)
  77. IF (IR .NE.1) CALL ERREUR(KER)
  78. IF (IERR.NE.0) RETURN
  79. * pour eviter un plantage ulterieur
  80. segact mcoord
  81. *
  82. * TEST SUR LE SOUS-TYPE DE LE CHAMELEM
  83. *
  84. MCHELM=IPCHEL
  85. SEGACT,MCHELM
  86. *
  87. LETYPE = TITCHE
  88. IF (LETYPE.NE.'CARACTER') THEN
  89. SEGDES,MCHELM
  90. MOTERR='CARACTERISTIQUES'
  91. CALL ERREUR(291)
  92. RETURN
  93. ENDIF
  94. *
  95. MOTERR(1:8)='MCHAML '
  96. CALL MESLIR(-137)
  97. CALL LIROBJ('MCHAML ',IPIN,1,iretou)
  98. CALL ACTOBJ('MCHAML ',IPIN,1)
  99. IF (IERR.NE.0) RETURN
  100. CALL REDUAF(IPIN,IPMODE,IPCHE1,0,IR,KER)
  101. IF(IR .NE. 1) CALL ERREUR(KER)
  102. IF(IERR .NE. 0) RETURN
  103.  
  104. MOTERR(1:8)='CHPOINT '
  105. CALL MESLIR(-137)
  106. CALL LIROBJ('CHPOINT ',IPCHPO,1,iretou)
  107. CALL ACTOBJ('CHPOINT ',IPCHPO,1)
  108. IF (IERR.NE.0) RETURN
  109.  
  110. MMODEL = IPMODE
  111. NSOUS = KMODEL(/1)
  112. N1 = NSOUS
  113. SEGINI,MMODE1
  114. ITHER = 0
  115. IDIFF = 0
  116. ICOUR = 0
  117. IMOD1=MMODE1
  118.  
  119. C Extraction des formulations THERMIQUES 'CONDUCTION' et DIFFUSION 'FICK'
  120. DO ISOUS = 1, NSOUS
  121. IMODEL = KMODEL(ISOUS)
  122. NMAT = MATMOD(/2)
  123. IF (FORMOD(1).EQ.'DIFFUSION ') THEN
  124. CALL PLACE(MATMOD,NMAT,ipl,'FICK')
  125. IF (ipl .NE. 0) THEN
  126. IDIFF = IDIFF + 1
  127. ICOUR = ICOUR + 1
  128. MMODE1.KMODEL(ICOUR) = IMODEL
  129. ENDIF
  130.  
  131. ELSEIF (FORMOD(1).EQ.'THERMIQUE ') THEN
  132. CALL PLACE(MATMOD,NMAT,ipl,'CONDUCTION')
  133. IF (ipl.NE.0) THEN
  134. ITHER = ITHER + 1
  135. ICOUR = ICOUR + 1
  136. MMODE1.KMODEL(ICOUR) = IMODEL
  137. ENDIF
  138. ENDIF
  139. ENDDO
  140. N1 = ITHER + IDIFF
  141. IF (N1 .LT. NSOUS) SEGADJ,MMODE1
  142.  
  143. C Verification que le modele contienne le necessaire
  144. IF (N1 .EQ. 0) THEN
  145. CALL ERREUR(21)
  146. RETURN
  147. ENDIF
  148.  
  149. CALL SORE1(IMOD1,IPCHEL,IPCHE1,IPCHPO,IPRIGI)
  150. IF (IERR.NE.0) RETURN
  151.  
  152. SEGSUP,MMODE1
  153.  
  154. CALL ECROBJ('RIGIDITE',IPRIGI)
  155.  
  156. END
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  

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