Skip to main content

化学工程设计库 (ChEDL) 的化学性质组件

项目描述

版本状态 文档 构建状态 执照 覆盖范围 支持的版本 在 https://gitter.im/CalebBell/chemicals 加入聊天 构建状态 芝诺多 <nav class="contents" id="contents" role="doc-toc">

内容

</nav>

主要特点和能力

化学品库包含广泛的纯组分化学数据汇编,可为工程师、科学家、技术人员和任何使用化学品的人提供服务。化学品库有助于检索和计算:

  • 化学常数包括分子式、分子量、标准沸点和熔点、三相点、生成热、生成绝对熵、熔化热、相似变量、偶极矩、偏心因子等。

  • 各种化学品的安全性和毒性信息。

  • 计算与温度和压力相关的化学性质的方法(及其各自的系数),包括蒸气压、热容量、摩尔体积、热导率、表面张力、动态粘度、汽化热、相对介电常数等。

  • 求解热力学相平衡的方法,包括闪蒸程序、汽液平衡常数相关性,以及 Rachford Rice 和 Li-Johns-Ahmadi 方程的数值和解析解。还提供适用于 3 相或更多相系统的 Rashford Rice 解决方案。

超过 20,000 种化学品的数据作为本地数据库提供在该库中。所有数据库都是按需加载的,从而节省了加载时间和 RAM。例如,如果只需要正常沸点的数据,化学品库将只加载正常沸点数据集。这种按需加载功能使化学品库成为化学过程软件建模的有吸引力的依赖项。事实上,生物炼制模拟和技术经济分析模块 (BioSTEAM) 依赖于化学品库来模拟单元操作。

化学品库还支持与 Numba集成,这是一个与 NumPy 配合良好的强大加速器;品脱Quantity 对象以跟踪测量单位;和 NumPy矢量化 函数。

如果您需要了解某种化学品,请尝试使用化学品。

安装

从https://pypi.python.org/pypi/chemicals/获取最新版本的化学品

如果您使用 pip 安装了 Python,只需使用以下命令进行简单安装:

$ pip install 化学品

如果您使用的是conda,您可以从 conda-forge 频道安装化学品:

$ conda install -c conda-forge 化学品

要获取 git 版本,请运行:

$ git clone git://github.com/CalebBell/chemicals.git

文档

化学品的文档可在网络上获得:

http://chemicals.readthedocs.io/

入门

该库是围绕 SI 单位设计的。CASRN 对常数化学性质的检索:

>>> from chemicals import CAS_from_any, MW, Tb, Tm, Tc, Pc, Vc, Hfus, Hfs, Hfl, Hfg, S0s, S0l, S0g
>>> # Search for CASRN by a common name or a unique identifier such as the IchI key
>>> CAS_water = CAS_from_any('Water')
>>> MW(CAS_water)   # Molecular weight [g/mol]
18.01528
>>> Tb(CAS_water)   # Normal boiling point [K]
373.124
>>> Tm(CAS_water)   # Melting point [K]
273.15
>>> Tc(CAS_water)   # Critical temperature [K]
647.14
>>> Pc(CAS_water)   # Critical pressure [Pa]
22048320.0
>>> Vc(CAS_water)   # Critical volume [m^3/mol]
5.600e-05
>>> Hfus(CAS_water) # Heat of fusion [J/mol]
6010.0
>>> Hfs('101-81-5')  # Solid heat of formation of Diphenylmethane, [J/mol]
71500.0
>>> Hfl(CAS_water)  # Liquid heat of formation [J/mol]
-285825.0
>>> Hfg(CAS_water)  # Gas heat of formation [J/mol]
-241822.0
>>> S0s('101-81-5')  # Absolute solid enthalpy of formation of Diphenylmethane [J/mol/K]
239.3
>>> S0l(CAS_water)  # Absolute liquid enthalpy of formation [J/mol/K]
70.0
>>> S0g(CAS_water)  # Absolute gas enthalpy of formation [J/mol/K]
188.8

这种“查找函数”在许多数据库中搜索,直到找到给定 CASRN 的值。如果没有可用值,则返回 None。请注意,化学品并不是一个详尽地获得所有属性和化学品的推荐属性值的项目;它是引用和公开发表的数据和方程式的集合。

