Download chmout.eso

Back to the list

   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
  47 :       CALL CHMCH2(IDSCHI,SP2)
  48 : C     WRITE(6,651) ITER,EPS
  49 :       WRITE(6,660)                                                              
  50 :       DO 60 J=1,NXDIM
  51 :       IDXJ = IDX(J)                                                             
  52 :       WRITE(6,670) IDXJ,XX(J),GX(J),TOT(J),YY(J),NAME( J)
  53 :   60  CONTINUE                                                                  
  54 : C
  55 : C                                                                               
  56 : C SPECIES OUTPUT                                                                
  57 :       II=NN(1)+NN(2)+NN(3)+NN(4)+NN(5)+NN(6)                                    
  58 :       L=0                                                                       
  59 :       M=1                                                                       
  60 :       DO 100 I=1,II                                                             
  61 :       IF (M.NE.I) GO TO 80                                                      
  62 : 70    CONTINUE                                                                  
  63 :       L=L+1                                                                     
  64 :       IF (NN(L).EQ.0) GO TO 70                                                  
  65 :       M=M+NN(L)                                                                 
  66 :       WRITE (6,600)                                                             
  67 :       WRITE (6,680) TYPE(L)                                           
  68 : 80    CONTINUE                                                                  
  69 :       IDYI=IDY(I)
  69 :       CALL CHIADY(IDZ,NZDIM,IDYI,IYI)
  70 :       IF(IYI.EQ.0) GOTO 85
  71 : 
  72 : C SOLID-SOLUTIONS OUTPOUT
  73 :       IZ=0
  74 :       DO 86 IS=1,NPDIM
  75 :         IF(FF(IYI,IS).EQ.0.D0) GOTO 86
  76 :         IZ=IZ+1
  77 :         IDTZ(IZ)=IDP(IS)
  78 :         CIFT(IZ)=FF(IYI,IS)
  79 : 86    CONTINUE
  80 :       IF(IAFFI.EQ.2)GOTO 200
  81 : 85    CONTINUE
  82 :       K=0                                                                       
  83 :       DO 90 J=1,NXDIM
  84 :       IF (ABS(AA(I,J)).LT.1.D-3) GOTO 90
  85 :       K=K+1                                                                     
  86 :       IDT(K)=IDX(J)                                                             
  87 : C
  88 : C
  89 :       CIAT(K)=AA(I,J)
  90 : 90    CONTINUE                                                                  
  91 :       DO 95 J=1,K                                                               
  92 :       IDTJ = IDT(J)                                                             
  92 :       CALL CHIADY(IDX,NXDIM,IDTJ,ITJ)
  93 :       NAMEH(J) = NAME( ITJ)(1:10)
  94 :    95 CONTINUE                                                                  
  95 : C                                                                               
  96 : C
  97 :       IF(K.LE.4)THEN
  98 :       WRITE (6,690) IDY(I),CC(I),GC(I),GK(I),(NAMEH(J),CIAT(J),J=1,K)
  99 :       GOTO 100
 100 :       ELSE
 101 :       WRITE (6,699) IDY(I),CC(I),GC(I),GK(I),(NAMEH(J),CIAT(J),J=1,4),
 102 :      *(NAMEH(J),CIAT(J),J=5,K)
 103 :       GOTO 100
 104 :       ENDIF
 105 : 
 106 : C FORMAT D AFFICHAGE DES SOLUTIONS SOLIDES
 107 :   200 CONTINUE
 108 :       WRITE(6,750) IDY(I),CC(I),GC(I),GK(I),(IDTZ(IP),CIFT(IP),IP=1,IZ)
 109 :   100 CONTINUE                                                                  
 110 : C                                                                               
 111 : C                                                                               
 112 : C
 113 : C                                                                               
 114 :       RETURN                                                                    
 115 : C----------------------------------------------------------------------         
 116 :   600 FORMAT(' ')
 117 :   610 FORMAT(' ','   ID',12X,'X',6X,'LOGX',12X,'T',5X,'COMPONENTS')
 118 :   620 FORMAT(' ',I5,2X,1PE11.4,2X,0PF8.3,2X,1PE11.4,5X,A10)
 119 :   650 FORMAT(' ','  OUTPUT DATA:  ITERATIONS = ',I3)
 120 :   651 FORMAT(' ','  OUTPUT DATA:  ITERATIONS = ',I3,' ( EPS = ',
 121 :      $       1PE12.4,' )')                                                      
 122 :   660 FORMAT(' ','   ID',12X,'X',6X,'LOGX',12X,'T',12X,'Y',5X,
 123 :      $'SPECIES')                                                                
 124 :   661 FORMAT(' ','   ID',12X,'X',6X,'LOGX',12X,'T',12X,'Y',8X,
 125 :      $       'TDISS',7X,'T0CALC',7X,'EPS1',9X,'EPS2',7X,                        
 126 :      $       'COMPONENT')
 127 :   670 FORMAT(' ',I5,2X,1PE11.4,2X,0PF8.3,2(2X,1PE11.4),5X,A10)
 128 :   671 FORMAT(' ',I5,2X,1PE11.4,2X,0PF8.3,4(2X,1PE11.4),2(2X,1PE9.2,'(',
 129 :      $       I1,')'),5X,A10)                                                    
 130 :   680 FORMAT(' ','   ID',20X,'C',4X,'LOGC',4X,'LOGK',5X,
 131 :      $'SPECIES:  TYPE ',A28)                                                    
 132 :   690 FORMAT(' ',I5,2X,1PE19.10,2(1X,0PF7.2),3X,4(A8,1X,F6.2,3X))
 133 :   699 FORMAT(' ',I5,2X,1PE19.10,2(1X,0PF7.2),3X,4(A8,1X,F6.2,3X),/,
 134 :      $'0',45X,4(A8,1X,F6.2,3X),/,'0',45X,4(A8,1X,F6.2,3X))
 135 :   700 FORMAT(' ','  INPUT DATA')
 136 :   705 FORMAT(' ',5X,8A10/)
 137 :   710 FORMAT (6H    ID,2X,14H   LOGK(REF.Q),2X,14H  DELH0(REF.Q),2X,            
 138 :      $14H DELCP0(REF.Q),2X,14H              ,5X,                                
 139 :      $'SPECIES : TYPE ',7A4)                                                    
 140 :   730 FORMAT(' ',I5,3(2X,F7.2,1H(,A5,1H)),16X,3X,4(2X,A10,I3))                  
 141 :   750 FORMAT(' ',I5,2X,1PE19.10,2(1X,0PF7.2),3X,4(I8,1X,F6.3,3X),/,
 142 :      $'0',45X,4(I8,1X,F6.3,3X),/,'0',45X,4(I8,1X,F6.3,3X),/,
 143 :      $'0',45X,4(I8,1X,F6.3,3X),/,'0',45X,4(I8,1X,F6.3,3X),/,
 144 :      $'0',45X,4(I8,1X,F6.3,3X),/,'0',45X,4(I8,1X,F6.3,3X),/,
 145 :      $'0',45X,4(I8,1X,F6.3,3X),/,'0',45X,4(I8,1X,F6.3,3X))
 146 : C-----------------------------------------------------------------------        
 147 : C                                                                               
 148 :       END                                                                       
 149 :  
 150 :  
 151 :  
 152 :  

© Cast3M 2003 - All rights reserved.
Disclaimer