Télécharger chmout.eso

Retour à la liste

Numérotation des lignes :

chmout
  1. C CHMOUT SOURCE CHAT 05/01/12 21:59:40 5004
  2. SUBROUTINE CHMOUT(IDSCHI,SP2,IAFFI)
  3. C=====================================================================
  4. C
  5. C IMPRESSION DE LA SPECIATION
  6. C Ce sous programme est appelé par CHIMI2 lorsque IIMPI>0
  7. C
  8. C
  9. C
  10. C=====================================================================
  11. IMPLICIT INTEGER(I-N)
  12. IMPLICIT REAL*8(A-H,O-Z)
  13. SEGMENT IDSCHI
  14. REAL*8 GK(NYDIM),AA(NYDIM,NXDIM),FF(NZDIM,NPDIM)
  15. INTEGER IDX(NXDIM),IDY(NYDIM),IDZ(NZDIM),IDP(NPDIM),NN(6)
  16. INTEGER IDECY(NYDIM),IONZ(NXDIM)
  17. CHARACTER*32 NAME(NXDIM),NAMESP(NYDIM)
  18. ENDSEGMENT
  19. SEGMENT SP2
  20. REAL*8 GX(NXDIM),XX(NXDIM),GS(NZDIM),SS(NZDIM)
  21. REAL*8 TOT(NXDIM),TOTAQ(NXDIM),TOTFIX(NXDIM),GKS(NZDIM)
  22. REAL*8 YY(NXDIM),ZZ(NXDIM,NXDIM),CC(NYDIM),GC(NYDIM)
  23. ENDSEGMENT
  24. C
  25. CHARACTER*10 NAMEH
  26. CHARACTER*28 TYPE(6)
  27. DIMENSION IAT(4),CIAT(12),IDT(12),NAMEH( 12 ),CIFT(36),IDTZ(36)
  28.  
  29.  
  30. DATA TYPE /
  31. &'I - COMPONENTS ',
  32. &'II - COMPLEXES ',
  33. &'III - FIXED SOLIDS ',
  34. &'IV - PRECIPITATED SOLIDS ',
  35. &'V - DISSOLVED SOLIDS ',
  36. &'VI - SPECIES NOT CONSIDERED '/
  37.  
  38. CM********************************************************************
  39. C
  40. C
  41. C COMPONENT OUTPUT
  42. NXDIM=IDX(/1)
  43. NYDIM=IDY(/1)
  44. NZDIM=IDZ(/1)
  45. NPDIM=IDP(/1)
  46. II=NN(1)+NN(2)+NN(3)+NN(4)+NN(5)+NN(6)
  47. CBRUNO
  48. CALL CHMCH2(IDSCHI,SP2)
  49. C WRITE(6,651) ITER,EPS
  50. WRITE(6,660)
  51. DO 60 J=1,NXDIM
  52. IDXJ = IDX(J)
  53. WRITE(6,670) IDXJ,XX(J),GX(J),TOT(J),YY(J),NAME( J)
  54. 60 CONTINUE
  55. C
  56. C
  57. C SPECIES OUTPUT
  58. II=NN(1)+NN(2)+NN(3)+NN(4)+NN(5)+NN(6)
  59. L=0
  60. M=1
  61. DO 100 I=1,II
  62. IF (M.NE.I) GO TO 80
  63. 70 CONTINUE
  64. L=L+1
  65. IF (NN(L).EQ.0) GO TO 70
  66. M=M+NN(L)
  67. WRITE (6,600)
  68. WRITE (6,680) TYPE(L)
  69. 80 CONTINUE
  70. IDYI=IDY(I)
  71. CALL CHIADY(IDZ,NZDIM,IDYI,IYI)
  72. IF(IYI.EQ.0) GOTO 85
  73.  
  74. C SOLID-SOLUTIONS OUTPOUT
  75. IZ=0
  76. DO 86 IS=1,NPDIM
  77. IF(FF(IYI,IS).EQ.0.D0) GOTO 86
  78. IZ=IZ+1
  79. IDTZ(IZ)=IDP(IS)
  80. CIFT(IZ)=FF(IYI,IS)
  81. 86 CONTINUE
  82. IF(IAFFI.EQ.2)GOTO 200
  83. 85 CONTINUE
  84. K=0
  85. DO 90 J=1,NXDIM
  86. IF (ABS(AA(I,J)).LT.1.D-3) GOTO 90
  87. K=K+1
  88. IDT(K)=IDX(J)
  89. C
  90. C
  91. CIAT(K)=AA(I,J)
  92. 90 CONTINUE
  93. DO 95 J=1,K
  94. IDTJ = IDT(J)
  95. CALL CHIADY(IDX,NXDIM,IDTJ,ITJ)
  96. NAMEH(J) = NAME( ITJ)(1:10)
  97. 95 CONTINUE
  98. C
  99. C
  100. IF(K.LE.4)THEN
  101. WRITE (6,690) IDY(I),CC(I),GC(I),GK(I),(NAMEH(J),CIAT(J),J=1,K)
  102. GOTO 100
  103. ELSE
  104. WRITE (6,699) IDY(I),CC(I),GC(I),GK(I),(NAMEH(J),CIAT(J),J=1,4),
  105. *(NAMEH(J),CIAT(J),J=5,K)
  106. GOTO 100
  107. ENDIF
  108.  
  109. C FORMAT D AFFICHAGE DES SOLUTIONS SOLIDES
  110. 200 CONTINUE
  111. WRITE(6,750) IDY(I),CC(I),GC(I),GK(I),(IDTZ(IP),CIFT(IP),IP=1,IZ)
  112. 100 CONTINUE
  113. C
  114. C
  115. C
  116. C
  117. RETURN
  118. C----------------------------------------------------------------------
  119. 600 FORMAT(' ')
  120. 610 FORMAT(' ',' ID',12X,'X',6X,'LOGX',12X,'T',5X,'COMPONENTS')
  121. 620 FORMAT(' ',I5,2X,1PE11.4,2X,0PF8.3,2X,1PE11.4,5X,A10)
  122. 650 FORMAT(' ',' OUTPUT DATA: ITERATIONS = ',I3)
  123. 651 FORMAT(' ',' OUTPUT DATA: ITERATIONS = ',I3,' ( EPS = ',
  124. $ 1PE12.4,' )')
  125. 660 FORMAT(' ',' ID',12X,'X',6X,'LOGX',12X,'T',12X,'Y',5X,
  126. $'SPECIES')
  127. 661 FORMAT(' ',' ID',12X,'X',6X,'LOGX',12X,'T',12X,'Y',8X,
  128. $ 'TDISS',7X,'T0CALC',7X,'EPS1',9X,'EPS2',7X,
  129. $ 'COMPONENT')
  130. 670 FORMAT(' ',I5,2X,1PE11.4,2X,0PF8.3,2(2X,1PE11.4),5X,A10)
  131. 671 FORMAT(' ',I5,2X,1PE11.4,2X,0PF8.3,4(2X,1PE11.4),2(2X,1PE9.2,'(',
  132. $ I1,')'),5X,A10)
  133. 680 FORMAT(' ',' ID',20X,'C',4X,'LOGC',4X,'LOGK',5X,
  134. $'SPECIES: TYPE ',A28)
  135. 690 FORMAT(' ',I5,2X,1PE19.10,2(1X,0PF7.2),3X,4(A8,1X,F6.2,3X))
  136. 699 FORMAT(' ',I5,2X,1PE19.10,2(1X,0PF7.2),3X,4(A8,1X,F6.2,3X),/,
  137. $'0',45X,4(A8,1X,F6.2,3X),/,'0',45X,4(A8,1X,F6.2,3X))
  138. 700 FORMAT(' ',' INPUT DATA')
  139. 705 FORMAT(' ',5X,8A10/)
  140. 710 FORMAT (6H ID,2X,14H LOGK(REF.Q),2X,14H DELH0(REF.Q),2X,
  141. $14H DELCP0(REF.Q),2X,14H ,5X,
  142. $'SPECIES : TYPE ',7A4)
  143. 730 FORMAT(' ',I5,3(2X,F7.2,1H(,A5,1H)),16X,3X,4(2X,A10,I3))
  144. 750 FORMAT(' ',I5,2X,1PE19.10,2(1X,0PF7.2),3X,4(I8,1X,F6.3,3X),/,
  145. $'0',45X,4(I8,1X,F6.3,3X),/,'0',45X,4(I8,1X,F6.3,3X),/,
  146. $'0',45X,4(I8,1X,F6.3,3X),/,'0',45X,4(I8,1X,F6.3,3X),/,
  147. $'0',45X,4(I8,1X,F6.3,3X),/,'0',45X,4(I8,1X,F6.3,3X),/,
  148. $'0',45X,4(I8,1X,F6.3,3X),/,'0',45X,4(I8,1X,F6.3,3X))
  149. C-----------------------------------------------------------------------
  150. C
  151. END
  152.  
  153.  
  154.  
  155.  
  156.  

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