您可以选择传递一个“方法”来选择从数据库中检索数据的方法:

>>> Tb(CAS_water, method='YAWS')
373.15

要查看给定化学品的所有可用方法,只需使用名称末尾带有“_methods”标签的函数:

>>> from chemicals import Tb_methods
>>> Tb_methods(CAS_water)
['CRC_INORG', 'COMMON_CHEMISTRY', 'WEBBOOK', 'YAWS', 'WIKIDATA']

也可以通过各自的模块访问数据库:

>>> from chemicals.critical import critical_data_Yaws
>>> critical_data_Yaws # doctest: +SKIP
                               Chemical       Tc         Pc        Vc  omega        Zc
CASRN
100-00-5           p-chloronitrobenzene   751.00  3980000.0  0.000432  0.491  0.275355
100-01-6                 p-nitroaniline   851.00  4420000.0  0.000406  0.782  0.253621
100-10-7    p-dimethylaminobenzaldehyde   832.00  3070000.0  0.000471  0.527  0.209027
100-18-5           p-diisopropylbenzene   689.00  2450000.0  0.000598  0.390  0.255749
100-21-0              terephthalic acid  1113.00  3950000.0  0.000424  1.059  0.180981
...                                 ...      ...        ...       ...    ...       ...
99814-65-0            1-pentadeceN-3-ol   713.00  1500000.0  0.000850    NaN  0.215149
999-21-3                diallyl maleate   693.00  2330000.0  0.000606  0.789  0.245054
999-52-0                3-chloroheptane   621.08  2693000.0  0.000476  0.418  0.248495
999-78-0         4,4-dimethyl-2-pentyne   552.81  3416000.0  0.000378  0.191  0.281303
999-97-3           hexamethyldisilazane   544.00  1920000.0  0.000613  0.510  0.260213

[7549 行 x 6 列]

提供用于计算各种化学性质的大量函数以及它们各自的系数,适用于各种化学品:

>>> from chemicals import Antoine
>>> from chemicals.vapor_pressure import Psat_data_AntoinePoling
>>> antoine_coefficients = Psat_data_AntoinePoling.loc[CAS_water] # For calculating saturated vapor pressure
>>> antoine_coefficients  # doctest: +SKIP
Chemical     water
A              10.1
B          1.69e+03
C               -43
Tmin            273
Tmax            473
Name: 7732-18-5, dtype: object
>>> A, B, C = antoine_coefficients['A'], antoine_coefficients['B'], antoine_coefficients['C']
>>> T = 373.15 # Temperature [K]
>>> Antoine(T, A, B, C) # Vapor pressure [Pa]
101047.2535

要使用 JIT 编译的函数,请导入numba模块:

>>> from chemicals import numba  # doctest: +SKIP
>>> numba.Antoine(T, A, B, C)  # doctest: +SKIP
101047.2535

要使用 Quantity 对象,请导入单位模块:

>>> from chemicals import units
>>> from chemicals.units import u
>>> units.Antoine(T * u.K, A, B * u.K, C * u.K)
<Quantity(101047.254, 'pascal')>

要使用矢量化函数,请导入矢量化模块:

>>> from chemicals import vectorized
>>> vectorized.Antoine([300, 350], A, B, C)
array([ 3546.98, 41603.98 ])

路线图

作者的主要开发项目是为计算化学性质(热力学和输运)和扩展本地数据库提供最新的方法。

最新源代码

化学品来源的最新开发版本可在以下网址获得

https://github.com/CalebBell/chemicals

错误报告

要报告错误,请使用化学品的错误跟踪器,网址为:

https://github.com/CalebBell/chemicals/issues

许可证信息

有关使用此软件的条款和条件的信息,请参阅LICENSE.txt,以及所有保证的免责声明。

虽然化学品许可证没有要求,但如果您方便,请在工作中使用化学品时注明。还请考虑贡献您所做的任何更改,并造福社区。

引文

要在出版物中引用化学物质,请使用:

Caleb Bell、Yoel Rene Cortes-Pena 和贡献者 (2016-2021)。化学品:化学工程设计库 (ChEDL) https://github.com/CalebBell/chemicals的化学特性组件。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

内置分布

Chemicals-1.1.2-py3-none-any.whl (23.3 MB 查看哈希

已上传 py3