sandlerchemeq.chemeqsystem¶
Chemical equilibrium system solver
- class ChemEqSystem[source]¶
Bases:
objectChemical equilibrium system solver using either explicit reactions with equilibrium constants or implicit Lagrange multiplier method.
- __init__(P=<factory>, T=<factory>, components=<factory>, N0=<factory>, reactions=<factory>, N=<factory>, ys=<factory>)¶
- solve_implicit(Xinit=[], ideal=True, simplified=False)[source]¶
Implicit solution of M equations using equilibrium constants. Solutions are stored in attributes Xeq, N, and ys.
- Parameters:
Xinit (list, optional) – Initial guess for extent of reaction (default is [])
ideal (bool, optional) – Whether to assume ideal behavior (default is True)
simplified (bool, optional) – Whether to use simplified van’t Hoff equation (default is False). Use
False(full van’t Hoff with Cp correction) to match the Lagrange solver.Trueomits the heat-capacity correction and is provided for educational comparison only.
- solve_lagrange(ideal=True, zInit=[])[source]¶
Implicit solution of chemical equilibrium system using Lagrange multipliers. Solutions are stored in attributes N and ys.
- Parameters:
ideal (bool, optional) – Whether to assume ideal behavior (default is True) (NOT USED)
zInit (np.ndarray, optional) – Initial guess for mole numbers and Lagrange multipliers (default is [])