Releases: ipqa-research/ugropy
v3.1.0 nonoptimal solutions
Now, along with multiple solutions, nonoptimal solutions could be obtained if desired. Example:
from ugropy import unifac
toluene = unifac.get_groups("toluene", search_multiple_solutions=True, search_nonoptimal=True)
print(toluene[0].subgroups)
print(toluene[1].subgroups)
You will obtain:
{'ACH': 5, 'ACCH3': 1}
{'CH3': 1, 'ACH': 5, 'AC': 1}
The solutions are always ordered from most optimal to less optimal.
What's Changed
- Nonoptimal by @SalvadorBrandolin in #35
Full Changelog: v3.0.5...v3.1.0
v3.0.5
What's Changed
- Dortmund by @SalvadorBrandolin in #34
New model!
Dortmund UNIFAC has been added. You can try it with:
from ugropy import dortmund
chex = dortmund.get_groups("cyclohexane")
print(chex.subgroups)
New writer:
Writer to_yaeos
is implemented. It generates the Fortran source for groups definitions for yaeos
.
Example:
from ugropy import unifac, writers
names = ["ethane", "ethanol", "toluene", "water"]
groups = [unifac.get_groups(name).subgroups for name in names]
fortran_code = writers.to_yaeos(groups, unifac)
print(fortran_code)
You will obtain:
use yaeos__models_ge_group_contribution_unifac, only: Groups
type(Groups) :: molecules(4)
molecules(1)%groups_ids = [1]
molecules(1)%number_of_groups = [2]
molecules(2)%groups_ids = [1, 2, 14]
molecules(2)%number_of_groups = [1, 1, 1]
molecules(3)%groups_ids = [9, 11]
molecules(3)%number_of_groups = [5, 1]
molecules(4)%groups_ids = [16]
molecules(4)%number_of_groups = [1]
Full Changelog: v3.0.0...v3.0.5
v3.0.0
What's Changed
- 27 get rid of problematic structures by @SalvadorBrandolin in #28
- Better not found on PubChem error by @SalvadorBrandolin in #31
- 22 implement abdulelah gani by @SalvadorBrandolin in #32
- Travel to 3.0.0 by @SalvadorBrandolin in #33
Problematic structures definition for each model are not longer needed. A big algorithm overhaul performed to achieve that.
News
New model available! Abdulelah-Gani property estimator: https://github.com/PEESEgroup/Pure-Component-Property-Estimation
Now properties estimated by properties estimators have units provided by the library Pint
Breaking changes
The function get_groups
not longer exist. Each model is imported individually and get_groups
is a method:
from ugropy import unifac, psrk, joback, abdulelah_gani
unifac_groups = unifac.get_groups("hexane")
psrk_groups = unifac.get_groups("hexane", search_multiple_solutions=True)
print(unifac_groups.subgroups)
print(psrk_groups.subgroups)
Gibbs excess models estimates de
print(unifac_groups.r, unifac_groups.q)
The Joback and Abdulelah-Gani models have all estimated properties on the output object:
joback_groups = joback.get_groups("hexane")
print(joback_groups.critical_temperature)
Check the tutorial for more information of all the new features of ugropy
Full Changelog: v2.0.7...v3.0.0
v2.0.7
Bug fixing: bad dependencies declarations for PyPI ugropy
v2.0.5. The new version of rdkit
and numpy broke ugropy
Full Changelog: v2.0.5...v2.0.7
v2.0.5
What's Changed
- 18 implement constantinou and gani model by @SalvadorBrandolin in #21
- Migration to
pathlib
and cache groups for better end-user experience by @fedebenelli in #23 - pathlib to models module and Windows and MacOS added to CI by @SalvadorBrandolin in #25
- release 2.0.5 by @SalvadorBrandolin in #26
New Contributors
- @fedebenelli made their first contribution in #23
Full Changelog: v2.0.0...v2.0.5
v2.0.0
What's Changed
- Changes in
ugropy
API. get_model_groups no longer exist. All model uses the get_groups function (see tutorial) - New writer! Now
ugropy
can write the group dictionaries for Caleb Bell's Thermo library. - New feature ".draw()": Now the fragmentation models results return a Fragmentation object that allows the user to represent the fragmentation result graphically (see tutorial)
- Changes in the algorithm:
ugropy
checks if the solution can be fitted in the molecule's atoms before throwing the solution for molecules with composed structures.
Full Changelog: v1.0.0...v2.0.0
v1.0.0
Models supported v1.0.0
- Classic liquid-vapor UNIFAC
- Predictive Soave-Redlich-Kwong (PSRK)
- Joback
Writers
- Clapeyron.jl