簡體   English   中英

使用 10 個不同的當量比 (Phi) 值求解產品摩爾值的燃燒化學方程式

[英]Solving a Combustion Chemical Equation for Product Molar Values using 10 different values for equivalence ratio (Phi)

我正在嘗試使用 Cantera 來解決一些熱力學問題。 我無法得到這個函數來解決 b1、c1、d1 和 e1 作為 phi_rich 的函數。 基本上我需要在 Phi_rich 的每個值處找到這些值。 我的功能將不起作用。

這是我的代碼:

import numpy as np

phi_rich = phi[10:20] # Pulls final 10 values of phi array

b1 = np.zeros(phi_rich.shape)


c1  = np.zeros(phi_rich.shape)

d1 = np.zeros(phi_rich.shape)

e1 = np.zeros(phi_rich.shape)

def func(b1,c1,d1,e1):

  
    
    ## Now Calculate Fuel Rich
    phi_rich = phi[10:20]
    x = 3
    y = 8
    a_rich =((x+(y/4))/phi_rich)     

   
    
    return[ (c1 + d1 - 2*a_rich)/2, 3 - b1, 4 - e1, x + (y/2) - b1 - c1 - d1]

result = optimize.fsolve(func,(0.1, 0.1, 0.1, 0.1))

我包括這個來幫助解釋我的問題。 我正在嘗試使用 Phi 值數組(准確地說是 10)設置一個 python 函數來解決每個值(a、b、c、d 和 e):

你的系統在未知數中是線性的。 您可以將方程組重新編寫為增廣矩陣,然后將其放入簡化的行梯形形式 這會告訴你

  1. 是否存在解決方案,
  2. 是否存在有限或無限數量的解決方案,
  3. 如果有的話,唯一的解決方案是什么。

SymPy 為其Matrix類提供了一個方法rref 所以用那個類實例化你的增強矩陣對象,然后調用它的方法。 參見示例:

請注意,對於 $a$ 以及 $x$ 和 $y$ 的固定值,對於不同的 $\Phi$ 值不能滿足等式一。 但是您可以對 $\Phi$ 的每個不同值采用上述方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM