Download chmele.eso

Back to the list

   1 : C CHMELE    SOURCE    CHAT      05/01/12    21:58:55     5004           
   2 :       SUBROUTINE CHMELE(IDSCHI,LGKMOD,LGKTMP,SP2,IOXYDO,Q99,PEMIN,
   3 :      * PEMAX,DE,PE)
   4 : C
   5 : C- VERIFICATION DE LA PRESENCE DE L'ELECTRON PARMI LES COMPOSANTS
   6 : C Modif PhM : Possibilite d'utiliser d'autre composants que l'electron
   7 : C pour les reactions redox.
   8 : C L'identifiant du composant redox est forcement 99. 
   9 : C On fait les distinction suivante en affectant IOXYDO
  10 : C                IOXYDO = 0 -> Le composant redox (99) n'est pas present
  11 : C                              donc pas de raction redoxPas de reaction redox
  12 : C                IOXYDO = 1 -> Presence du composant redox en type
  13 : C                              3. Reaction redox avec activite fixe 
  14 : C                              pour le composant redox (Pe fixe par ex )
  15 : C                IOXYDO = 2 -> Presence du composant redox en type >3,.
  16 : C                              On considere que c'est l'electron mis en
  17 : C                              type 6. On le place en type 3 et 
  18 : c                              on utilisera la dichotomie. 
  19 : C                IOXYDO = 3 -> Presence du composant redox mais en type
  20 : C                              1. Il y a reaction redox avec un autre
  21 : C                              composantque l'electron (pas de
  22 : C                              dichotomie,presence de ce composant
  23 : C                               dans les bilans de masse)
  24 : C
  25 :       IMPLICIT INTEGER(I-N)
  26 :       IMPLICIT REAL*8(A-H,O-Z)
  27 :       SEGMENT IDSCHI
  28 :            REAL*8 GK(NYDIM),AA(NYDIM,NXDIM),FF(NZDIM,NPDIM)
  29 :            INTEGER IDX(NXDIM),IDY(NYDIM),IDZ(NZDIM),IDP(NPDIM),NN(6)
  30 :            INTEGER IDECY(NYDIM),IONZ(NXDIM)
  31 :            CHARACTER*32 NAME(NXDIM),NAMESP(NYDIM)
  32 :       ENDSEGMENT
  33 :       SEGMENT SP2
  34 :            REAL*8 GX(NXDIM),XX(NXDIM),GS(NZDIM),SS(NZDIM)
  35 :            REAL*8 TOT(NXDIM),TOTAQ(NXDIM),TOTFIX(NXDIM),GKS(NZDIM)
  36 :            REAL*8 YY(NXDIM),ZZ(NXDIM,NXDIM),CC(NYDIM),GC(NYDIM)
  37 :       ENDSEGMENT
  38 :       IOXYDO = 0
  39 :       NXDIM=IDX(/1)
  40 :       NYDIM=IDY(/1)
  41 :       NZDIM=IDZ(/1)
  42 :       NPDIM=IDP(/1)
  42 :       CALL CHIADY(IDX,NXDIM,99,IPOX99)
  43 :       IF(IPOX99.EQ.0)RETURN
  44 :       Q99 = TOT(IPOX99)
  45 : C
  46 : C- MISE EN TYPE 3 (IE PE IMPOSÉ) DE L'ELECTRON SI IL EST EN TYPE 6
  47 : C- (IE Q IMPOSE) AFIN DE FAIRE UNE MÉTHODE DE DICHOTOMIE.
  48 : C- IL FAUT SORTIR L'ELECTRON DU SYSTEME AFIN D'AMELIORER LA STABILITE
  49 : C- NUMERIQUE DU SCHEMA. C'EST CE QUI SE PASSE SI L'E- EST EN TYPE 3,
  50 : C- D'OU L'IDEE D'UN DICHOTOMIE SUR LE PE POUR RETROUVER LE Q IMPOSE.
  51 : C
  51 :       CALL CHIADY(IDY,NYDIM,99,IPOS99)
  52 :       N3FIN = NN(1) + NN(2) + NN(3)
  53 :       IF (IPOS99.GT.N3FIN) THEN
  54 :          IOXYDO = 2
  55 :          Q99    = TOT(IPOX99)
  56 :          ID     = 99
  57 :          LIN    = 6
  58 :          LEN    = 3
  58 :          CALL CHMREX(IDSCHI,LGKMOD,LGKTMP,ID,LIN,LEN)
  59 :          N3DEB  = NN(1) + NN(2) + 1
  60 :          N3FIN  = NN(1) + NN(2) + NN(3)
  60 :          CALL CHIADY(IDY,NYDIM,99,IPOS99)
  61 : 
  62 :          PEMIN  = -GX(IPOX99) -0.5D0*DE
  63 :          PEMAX  = PEMIN + DE
  64 : 
  65 :          PE     = PEMAX
  65 :          CALL CHIADY(IDX,NXDIM,99,IDXT)
  66 :          GK(IPOS99)  = PE
  67 :          XX(IDXT)   = 10.D0 ** GX(IDXT)
  68 :          TOT(IDXT) = 0.D0
  69 : C
  70 :       ELSEIF(IPOS99.GT.(NN(1)+NN(2)))THEN
  71 :          IOXYDO=1
  72 : C MODIF PhM
  73 :       ELSEIF (IPOS99.LE.NN(1)) THEN
  74 :          IOXYDO=3  
  75 : C MODIF PhM 
  76 :       ENDIF
  77 :       RETURN                                                                    
  78 :       END                                                                       
  79 : 
  80 : 
  81 : 
  82 : 
  83 : 
  84 :  
  85 :  

© Cast3M 2003 - All rights reserved.
Disclaimer