Télécharger chaleu.eso

Retour à la liste

Numérotation des lignes :

chaleu
  1. C CHALEU SOURCE CB215821 24/04/12 21:15:13 11897
  2.  
  3. C=======================================================================
  4. C= C H A L E U =
  5. C= ----------- =
  6. C= =
  7. C= OPERATEUR CAST3M "SOURCE" : =
  8. C= --------------------------- =
  9. C= FF1 = 'SOURCE' MODL1 | S1 MAIL1 | ( CARA1 ) ( 'ELEM' ) ; =
  10. C= | CHP1 | =
  11. C= | CHEL1 | =
  12. C= =
  13. C= Cet operateur sert a calculer les flux nodaux equivalents a une =
  14. C= source volumique de chaleur (CHPOINT au second membre) =
  15. C= =
  16. C= ARGUMENTS : =
  17. C= ----------- =
  18. C= MODL1 (MMODEL) Modele (global) associe a la structure =
  19. C= S1 (FLOTTANT) Valeur algebrique de la source (constante) =
  20. C= MAI1 (MAILLAGE) Partie de la structure ou on impose la source =
  21. C= de chaleur de valeur S1. =
  22. C= CHP1 (CHPOINT) Valeurs algebriques des sources aux NOEUDS =
  23. C= CHEL1 (MCHAML) Valeurs algebriques des sources par ELEMENT =
  24. C= CARA1 (MCHAML) Caracteristiques geometriques (utilisees dans =
  25. C= le cas des elements de type COQUE et BARRe) =
  26. C= Sous-type 'CARACTERISTIQUES' =
  27. C= =
  28. C= RESULTAT : =
  29. C= ---------- =
  30. C= FF1 (CHPOINT) Flux nodaux equivalents =
  31. C= =
  32. C= Remarques : =
  33. C= ----------- =
  34. C= Le CHPOINT resultat FF1 est de nature DISCRETE. =
  35. C= Si le MOT 'ELEM' (facultatif) est present, le champ resultat FF1 =
  36. C= est alors un MCHAML aux NOEUDS. =
  37. C= =
  38. C= Denis ROBERT, le 26 fevrier 1988. =
  39. C=======================================================================
  40.  
  41. SUBROUTINE CHALEU
  42.  
  43. IMPLICIT INTEGER(I-N)
  44. IMPLICIT REAL*8 (A-H,O-Z)
  45.  
  46.  
  47. -INC PPARAM
  48. -INC CCOPTIO
  49. -INC SMCOORD
  50.  
  51. -INC SMMODEL
  52. -INC SMCHAML
  53.  
  54. CHARACTER*4 MOTELE(1)
  55. CHARACTER*(LOCOMP) MOCOMP
  56. DATA MOTELE / 'ELEM' /
  57.  
  58. segact mcoord
  59. C 1 - LECTURE DES ARGUMENTS DE L'OPERATEUR
  60. C ==========================================
  61. C 1.1 - Lecture FACULTATIVE du mot 'ELEM'
  62. C =====
  63. ICLE = 0
  64. CALL LIRMOT(MOTELE,1,ICLE,0)
  65. C =====
  66. C 1.2 - Lecture OBLIGATOIRE du modele (IPMODL)
  67. C =====
  68. MOTERR(1:8)='MODELE'
  69. CALL MESLIR(-137)
  70. CALL LIROBJ('MMODEL ',IPMODL,1,IRet)
  71. CALL ACTOBJ('MMODEL ',IPMODL,1)
  72. IF (IERR.NE.0) RETURN
  73. C =====
  74. C 1.3 - Lecture OBLIGATOIRE des sources volumiques donnees par :
  75. C 1) un CHPOINT (IPCHPO)
  76. C ou 2) d'un maillage (IPGEOM) et d'un flottant (S1)
  77. C ou 3) d'un MCHAML (IPCHEL)
  78. C =====
  79. IPCHPO = 0
  80. S1 = 0.D0
  81. IPGEOM = 0
  82. IPCHEL = 0
  83. CALL MESLIR(-138)
  84. CALL LIROBJ('CHPOINT ',IPCHPO,0,iret)
  85. IF (iret.EQ.0) THEN
  86. CALL MESLIR(-139)
  87. CALL LIRREE(S1,0,iret)
  88. IF (iret.NE.0) THEN
  89. MOTERR(1:8)='MAILLAGE'
  90. CALL MESLIR(-137)
  91. CALL LIROBJ('MAILLAGE',IPGEOM,1,iret)
  92. CALL ACTOBJ('MAILLAGE',IPGEOM,1)
  93. ELSE
  94. CALL LIROBJ('MCHAML ',IPCHEL,1,iret)
  95. CALL ACTOBJ('MCHAML ',IPCHEL,1)
  96. ENDIF
  97.  
  98. ELSE
  99. CALL ACTOBJ('CHPOINT ',IPCHPO,1)
  100. ENDIF
  101. IF (IERR.NE.0) RETURN
  102. C =====
  103. C 1.4 - Lecture FACULTATIVE du champ de caracteristiques (IPCARA)
  104. C =====
  105. IPCARA = 0
  106. IPCAR1 = 0
  107. CALL MESLIR(-145)
  108. CALL LIROBJ('MCHAML ',IPCARA,0,iret)
  109. IF (iret .EQ. 1) CALL ACTOBJ('MCHAML ',IPCARA,1)
  110. IF (IERR.NE.0) RETURN
  111. C =====
  112. C 1.5 - Lecture de la composante de la source (MOCOMP)
  113. C =====
  114. MOCOMP = ' '
  115. CALL LIRCHA(MOCOMP,0,iret)
  116. IF(iret .EQ. 1)THEN
  117. PRINT *,'Syntaxe non presente dans la notice !'
  118. CALL ERREUR(5)
  119. ENDIF
  120. IF (IERR.NE.0) RETURN
  121.  
  122. C 2 - VERIFICATION DU MODELE A TRAITER
  123. C ======================================
  124. IPMOD1 = 0
  125. C IPMOD1 : Modele a traiter
  126. C IFORMU : indice correspondant a la formulation
  127. C ITYPEF : indicateur du type d'elements (massif, coque ou barre)
  128. CALL CHALVM(IPMODL,IPMOD1,IFORMU,ITYPEF)
  129. IF (IERR.NE.0) GOTO 9900
  130.  
  131. C 3 - ANALYSE DU TERME SOURCE
  132. C =============================
  133. C Reduction du MCHAML de sources si fourni
  134. IF (IPCHEL.NE.0) THEN
  135. IPCHMZ = IPCHEL
  136. CALL REDUAF(IPCHMZ,IPMOD1,IPCHEL,0,iok,kerre)
  137. IF (iok.NE.1) CALL ERREUR(kerre)
  138. IF (IERR.NE.0) GOTO 9900
  139. C Si IPCHEL, verif. si caracteristiques sont dans MCHAML source
  140. IF (IPCARA.EQ.0.AND.(ITYPEF.EQ.2.OR.ITYPEF.EQ.3)) THEN
  141. CALL ECRCHA('GEOM')
  142. CALL ECROBJ('MMODEL ',IPMOD1)
  143. CALL EXTRAI
  144. IF (IERR.NE.0) GOTO 9900
  145. CALL LIROBJ('LISTMOTS',MLMOT1,1,IRET)
  146. IF (IERR.NE.0) GOTO 9900
  147. CALL EXCOC2(IPCHEL,MLMOT1,IPCAR1,MLMOT1,1)
  148. IF (IERR.NE.0) GOTO 9900
  149. IPCARA = IPCAR1
  150. ENDIF
  151. ENDIF
  152. C Mise sous forme de MCHAML des donnees d'entrees et
  153. C Determination du support du MCHAML de sources
  154. CALL CHALVS(IPMOD1,IFORMU,ITYPEF, IPCHPO,S1,IPGEOM,IPCHEL,
  155. & IPCHSO,ISUPSO)
  156. IF (IERR.NE.0) GOTO 9900
  157.  
  158. C 4 - ANALYSE DU CHAMP DE CARACTERISTIQUES
  159. C ==========================================
  160. C Verification de l'existence des caracteristiques
  161. C dans le cas d'elements COQUEs et BARREs.
  162. C Si IPCHEL, verif. si caracteristiques sont dans MCHAML source
  163. IF (IPCARA.EQ.0) THEN
  164. IF (ITYPEF.EQ.2) THEN
  165. CALL ERREUR(514)
  166. ELSE IF (ITYPEF.EQ.3) THEN
  167. CALL ERREUR(518)
  168. ENDIF
  169. IF (IERR.NE.0) GOTO 9900
  170. ELSE
  171. C En elements MASSIFs, aucune caracteristique n'est necessaire.
  172. IF (ITYPEF.EQ.1) IPCARA = 0
  173. ENDIF
  174. IF (IPCARA.NE.0) THEN
  175. IPCHMZ = IPCARA
  176. CALL REDUAF(IPCHMZ,IPMOD1,IPCARA,0,iok,kerre)
  177. IF (iok.NE.1) CALL ERREUR(kerre)
  178. IF (IERR.NE.0) GOTO 9900
  179. C
  180. mchelm = IPCARA
  181. SEGACT,mchelm
  182. IF (mchelm.titche.NE.'CARACTERISTIQUES') THEN
  183. MOTERR(1:16) = 'CARACTERISTIQUES'
  184. CALL ERREUR(291)
  185. C SEGDES,mchelm
  186. GOTO 9900
  187. ENDIF
  188. ENDIF
  189.  
  190. C 5 - CALCUL DES FLUX NODAUX EQUIVALENTS
  191. C ========================================
  192. CALL CHAL1(IPMOD1,IFORMU,ITYPEF, IPCHSO,ISUPSO, IPCARA, IPCHAL)
  193. IF (IERR.NE.0 .OR. IPCHAL.EQ.0) GOTO 9900
  194.  
  195. C 6 - ECRITURE DE L'OBJET RESULTAT (CHPOINT OU MCHAML)
  196. C ======================================================
  197. IF (ICLE.EQ.0) THEN
  198. CALL CHAMPO(IPCHAL,0,IPCHAP,iret)
  199. C= Le resultat est un CHPOINT de nature DISCRETE.
  200. MCHEL1=IPCHAL
  201. SEGSUP,MCHEL1
  202. IF (iret.NE.1 .OR. IERR.NE.0) RETURN
  203. CALL ACTOBJ('CHPOINT ',IPCHAP,1)
  204. CALL ECROBJ('CHPOINT ',IPCHAP)
  205. ELSE
  206. CALL ACTOBJ('MCHAML ',IPCHAL,1)
  207. CALL ECROBJ('MCHAML ',IPCHAL)
  208. ENDIF
  209.  
  210. C 7 - FIN
  211. C =========
  212. 9900 CONTINUE
  213. IF (IPMOD1.NE.0 .AND. IPMOD1 .NE. IPMODL) THEN
  214. MMODE1 = IPMOD1
  215. SEGSUP,MMODE1
  216. ENDIF
  217. IF (IPCAR1.NE.0 .AND. IPCAR1 .NE. IPCHEL) THEN
  218. MCHEL1 = IPCAR1
  219. SEGSUP,MCHEL1
  220. ENDIF
  221.  
  222. END
  223.  
  224.  
  225.  
  226.  

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