pytherm.activity.db.unifac.parametersIO module¶
Subpackage for UNIFAC parameters and substance operation
Parameters processing¶
- class pytherm.activity.db.unifac.parametersIO.ParametersUNIFAC(name)[source]¶
Bases:
dictClass for UNIFAC parameters processing
Res parameters are stored as dict[‘res’][i][j]. Comb parameters are stored as dict[‘comb’][‘name’]:
GroupExamples
>>> t1 = [ ... [1, 'CH3', 0.9011, 0.848], ... [1, 'CH2', 0.6744, 0.54], ... [1, 'CH', 0.4469, 0.228], ... [1, 'C', 0.2195, 0.0], ... [3, 'ACH', 0.5313, 0.4], ... [3, 'AC', 0.3652, 0.12], ... ] >>> t2 = [ ... [1, 3, 61.13, 0.0, 0.0], ... [3, 1, -11.12, 0.0, 0.0] >>> VLE = ParametersUNIFAC("VLE") >>> VLE.set_type("classic") >>> VLE.set_comb(t1) >>> VLE.set_res(t2)
Methods
set_comb(params[, key])Set parameters for \(\ln\gamma_i^c\) calculations
set_res(params[, key])Set parameters for \(\ln\gamma_i^r\) calculations
set_type(type[, key])Set model type (classic or modified)
- set_res(params: list, key='res')[source]¶
Set parameters for \(\ln\gamma_i^r\) calculations
If one of parameters is absent, then it must be zero.
- Parameters:
params (list) – Parameters list [i, j, aij, bij, cij]
- class pytherm.activity.db.unifac.parametersIO.Group(id: int, r: float, q: float)[source]¶
Bases:
objectClass for UNIFAC single group
Contain group id, surface and volume
- Parameters:
id (int) – group id in parameters table
r (float) – group volume
q (float) – group surface
- id¶
group id in parameters table
- Type:
int
- r¶
group volume
- Type:
float
- q¶
group surface
- Type:
float
Substances processing¶
- class pytherm.activity.db.unifac.parametersIO.Substance(x: float, groups: dict[str, float])[source]¶
Bases:
objectClass for UNIFAC single substance
- Parameters:
x (float) – concentration
groups (dict[str, float]) – {‘group name’: count}
- x¶
Concentration
- Type:
float
- groups¶
{‘group name’: count}
- Type:
dict[str, float]
Examples
>>> hexane = Substance(1, {'CH3': 2, 'CH2': 4})
- r: float¶
- q: float¶
- x: float¶
- class pytherm.activity.db.unifac.parametersIO.SubstancesUNIFAC[source]¶
Bases:
dictClass for UNIFAC substance processing
self[‘substance name’] contains
SubstanceMethods
get_from_dict(subs)Load substances from input dict
- get_from_dict(subs: dict[str, str])[source]¶
Load substances from input dict
- Parameters:
subs (dict[str, str]) – Dictionary [‘substance name’, ‘X*’CH2 ..’]
Examples
>>> subs = { ... "n-hexane": "2*CH3 4*CH2", ... "butanone-2": "1*CH3 1*CH2 1*CH3CO", ... } >>> substances = SubstancesUNIFAC() >>> substances.get_from_dict(subs)