def variablesATR(): temperature, pression, ratio, ratioO2, flux = getVariableATR( ) # Importe les variables depuis Variables.py #CH4_flux, O2_flux, CO2_flux, H2O_flux = combustion([flux, ratioO2*flux,0,0]) KSMR = 10**( -(11650 / temperature) + 13.076 ) # Constante d’equilibre de la reaction Steam Methane Reforming (SMR) KWGS = 10**( (1910 / temperature) - 1.764 ) # Constante d’equilibre de la reaction Water–Gas Shift (WGS) lors du vaporeformage return [temperature, pression, ratio, ratioO2, flux, KSMR, KWGS]
def verifATR(z): x, y = z temperature, pression, ratio, ratioO2, flux, KSMR, KWGS = getVariableATR() KSMR = 10**(-(11650 / temperature) + 13.076) KWGS = 10**((1910 / temperature) - 1.764) return np.array([ KSMR * (flux * (1 - ratioO2 / 2) - x) * (flux * (ratio + ratioO2) - x - y) * (flux * (1 + ratio + ratioO2) + 2 * x)**2 - ((x - y) * (3 * x + y)**3) * pression**2, KWGS * (flux * (ratio + ratioO2) - x - y) * (x - y) - ((ratioO2 / 2) + y) * (3 * x + y) ])
def ATRDegreAvancement(arg): temperature, pression, ratio, ratioO2, flux = getVariableATR() # Importe les variables depuis Variables.py flux_Sortant = np.array([ flux*(1-ratioO2/2)-arg[0] , flux*(1+ratio+ratioO2) - arg[0] - arg[1] , arg[0] - arg[1] , 3*arg[0] + arg[1], ratioO2/2 + arg[1]]) wgs_sortant = waterGasShift([flux_Sortant[2], flux_Sortant[1], flux_Sortant[4], flux_Sortant[3]]) flux_Sortant[2] = wgs_sortant[0] # CO flux_Sortant[1] = wgs_sortant[1] # H2O flux_Sortant[4] = wgs_sortant[2] # CO2 flux_Sortant[3] = wgs_sortant[3] # H2 #print(flux_Sortant) #print('################################################### WGS') flux_Sortant[1] = 0 # Condensation H2O #print(flux_Sortant) #print('################################################### Condensation') flux_Sortant[4] = 0 # Absorption CO2 #print(flux_Sortant) #print('################################################### Absorption') return flux_Sortant
def variablesATR(arg): temperature, pression, ratio, ratioO2, flux = getVariableATR() # Importe les variables depuis Variables.py if arg.lower()=='t': temperature_Tab = np.arange(700,1400,25) # Tableau contenant les temperatures de 700 a 1400 K SMR_T_Tab = np.zeros(len(temperature_Tab)) # Tableau contenant les degre d'avancement SMR pour chaque temperatures de temperature_Tab WGS_T_Tab = np.zeros(len(temperature_Tab)) # Tableau contenant les degre d'avancement WGS pour chaque temperatures de temperature_Tab SMR_T_Tab[-1] = flux/2 # Initialise les deux premieres valeurs de fsolve pour optimiser le temps de calcul WGS_T_Tab[-1] = flux/2 # Initialise les deux premieres valeurs de fsolve pour optimiser le temps de calcul return [temperature, pression, ratio, ratioO2, flux, temperature_Tab, SMR_T_Tab, WGS_T_Tab] elif arg.lower()=='k': ratio_Tab = np.arange(1,4,0.1) # Tableau contenant les ratio de H2O/CH4 1 a 4 bar SMR_K_Tab = np.zeros(len(ratio_Tab)) # Tableau contenant les degre d'avancement SMR pour chaque ratio de ratio_Tab WGS_K_Tab = np.zeros(len(ratio_Tab)) # Tableau contenant les degre d'avancement WGS pour chaque ratio de ratio_Tab return [temperature, pression, ratio, ratioO2, flux, ratio_Tab, SMR_K_Tab, WGS_K_Tab] elif arg.lower()=='tk': temperature_Tab = np.arange(700,1400,25) # Tableau contenant les temperatures de 700 a 1400 K ratio_Tab = np.arange(1,4,0.1) # Tableau contenant les ratio de H2O/CH4 1 a 4 bar return [temperature, pression, ratio, ratioO2, flux, temperature_Tab, ratio_Tab]
def ATRDebitTonne(debit=1000): temperature, pression, ratio, ratioO2, flux = getVariableATR() molH = ATRFluxSortant(temperature, pression, ratio, ratioO2, flux)[3] f = (debit/(24*60*60))/(molH*2*10**(-3)) print(f) print(ATRFluxSortant(temperature, pression, ratio, ratioO2, f))