pytherm.activity.uniquac¶
This module contains classes and methods to calculate activity coefficients with the UNIQUAC model.
How to use¶
- To use UNIQUAC it’s nessesary to set-up the model:
>>> from pytherm.activity import uniquac as uq >>> T = 25.0 + 273.15 >>> xs = [0.7273, 0.0909, 0.1818] >>> rs = [0.92, 2.1055, 3.1878] >>> qs = [1.4, 1.972, 2.4] >>> inter = [ ... [[0, 0], [0, 526.02], [0, 309.64]], ... [[0, -318.06], [0, 0], [0, -91.532]], ... [[0, 1325.1], [0, 302.57], [0, 0]], ... ] >>> am = uq.UNIQUAC(rs, qs, inter) >>> print(am.get_y(xs, T)) [1.570393443107605, 0.29482409358024597, 18.11433219909668]
UNIQUAC class¶
- class pytherm.activity.uniquac.UNIQUAC¶
Implementation of the UNIQUAC model
- Parameters:
r (list[float]) – list with substances’ r
q (list[float]) – list with substances’ q
res_matrix – interaction parameters matrix
Methods
get_a(self, conc, T)Calculate activities for conc array
get_y(self, conc, T)Calculate activity coefficients for conc array
- __init__(self: pytherm.cpp.UNIQUAC, r: list[float], q: list[float], res_matrix: list[list[list[float]]]) None¶
- get_a(self: pytherm.cpp.UNIQUAC, conc: list[float], T: float) list[float]¶
Calculate activities for conc array
Concentrations must be in molar fractions
- Parameters:
conc (list[float]) – Input concentration array, [molar fraction]
T (float) – Temperature, [K]
- Returns:
Activities
- Return type:
list[float]
Examples
>>> UNIQUAC.get_a([0.5, 0.5], T=298)
- get_y(self: pytherm.cpp.UNIQUAC, conc: list[float], T: float) list[float]¶
Calculate activity coefficients for conc array
Concentrations must be in molar fractions
\[\gamma_i = \exp\left(\ln \gamma_i^c + \ln \gamma_i^r \right)\]- Parameters:
conc (list[float]) – Input concentration array, [molar fraction]
T (float) – Temperature, [K]
- Returns:
Activity coefficients
- Return type:
list[float]
Examples
>>> UNIFAC.get_y([0.5, 0.5], T=298)