1 : C FLAMB1 SOURCE CHAT 05/01/13 00:03:21 5004 2 : SUBROUTINE FLAMB1(NC,DT,A,B,C,TA,TSEUIL,H0H2,H0O2,H0H2O,TEMP, 3 : & RYH2, RYO2, RYH2O, 4 : & DE, NRYH2, NRYO2, NRYH2O, 5 : & LOGNEG, MESERR, VALER) 6 : C************************************************************************ 7 : C 8 : C PROJET : CASTEM 2000 9 : C 10 : C NOM : FLAMB1 11 : C 12 : C DESCRIPTION : voir FLAMB 13 : C 14 : C Calculs 15 : C 16 : C LANGAGE : FORTRAN 77 (avec extensions F90) 17 : C 18 : C AUTEUR : A. BECCANTINI, DRN/DMT/SEMT/LTMF 19 : C 20 : C************************************************************************ 21 : C 22 : C 23 : C APPELES (E/S) : / 24 : C 25 : C APPELES (Calcul) : / 26 : C 27 : C 28 : C************************************************************************ 29 : C 30 : C ENTREES : 31 : C 32 : C NC = nombre de points centre 33 : C 34 : C DT = interval de temps 35 : C 36 : C A, B, C, TA = constantes de la cinetique chmimique (voir 37 : C FLAMB) 38 : C 39 : C TSEUIL(NC) = champ de la temperature de seuil 40 : C 41 : C H0H2, H0O2, HOH2O = enthalpie de formation a 0K (J/kg) 42 : C 43 : C TEMP(NC) = champ de temperature 44 : C 45 : C RYH2(NC) = masse volumique d'hydrogene (initial) 46 : C 47 : C RYO2(NC) = masse volumique d'oxygene 48 : C 49 : C RYH2O(NC) = masse volumique d'eau 50 : C 51 : C SORTIES : 52 : C 53 : C DE(NC) = variation d'energie thermique a suite de la reaction 54 : C 55 : C NRYH2(NC) = masse volumique d'hydrogene (final) 56 : C 57 : C NRYO2(NC) = masse volumique d'oxygene 58 : C 59 : C NRYH2O(NC) = masse volumique d'eau 60 : C 61 : C************************************************************************ 62 : C 63 : C HISTORIQUE (Anomalies et modifications éventuelles) 64 : C 65 : C HISTORIQUE : Créée le 25.2.99 66 : C 67 : C************************************************************************ 68 : C 69 : C 70 : C**** Les variables 71 : C 72 : IMPLICIT INTEGER(I-N) 73 : INTEGER I1, NC 74 : REAL*8 MH2,MO2,MH2O,DT, A, B, C, TA, H0H2, H0O2, H0H2O, VALER 75 : & ,TSEUIL(NC),RYH2(NC),RYO2(NC),RYH2O(NC), DE(NC) 76 : & ,NRYH2(NC),NRYO2(NC),NRYH2O(NC), TEMP(NC) 77 : & ,TEMP0, TSEU0, RYH2I, RYO2I, RYH2OI 78 : & ,XH2, XO2, LAMBDA, CELL, DRYH2, DRYO2, DRYH2O, DMOL 79 : CHARACTER*(8) MESERR 80 : LOGICAL LOGNEG 81 : PARAMETER(MH2=2.016D-3,MO2=31.998D-3,MH2O=18.015D-3) 82 : C 83 : DO I1 = 1, NC 84 : TEMP0 = TEMP(I1) 85 : TSEU0 = TSEUIL(I1) 86 : RYH2I = RYH2(I1) 87 : RYO2I = RYO2(I1) 88 : RYH2OI = RYH2O(I1) 89 : IF(RYH2I .LT. 0.0D0)THEN 90 : LOGNEG = .TRUE. 91 : VALER = RYH2I 92 : MESERR = 'RYH2 ' 93 : GOTO 9999 94 : ENDIF 95 : IF(RYO2I .LT. 0.0D0)THEN 96 : LOGNEG = .TRUE. 97 : VALER = RYO2I 98 : MESERR = 'RYO2 ' 99 : GOTO 9999 100 : ENDIF 101 : IF(RYH2OI .LT. 0.0D0)THEN 102 : LOGNEG = .TRUE. 103 : VALER = RYH2OI 104 : MESERR = 'RYH2O ' 105 : GOTO 9999 106 : ENDIF 107 : IF(TEMP0 .GE. TSEU0)THEN 108 : C 109 : C********** A la recherche de l'espece majortitaire 110 : C 111 : C XH2 = mole / m^3 d'H2 112 : C 113 : XH2 = RYH2I / MH2 114 : XO2 = RYO2I / MO2 115 : IF(XH2 .GE. (2.0D0 * XO2))THEN 116 : C 117 : C H2 majoritaire -> on integre O2 118 : C 119 : LAMBDA = EXP(-1.0D0*TA/TEMP0) 120 : LAMBDA = LAMBDA * (TEMP0 ** (-1.0D0*B)) 121 : LAMBDA = LAMBDA * (RYH2I ** C) 122 : LAMBDA = LAMBDA * MO2 * A 123 : CELL = RYO2I / (1.0D0 + (LAMBDA * DT)) 124 : DRYO2 = CELL - RYO2I 125 : DMOL = DRYO2 / MO2 126 : DRYH2 = 2.0D0 * DMOL * MH2 127 : DRYH2O = -2.0D0 * DMOL * MH2O 128 : NRYO2(I1) = CELL 129 : NRYH2(I1) = RYH2I + DRYH2 130 : NRYH2O(I1) = RYH2OI + DRYH2O 131 : 132 : ELSE 133 : C 134 : C O2 majoritaire -> On integre H2 135 : C 136 : LAMBDA = EXP(-1.0D0*TA/TEMP0) 137 : LAMBDA = LAMBDA * (TEMP0 ** (-1.0D0*B)) 138 : LAMBDA = LAMBDA * (RYH2I ** (C-1.0D0)) * RYO2I 139 : LAMBDA = 2.0D0 * LAMBDA * MH2 * A 140 : CELL = RYH2I / (1.0D0 + (LAMBDA * DT)) 141 : DRYH2 = CELL - RYH2I 142 : DMOL = DRYH2 / MH2 / 2.0D0 143 : DRYO2 = DMOL * MO2 144 : DRYH2O = -2.0D0 * DMOL * MH2O 145 : NRYH2(I1) = CELL 146 : NRYO2(I1) = RYO2I + DRYO2 147 : NRYH2O(I1) = RYH2OI + DRYH2O 148 : ENDIF 149 : DE(I1) = (DRYH2 * H0H2) + (DRYO2 * H0O2) + (DRYH2O * H0H2O) 150 : DE(I1) = -1.0D0 * DE(I1) 151 : ENDIF 152 : ENDDO 153 : C 154 : 9999 CONTINUE 155 : C 156 : RETURN 157 : END 158 : 159 : 160 : 161 : 162 : 163 : 164 : 165 :
© Cast3M 2003 - All rights reserved.
Disclaimer