#!/usr/bin/python3
# -*- coding: utf-8 -*-
'''Pychemqt, Chemical Engineering Process simulator
Copyright (C) 2009-2025, Juan José Gómez Romera <jjgomera@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.'''
from math import log
from lib import unidades
from lib.newComponent._base import GroupContribution
[docs]
class MarreroGani(GroupContribution):
"""
Group contribution for definition of unknown component using the
Marrero-Gani procedure (2001). This method is fairly complete, can
calculate critical properties, boiling and melting temperature, enthalpy
and gibbs free energy of formation, vaporization and melting heat.
The resulting instance has all the necessary properties to use in PFD as a
predefined compound, using general properties for calculation of other
mandatory properties don't defined by the method.
Parameters
----------
group : array
List with group index
contribution : float
List with group count ocurrences
Tb : float, optional
Normal boiling temperature, [K]
M : float, optional
Molecular weight, [-]
SG : float, optional
Specific gravity, [-]
Notes
-----
Tb, M and SG are optional input, anyway know them improve the estimation
Examples
--------
Example 1 from [1]_, Tb of N-phenyl-1,4-benzenodiamine
>>> c1 = MarreroGani(group=[61, 62, 17, 14], contribution=[1, 1, 1, 9])
>>> c2 = MarreroGani(group=[61, 62, 17, 14, 287],
... contribution=[1, 1, 1, 9, 1])
>>> c3 = MarreroGani(group=[61, 62, 17, 14, 287, 346],
... contribution=[1, 1, 1, 9, 1, 1])
>>> "%0.2f %0.2f %0.2f" % (c1.Tb, c2.Tb, c3.Tb)
'614.62 616.03 623.94'
Example 2 from [1]_, Tb of pyrene
>>> c1 = MarreroGani(group=[15, 14], contribution=[6, 10])
>>> c3 = MarreroGani(group=[15, 14, 361, 365], contribution=[6, 10, 2, 2])
>>> "%0.2f %0.2f" % (c1.Tb, c3.Tb)
'652.43 673.96'
Example 3 from [1]_, Tb of 4-aminobutanol
>>> c1 = MarreroGani(group=[28, 53, 1], contribution=[1, 1, 3])
>>> c3 = MarreroGani(group=[28, 53, 1, 306], contribution=[1, 1, 3, 1])
>>> "%0.2f %0.2f" % (c1.Tb, c3.Tb)
'448.64 478.42'
Example 4 from [1]_, Tm of 3,3'-methylenebis-4-hydroxycoumarin
>>> c1 = MarreroGani(group=[28, 16, 14, 172, 179, 178, 1],
... contribution=[2, 4, 8, 2, 2, 2, 1])
>>> c3 = MarreroGani(contribution=[2, 4, 8, 2, 2, 2, 1, 2, 2, 2, 1],
... group=[28, 16, 14, 172, 179, 178, 1, 354, 317, 353, 330])
>>> "%0.2f %0.2f" % (c1.Tf, c3.Tf)
'475.46 552.34'
Example 5 from [1]_, Tm of flutemazepan
The third order example has a undocumented contribution, using value from
AROMFUSED[2]s2 contribution
>>> c1 = MarreroGani(
... group=[28, 122, 123, 0, 17, 16, 14, 168, 179, 175, 177],
... contribution=[1, 1, 1, 1, 1, 2, 7, 1, 1, 1, 1])
>>> c2 = MarreroGani(
... group=[28, 122, 123, 0, 17, 16, 14, 168, 179, 175, 177, 285, 283, 265],
... contribution=[1, 1, 1, 1, 1, 2, 7, 1, 1, 1, 1, 1, 1, 1])
>>> c3 = MarreroGani(
... group=[28, 122, 123, 0, 17, 16, 14, 168, 179, 175, 177, 285, 283, 265,
... 356, 345, 347, 349],
... contribution=[1, 1, 1, 1, 1, 2, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])
>>> "%0.2f %0.2f %0.2f" % (c1.Tf, c2.Tf, c3.Tf)
'469.19 473.37 419.63'
Example 6 from [1]_, Tm of 1,9-nonadiol
>>> c1 = MarreroGani(group=[28, 1], contribution=[2, 9])
>>> c3 = MarreroGani(group=[28, 1, 307], contribution=[2, 9, 1])
>>> "%0.2f %0.2f" % (c1.Tf, c3.Tf)
'303.66 315.70'
"""
__title__ = "Marrero-Gani (2001)"
__doi__ = {
1:
{"autor": "Marrero, J.; Gani, R.",
"title": "Group-contribution based estimation of pure component "
"properties",
"ref": "Fluid Phase Equilib. 183-184 (2001), 183-208.",
"doi": "10.1016_s0378-3812(01)00431-9"}}
# Table 6-8
__coeff__ = {
"tf": [0.6953, 0.2515, -0.3730, 0.0256, 1.1728, 0.9460, 0.7662, 0.1732,
0.3928, 1.7036, 1.5453, 1.2850, 2.2276, 2.0516, 0.5860, 1.8955,
1.2065, 0.9176, 2.0438, 1.0068, 0.1065, -0.5197, -0.1041,
1.2832, 1.7744, 1.2612, 1.7495, 0, 2.7888, 5.1473, 7.4042,
12.4296, 2.9588, 2.5232, 1.1565, 1.0638, 2.9157, 3.0186, 2.4744,
2.1657, 1.6329, 1.0668, 0.3983, 2.0223, 1.3348, 0, 4.8044,
1.5038, 1.3643, 0.8733, 0.2461, -0.4446, 1.3045, 3.2742,
30.8394, 11.7400, 2.4034, 1.7746, 1.7577, 0.9607, 0.0442,
3.9889, 1.4837, 1.7618, 3.3478, 8.8492, 1.4621, 2.5760, 2.1393,
3.3807, 5.1346, 3.2747, 4.2256, 0, 9.1492, 2.2327, 3.2131,
0.7812, 5.6280, 4.3531, 3.0376, 0, 2.5974, 0, 0, 13.2124,
5.4720, 5.8825, 4.1720, 0, 0, 9.1763, 3.2657, 12.8071, 5.6631,
3.3602, 6.5160, 9.8204, 7.2552, 9.3110, 14.2020, 13.0856,
8.4447, 3.5041, 13.4695, 23.2570, 3.0882, 1.9253, 1.0224,
1.8424, 2.5196, 3.6491, 4.4493, 1.5597, 1.1289, 2.5398,
2.1689, 0.1312, 1.4828, 3.2035, 0, 1.7510, 1.7134, 0.9782,
2.1905, 2.4741, 1.9444, 1.7641, 1.2308, 1.5454, 3.9813, 3.5484,
10.5579, 2.3651, 0, 1.5791, 4.8181, 2.2992, 0.9704, 4.2329,
2.8464, 0.9600, 1.7150, 1.0063, 0.7892, 1.1170, 0.9646, 5.3663,
7.0778, 0, 5.8426, 3.6976, 3.9911, 5.2948, 0, 0, 1.0306, 0, 0,
2.7461, 2.0330, -1.7840, 0.2337, 3.6593, 1.3135, 0, 0, 0.5699,
0.0335, 0.1695, 1.1936, 0.4344, 0.3048, 0.2220, 3.4814, 0.6040,
5.5779, 6.6382, 1.3828, 3.2119, 1.6023, 6.1006, 0.1175, -0.1214,
0.2390, -0.3276, 3.3297, 0.7451, 0.0524, -0.1077, -0.2485,
0.5715, -0.0968, -0.6024, -3.1734, 0.2114, -1.2441, -0.3489,
0.3695, 0.9886, -1.1810, -0.1526, -0.0414, -0.5941, 0.3258,
-1.8403, 11.5351, 12.3481, 0.9327, 7.5057, -0.4531, 14.1593,
-2.3026, -2.1535, -2.7514, 4.0747, -0.9493, 0.2232, -0.5946,
2.5962, -0.2509, 0.6304, -0.0811, -0.2568, -0.4329, 0, 0.0446,
0.1027, 0.2117, -0.7191, 2.4103, 0.8092, -1.0802, 0.8607,
0.8981, 0.1088, 1.9470, 1.2057, 0.3666, -0.2363, 0.4506, 0, 0,
2.2421, -0.6997, -0.2636, -1.1057, 0.0642, 0.0790, -10.8058,
-1.0516, -6.9427, 0.6572, 0.0416, -0.3151, 1.5819, -0.8604,
-0.1326, -0.4669, -0.3548, -0.1727, 0.6817, -1.0631, 0.5124,
2.8497, 1.3691, 1.5069, 0.0370, 0, -0.3312, 0, -2.0822, 0.7743,
-0.8578, -0.8638, 0.5076, -0.3978, 0, 0, -0.4666, 0.1737,
-1.9233, 0.7334, -0.0383, 1.0497, -0.6388, -0.6218, 0.9840,
-0.2762, -0.3689, -0.3841, 1.7722, 0.4553, 2.0561, -0.5769,
-0.2556, 1.6282, -0.1341, -1.6848, -0.9802, 0.3018, 0.1018,
0.2811, -0.3189, -1.5257, 11.2271, 0.7732, 0.6674, -0.1073,
-1.3891, -0.0781, 0, -0.0604, -1.1888, 0.6669, -0.3798, -2.6542,
0.2479, 1.1395, 0.0570, -0.5640, 1.9902, 0, 0.5460, 0.4497,
0.6647, 0.0792, 0.6457, 0.9608, 16.2235, 16.8558, -1.0394,
-0.4486, -0.1376, 0.4361, 3.6847, 4.9038, -7.0038, 5.9653,
1.5629, -9.1856, 0.2612, -1.8403, 0.0393, 0.9514, 3.4983,
-0.3048, -1.3060, -4.9289, -10.1007, 1.0834, -0.4803, -3.2676,
-0.3545, 0.2825, -1.2836, 0.3378, 1.8941, -2.7585, -3.0362,
-3.2228, 1.6600, 7.0402, -3.3463, 6.8373, -1.5856, 2.0821,
-4.4725, -2.5898, 1.0358],
"tb": [0.8491, 0.7141, 0.2925, -0.0671, 1.5596, 1.5597, 1.3621, 1.2971,
1.2739, 2.6840, 2.4014, 2.5400, 1.7618, 1.6767, 0.8365, 1.7324,
1.1995, 1.5468, 1.3977, 1.5653, 1.4925, 0.8665, 0.5229, 2.4308,
2.9262, 2.1472, 2.3057, 2.7341, 2.5670, 3.3205, 5.1108, 6.0677,
3.1178, 2.6761, 2.1748, 1.7287, 3.4650, 2.5388, 3.5172, 3.1228,
2.9850, 2.2869, 1.6918, 2.5972, 3.1952, 0.4621, 3.0854, 2.1903,
1.7703, 1.3368, 0.8924, 0.4983, 1.8522, 2.7987, 2.0948, 1.6525,
2.2514, 1.8750, 1.2317, 1.3841, 1.1222, 3.8298, 2.9230, 2.1918,
2.0315, 1.5332, 1.4291, 4.5871, 3.9774, 2.8870, 4.1424, 3.0972,
3.4891, 3.1220, 0, 3.1853, 4.5311, 3.8069, 3.3059, 4.5750,
3.2069, 1.8896, 3.2656, 5.8779, 7.4566, 6.5652, 5.0724, 6.6810,
6.0070, 0, 5.0664, 7.6172, 5.6487, 8.3775, 7.3497, 5.1373,
7.5850, 7.4955, 0, 8.9406, 16.3539, 2.0796, 7.1529, 4.1459,
5.7604, 1.1633, 0, 2.6364, 2.0246, 1.7049, 3.3420, 2.9609,
3.9093, 1.5022, 1.3738, 1.0084, 2.2238, 0.5142, 1.1916, 2.5053,
2.0542, 1.7227, 2.0669, 0.7945, 3.7739, 2.8414, 3.1778, 2.4231,
0.8504, 1.5147, 4.5721, 4.0142, 0, 4.8721, 4.2329, 3.6653,
3.1669, 3.1974, 2.5910, 2.0902, 3.2675, 2.3323, 2.9892, 2.6524,
2.0965, 1.6412, 2.9731, 6.2796, 7.0976, 3.9199, 6.7785, 5.5627,
6.1185, 8.4333, 2.0536, 1.0984, 2.7900, 5.6433, 4.5468, 5.1567,
3.7657, 2.3522, 2.9272, 2.8847, 2.8451, 2.6124, 2.2036, 0.8234,
0.5946, 0.0386, 1.5985, 1.2529, 1.1975, 1.5109, 2.1634, 1.6541,
6.5230, 6.6710, 1.0245, 2.8793, 2.3256, 0, -0.0035, 0.0072,
0.3160, 0.3976, 0.4487, 0.1097, 0.0369, -0.0537, -0.0093,
-0.1286, -0.0215, -0.0803, -0.3203, -0.2066, -0.0500, -0.2825,
-0.5325, -0.2987, 0.2981, -0.2310, 0.8854, 0.5082, -0.0064,
0.2318, 0, 0, -0.1222, 0, -0.4625, 0, 0.9198, 0, 0, 1.8957,
1.3434, 0.1815, 0.3401, 0.5794, 1.2171, 0.2427, 0.1399, 0.0591,
-0.3192, -0.3486, -0.0268, 0.0653, -0.0430, 0.1102, 0.0667,
0.4537, 0.2590, -0.0425, 0.1005, 1.0587, -0.0177, 0.1702,
0.1584, 0.3094, 0.1030, 0.2238, 0.5390, -0.2197, 0.0886, 0.0352,
0, 0.0196, 0.0494, -1.5974, 0.4267, 0.0879, 0.6115, 0.0173,
-0.0504, -0.2474, -0.5736, -0.1210, -0.0148, 0.1395, 0.1829,
-0.1192, -0.0455, 0.2667, -0.1899, -0.3179, -0.3576, -0.7458,
0.1218, -0.0569, 0.4649, 0.1506, 0.1300, 0.6540, 0.0043,
-0.2692, -0.2787, -0.2107, 0.0926, -0.4495, 0.0722, 0.0319,
-0.6775, 0.0604, -0.3080, -0.1590, 0.0217, 0.1007, -0.1647,
-0.1387, -0.1314, 0.2745, 0.1645, 0.0754, -0.1196, 0.0494,
0.1344, 0.0032, -0.0817, -0.1564, -0.5176, 0.5477, 0.3533,
-0.3888, 1.6498, 0, 1.0750, 0.7193, 1.1867, 0, 0.2991, -0.4605,
0.0060, -0.1819, 0.4516, 1.3440, 0, -0.3741, -0.4961, -0.4574,
-0.1736, 0.3138, 0.5928, 0.4387, 0.5632, 0.1415, 0, 0.2391,
0.7192, 0, 0, 1.0171, 0.9674, 0.1126, 0.9317, 0.5031, 0, 0, 0,
0, 0, 0.2242, 0.0185, 0, -0.0850, 1.1457, 0.5768, -0.5335,
-5.2736, 0, 0.6571, -0.8252, 0.2790, -0.6848, 0.0441, -0.1666,
-0.2692, -0.2807, -0.3294, -0.2931, -0.3360, 0.0402, 1.0466,
-7.8521, 0, 0.9126, 0, -0.9432, -0.5844, 0.1733],
"tc": [1.7506, 1.3327, 0.5960, 0.0306, 3.2295, 3.0741, 2.7717, 2.5666,
2.6391, 5.4330, 4.8219, 0, 3.7897, 4.5870, 2.0337, 5.4979,
3.1058, 4.5344, 4.0954, 3.4611, 2.9003, 1.9512, 0.8576, 5.7861,
6.5062, 4.9967, 6.4572, 0, 5.2188, 9.3472, 14.6038, 15.4515,
7.0058, 5.7157, 4.4743, 0, 9.4806, 5.8013, 9.4795, 6.3179,
5.9619, 4.7558, 0, 5.6064, 6.7311, 0, 0, 4.7346, 3.4393, 2.4217,
0.7889, 0.2511, 3.6588, 8.1745, 4.2847, 2.8546, 4.5529, 3.2422,
2.0057, 3.0106, 2.1673, 10.2155, 8.4081, 5.8536, 4.7420, 0, 0,
12.9827, 8.4309, 5.8829, 10.4124, 8.1381, 0, 0, 0, 6.5884,
10.9507, 9.5487, 0, 12.1243, 0, 0, 0, 0, 0, 25.1184, 20.5590, 0,
15.4603, 0, 0, 0, 0, 0, 19.8979, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 6.2561, 4.3756, 3.7063, 7.8956, 0, 8.8073, 3.3179, 2.6702,
2.1633, 3.5702, 0.8543, 1.7737, 5.1653, 0, 3.0593, 5.7046,
1.5491, 12.4470, 8.4199, 8.5775, 4.5036, 0.8976, 4.0947, 0, 0,
0, 10.4579, 0, 0, 5.8307, 7.7300, 5.8527, 4.6431, 9.5115,
7.7987, 6.9733, 6.4871, 0, 0, 0, 19.8953, 17.2586, 8.6910, 0,
18.9366, 0, 0, 0, 0, 0, 0, 0, 0, 16.9914, 0, 38.6148, 6.6804,
6.6418, 6.0159, 0, 1.8815, 1.1020, -0.2399, 3.6426, 3.5475, 0,
4.4913, 5.9726, 4.3905, 0, 0, 2.7409, 12.6396, 5.5523, 24.3995,
-0.0471, -0.1778, 0.5602, 0.8994, 1.5535, 0.4214, -0.0172,
0.0262, -0.1526, -1.0434, -0.0338, -0.3658, -4.7275, -0.5537,
-0.3576, -0.6768, -1.5224, -0.3940, 0.3414, 0, 1.9395, 1.2342,
-3.3555, -1.1598, 0, 62.4740, 1.9595, 0.7686, 0, 0, 0.4750, 0,
-0.2697, 1.9699, 0.2311, 2.1272, 1.5418, 0, 2.7051, 0.7502,
0.2900, 0, 0, 0, -0.0188, -1.1249, -0.0880, 0, -1.7762, 2.2630,
1.4069, 0.2698, -1.0107, 2.4950, 0, 0.8705, 0, 0, 0, 1.7860, 0,
0, 1.1629, 0, 0, 0.1565, 0.8016, 0, 2.4070, 0, 0, -0.2509,
-1.1019, 0, 0, -0.1233, 0.3816, 0.1093, 0, 0, -0.2832, 0, 0,
0.8973, -0.9610, -2.0833, 0, -0.6447, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-0.3450, 0.1607, 0.1090, -2.1303, -0.0003, 0, -0.3161, -0.0693,
0.0803, 1.0088, 0.0908, -0.6412, 2.1116, 0.9353, 0.6241,
-1.0256, 0.5784, 0.6595, 0, 0, 0, -2.2773, 0, 0, 0, -1.6986, 0,
0.4950, 0.1725, 6.6872, 2.6769, 0, 0, -4.3195, 0, 0, 0.0834, 0,
-0.0185, 6.1894, -0.2474, 0.5060, 3.0321, 0, 2.1761, 0, 0.4963,
0, 0.1174, 0.7039, 0, 0, -0.2678, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3.5541, 0, 0, 0, 3.5541, 0.9519, 0, 0, 0, 0, -0.9785, -1.4002,
0, -1.0095, 0.1605, -0.6765, 0, 0, 0, 0, -1.0430, 3.3011, 0, 0,
2.8885, 0, 1.1251, 3.9241, 7.7134],
"pc": [0.018615, 0.013547, 0.007259, 0.001219, 0.025745, 0.023003,
0.021137, 0.019609, 0.014114, 0.035483, 0.029678, 0, 0.014010,
0.010888, 0.007260, 0.003564, 0.006512, 0.012859, -0.003339,
0.020907, 0.018082, 0.011795, 0.011298, 0.030637, 0.026282,
0.026371, 0.019507, 0, -0.005401, -0.008788, 0.009885, 0.017100,
0.025227, 0.019619, 0.012487, 0, 0.011007, 0.010204, 0.019633,
0.033812, 0.026983, 0.021990, 0, 0.015249, 0.018948, 0, 0,
0.013087, 0.020084, 0.017954, 0.014487, 0.005613, 0.005115,
0.011413, 0.013049, 0.010790, 0.015863, 0.020482, 0.005329,
0.021186, 0.027454, 0.005335, -0.005596, -0.000838, 0.000571,
0, 0, 0.036523, 0.029034, 0.024654, 0.020978, 0.024346, 0, 0, 0,
0.025065, 0.021056, 0.014899, 0, 0.018311, 0, 0, 0, 0, 0,
0.001467, 0.023455, 0, 0.043090, 0, 0, 0, 0, 0, 0.023447, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.021419, 0.015640, 0.009187,
0.028236, 0, 0.036746, 0.023315, 0.020040, -0.010120, 0.031524,
0.018572, 0.048565, 0.037948, 0, 0.041641, 0.016033, 0.014037,
0.014403, 0.010199, -0.004637, -0.001460, 0.012034, 0.007923,
0, 0, 0, 0.025986, 0, 0.018783, -0.002815, 0.017299, 0.008968,
0.005118, 0.010086, 0.006399, 0.018013, 0.015254, 0, 0, 0,
-0.005534, -0.000784, 0.004240, 0, -0.027208, 0, 0, 0, 0, 0, 0,
0, 0, -0.029036, 0, -0.126108, 0.007235, 0.021238, 0.010678, 0,
0.009884, 0.007596, 0.003268, 0.013815, 0.010576, 0, 0.019101,
-0.003678, -0.001179, 0, 0, -0.000387, -0.000207, 0.001540,
0.002487, 0.000473, 0.000340, -0.003207, -0.008733, -0.016852,
0.000792, -0.000101, 0.000815, -0.000163, 0.005789, -0.000111,
-0.001892, 0.006916, -0.000569, 0.001812, 0.000246, 0.003224,
-0.002912, -0.000516, 0, -0.004712, 0.002581, 0.000726,
0.000157, 0, -0.002696, -0.001479, 0.000090, 0, 0, -0.001445, 0,
0.000655, 0.002330, -0.001022, 0.001321, -0.003385, 0,
-0.001999, -0.000231, -0.000432, 0, -0.010021, 0, 0.000152,
0.000893, 0.000044, 0, -0.000763, 0.002464, -0.000034,
-0.000417, 0.002944, -0.000796, 0, 0.000183, 0, 0, 0, 0.004195,
0, 0, -0.000384, 0, 0, -0.001446, -0.006495, 0, -0.002650, 0, 0,
-0.000624, 0.003921, 0, 0, 0.000779, 0.001694, 0.000124, 0, 0,
0.002114, 0, 0, 0.004640, 0.000039, -0.014535, 0, -0.000199, 0,
0, 0, 0, 0, 0, 0, 0, 0, -0.000692, 0.001235, -0.000610,
-0.004683, 0.000058, 0, 0.000522, 0.001790, 0.000467, -0.005598,
0.000255, 0.004090, -0.007612, -0.001811, -0.000500, 0.007006,
0.007006, 0.001283, 0, 0, 0, 0.008029, 0, 0, 0, 0.001544, 0,
0.000728, -0.000327, 0.001937, 0.003792, 0.003254, 0, 0.006734,
0, 0, -0.011090, 0, 0.000851, -0.040100, -0.005826, -0.003746,
0.003007, 0, 0.002745, 0, -0.000985, 0, -0.002673, -0.004661, 0,
0, -0.001837, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.004600, 0, 0, 0,
0.017201, 0.008484, 0, 0, 0, 0, 0.001162, -0.004716, 0,
-0.001332, -0.002030, -0.002436, 0, 0, 0, 0, 0.004695, 0.015244,
0, 0, 0.007280, 0, -0.005369, -0.011207, -0.001275],
"vc": [68.35, 56.28, 37.50, 16.01, 111.43, 98.43, 91.40, 83.89, 90.66,
143.57, 146.36, 0, 84.60, 74.66, 42.39, 35.71, 34.65, 26.47,
36.47, 97.33, 87.19, 73.51, 67.20, 134.69, 128.84, 110.74,
112.08, 0, 30.61, 50.77, 90.66, 119.10, 127.99, 112.79, 97.16,
0, 90.69, 71.08, 122.91, 148.91, 132.89, 125.52, 0, 93.29,
105.53, 0, 0, 81.17, 88.20, 74.03, 60.06, 52.96, 47.27, 117.62,
76.36, 80.01, 77.04, 95.15, 99.16, 94.94, 74.05, 81.40, 86.37,
108.39, 63.39, 0, 0, 133.62, 134.73, 120.74, 119.08, 94.91, 0,
0, 0, 141.24, 157.57, 143.36, 0, 133.06, 0, 0, 0, 0, 0, 138.71,
190.71, 0, 244.71, 0, 0, 0, 0, 0, 162.08, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 112.12, 100.78, 87.01, 159.79, 0, 204.71, 87.71,
78.08, 0, 102.71, 95.09, 108.85, 171.04, 0, 146.01, 92.67,
54.36, 131.08, 104.12, 104.28, 77.99, 24.62, 57.77, 0, 0, 0,
159.33, 0, 147.66, 58.01, 105.68, 109.36, 94.01, 95.08, 57.89,
122.03, 106.60, 0, 0, 0, 82.36, 89.95, 115.80, 0, 144.58, 0,
135.47, 0, 0, 0, 0, 0, 0, 85.59, 0, -142.79, 93.56, 125.43,
194.36, 0, 49.24, 44.95, 33.32, 83.91, 70.98, 0, 83.96, 51.80,
31.41, 0, 0, 17.69, 57.38, 45.45, 96.66, 1.71, 3.14, -3.75,
-10.06, -8.70, -7.88, 0.50, 0.14, -2.67, 10.36, -4.08, 3.02,
10.56, 4.28, 2.98, -3.04, 13.98, 5.17, 0.68, 0, 7.54, 5.58,
20.82, -26.31, 0, 17.78, 12.46, 15.17, 0, 0, 7.91, 0, 20.43,
24.82, 14.54, -10.31, -2.33, 0, -0.73, 1.69, -4.54, 0, 2.63, 0,
2.80, 3.82, 0.21, 0, 4.36, -4.88, 2.50, -7.49, -0.25, -11.01, 0,
2.00, 0, 0, 0, -3.40, 0, 0, -7.02, 0, 0, -2.04, -5.70, 0, 0.39,
0, 0, 0.03, -4.43, 0, 0, 2.79, -2.95, 6.19, 0, 0, -16.97, 0, 0,
-7.73, -2.50, -51.50, 0, -2.00, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-12.03, 1.95, -5.17, -14.40, 0, 0, 2.86, 6.54, 3.70, -9.58,
-2.05, -7.67, -7.04, -0.04, -0.04, 8.68, 8.68, 14.28, 0, 0, 0,
-50.26, 0, 0, 0, -3.72, 0, -23.74, -0.84, 1.44, -1.62, -0.69, 0,
6.69, 0, 0, -36.89, 0, -8.87, -26.26, -8.55, -11.56, 9.73, 0,
7.72, 0, -3.33, 0, -4.67, 14.31, 0, 0, -7.05, 0, 0, 0, 0, 0, 0,
0, 0, 0, 12.60, 0, 0, 0, 0.44, 1.42, 0, 0, 0, 0, -2.63, 28.42,
0, -6.88, -3.17, -3.85, 0, 0, 0, 0, 35.21, -6.96, 0, 0, -24.02,
0, 63.29, -2.71, -12.04],
"gf": [2.878, 8.064, 8.254, 16.413, 95.738, 92.656, 85.107, 88.691,
93.119, 229.906, 226.710, 0, 230.029, 216.013, 26.732, 20.379,
33.912, 23.331, 89.902, 24.919, 31.663, 30.393, 40.127, 114.531,
111.216, 115.728, 263.205, 0, -144.051, -131.327, -337.090,
-312.422, -120.667, -120.425, -116.799, 0, -91.812, -100.882,
-80.222, -306.733, -298.332, -301.414, 0, -276.878, -291.662, 0,
0, -299.803, -90.329, -105.579, -101.207, -92.804, -83.354,
68.812, 61.452, 55.202, 88.512, 88.874, 73.101, 125.906,
121.247, 66.470, 98.195, 143.280, 42.687, 0, 0, 134.997,
142.475, 142.295, 162.175, 130.986, 0, 0, 0, 0, 25.783, 16.407,
0, 57.352, 0, 0, 0, 0, 0, -127.512, -102.912, 0, -56.412, 0, 0,
0, 0, 0, -44.595, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -19.484,
-31.933, -37.848, -24.214, 0, -44.122, -180.212, -228.239, 0,
-411.239, 0, -615.333, -249.020, 0, -396.814, 1.985, -141.306,
91.505, 42.977, 43.910, 5.528, -182.973, -29.876, 0, 0, 0,
-233.335, 0, -239.423, -75.568, 27.469, 27.030, 27.338, 48.905,
15.818, 35.845, 42.684, 0, 0, 0, -52.231, -257.608, 0, 0,
-519.853, 0, -314.643, 0, 0, 0, 0, 0, 0, 0, 0, 0, -447.186,
11.149, 1.890, 0, 13.287, 6.107, -0.193, 86.493, 67.056, 0, 0,
72.540, 83.779, 0, 0, -114.062, -156.672, 12.020, -241.601,
-0.418, -2.776, 6.996, 8.938, 10.735, -6.562, -0.120, 1.006,
3.857, -0.525, -1.543, 2.202, 3.920, -11.779, -16.075, -5.614,
-25.382, 6.621, 4.833, 0, -1.051, -1.506, 0.344, 3.848, 0,
3.145, -5.217, -4.281, 0, 0, -2.678, 0, -7.376, 18.974, 0.558,
6.728, 1.306, 0, 0, 10.556, -10.098, 0, 14.470, 0, 8.207,
-8.304, -12.085, 0, 10.194, -8.081, -2.044, 6.043, 0, 25.157,
0, 16.725, 0, 0, 0, 3.020, 0, 0, 1.556, 0, 0, 1.238, 0.354, 0,
-6.438, 0, 0, 28.972, -22.533, 0, 0, 4.178, 5.332, 6.084, 0, 0,
6.768, 0, 0, -3.024, 2.046, -11.965, 0, -16.723, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4.358, 0.107, 18.755, -18.970, 0, 0, 1.577, -1.037,
-0.709, 7.731, -2.767, -2.148, 14.226, 4.926, -0.474, -9.713,
-2.523, -4.703, 0, 0, 0, -16.570, 0, 0, 0, -4.708, 0, 3.079,
7.536, -8.397, 10.194, 1.662, 0, 4.100, 0, 0, -7.035, 0, -1.601,
-4.459, -5.267, -4.203, 1.318, 0, -67.517, 0, 0, 0, -0.729,
-0.702, 0, 0, 11.125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8.333, 0, 0, 0,
-2.221, -0.596, 0, 0, 0, 0, 2.668, -4.229, 0, 1.993, -2.940,
-1.873, 0, 0, 0, 0, 3.896, 13.843, 0, 0, -16.040, 0, 8.688,
-5.112, 20.073],
"hf": [-42.479, -20.829, -7.122, 8.928, 57.509, 69.664, 61.625, 81.835,
95.710, 198.840, 208.490, 0, 224.902, 228.282, 12.861, 20.187,
30.768, 24.701, 70.862, -19.258, 4.380, 18.440, 35.297, 77.863,
88.084, 90.927, 257.448, 0, -178.360, -164.191, -389.931,
-361.249, -180.604, -163.090, -139.909, 0, -106.965, -130.816,
-107.159, -387.458, -364.204, -352.057, 0, -327.678, -307.727,
0, 0, -331.397, -156.062, -152.239, -147.709, -121.608,
-101.783, -10.703, 0.730, 2.019, 24.740, 23.610, 21.491, 55.024,
65.331, 17.501, 53.274, 115.606, -8.556, 0, 0, 99.245, 151.390,
124.770, 148.968, 124.917, 0, 0, 0, 0, -65.620, -60.750, 0,
-22.931, 0, 0, 0, 0, 0, -201.369, -203.069, -183.613, -188.069,
-48.210, 0, 0, 0, 0, -125.052, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -65.056, -65.127, -62.881, -80.812, 0, -105.369, -227.469,
-261.901, 0, -463.901, 0, -673.875, -306.765, 0, -458.074,
-17.002, -160.965, 95.048, 38.917, 47.632, -1.703, -201.968,
-46.963, 0, 0, 0, -343.903, 0, -333.385, -125.111, -8.021,
3.510, 12.589, 41.648, 11.339, -3.337, 21.492, 0, 0, 0, -71.050,
-305.498, -430.833, 0, -621.412, 0, -370.493, 0, 0, 0, 0, 0, 0,
-1060.325, -1005.161, 72.339, -516.282, -52.241, -51.390, 0,
-18.575, -12.464, -2.098, 59.841, 64.295, 0, 0, 23.138, 65.622,
0, 0, -137.353, -180.166, 15.453, -283.839, -0.419, -1.967,
6.065, 8.078, 10.535, -11.786, -0.048, 1.449, 3.964, 1.514,
0.033, 4.994, 1.121, -12.295, -14.140, -4.422, -25.929, 8.244,
0.000, 0, -0.592, -0.959, -1.443, 3.608, 0, 6.598, -6.058,
-6.929, 0, 0, -1.727, 0, 7.292, 5.661, -3.906, 0.794, 4.025, 0,
0, -7.261, -9.411, 0, 17.014, 0, 9.715, -16.903, -12.509, 0,
9.090, -8.570, -3.447, 5.486, 0, 16.950, 0, 7.568, 0, 0, 0,
4.145, 0, 0, 4.066, 0, 0, -0.751, -0.192, 0, -12.517, 0, 0,
24.560, -12.044, 0, 0, 4.452, 4.428, -4.128, 0, 0, 10.390, 0, 0,
-8.050, 3.446, 14.531, 0, -7.569, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-15.751, 0.238, 21.498, -21.975, 0, 0, 1.486, 0.294, 0.384,
5.743, -0.449, -7.538, 12.710, 5.220, -1.340, -9.644, -2.446,
-6.466, 0, 0, 0, -17.778, 0, 0, 0, -6.572, 0, 4.171, 5.411,
-8.651, 8.164, 1.753, 0, 0.371, 0, 0, 7.782, 0, 2.689, -4.558,
-5.914, -4.863, 0.084, 0, -66.870, 0, 0, 0, 0.866, -2.291, 0, 0,
7.108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9.212, 0, 0, 0, -16.080,
-1.994, 0, 0, 0, 0, -5.074, -2.303, 0, 1.904, -2.274, -1.316, 0,
0, 0, 0, 5.819, 11.387, 0, 0, -19.089, 0, 13.586, -0.314,
15.786],
"hv": [0.217, 4.910, 7.962, 10.730, 4.031, 9.456, 8.602, 14.095,
19.910, 11.310, 0, 0, 6.144, 12.540, 3.683, 6.631, 6.152, 6.824,
9.420, 8.279, 11.981, 13.519, 16.912, 0, 0, 0, 0, 0, 24.214,
34.099, 17.002, 0, 15.195, 19.392, 20.350, 0, 25.036, 12.370, 0,
19.342, 21.100, 24.937, 23.739, 15.422, 25.206, 0, 0, 0, 5.783,
9.997, 14.620, 13.850, 16.151, 15.432, 16.048, 17.257, 11.831,
13.067, 14.048, 9.493, 12.636, 23.335, 23.026, 22.249, 13.425,
0, 0, 21.923, 24.963, 24.967, 0, 16.639, 0, 0, 0, 0, 29.640,
29.173, 0, 24.863, 0, 0, 0, 0, 46.490, 44.240, 0, 52.723,
38.290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
11.754, 12.048, 16.597, 17.251, 20.473, 20.550, 8.238, 0, 6.739,
0, 1.621, 7.352, 8.630, 0, 8.086, 11.224, 3.965, 0, 14.393,
14.171, 9.888, 0, 0, 0, 0, 0, 31.493, 0, 0, 0, 16.815, 17.098,
18.397, 17.413, 9.813, 14.296, 16.965, 19.038, 19.996, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21.613, 0, 0, 0,
3.341, 6.416, 7.017, 7.767, 7.171, 0, 0, 13.700, 0, 0, 0, 6.877,
17.124, 12.262, 0, -0.399, -0.417, 0.532, 0.623, 5.086, 1.632,
0.064, -0.060, 0.004, -0.550, -0.403, 0.723, 7.422, -1.871, 0,
-0.206, -1.579, 0, 0, 0, -6.611, 0, 2.384, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -0.683, 1.203, 0, 0, 0, 0.372, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4.608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.030,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0.096, -0.428, 0.153, 0, 0, 0, 0, 0,
2.134, -4.607, 0, 0, 0, 0, 0, -0.616, 0, 0, 0, 0, 0, 0, 0,
0.808, 0.585, 0, 0, 0, 1.164, -1.910, 0.331, 1.433, 0.313,
-0.117, 0, 0, 0, -1.683, 0.277, 0.397, -0.939, -1.269, -1.719,
-3.419, 1.742, 0.572, -2.744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
"hm": [1.660, 2.639, 0.134, -1.232, 1.268, 4.441, 2.451, 3.032, 2.616,
7.076, 7.435, 6.000, -1.548, 6.128, 1.948, 0.845, 1.095, -0.531,
2.555, 2.969, 0.948, -1.037, -2.856, 4.013, 8.274, 3.324, 2.514,
0, 4.786, 8.427, 10.692, 14.649, 8.062, 8.826, 7.205, 0, 4.852,
11.325, 7.273, 7.910, 9.479, 9.317, 0, 8.115, 8.149, 0, 5.875,
10.573, 5.089, 4.891, 4.766, 2.458, -0.118, 13.482, 6.283, 0,
4.490, 7.711, 2.561, 6.008, 1.756, 6.542, 0.624, -2.576, 6.158,
0, 0, 7.303, 9.464, 4.166, 6.788, 6.867, 0, 0, 0, 0, 10.989, 0,
-4.187, 7.572, 6.302, 0, 9.353, 0, 0, 16.840, 17.429, 0, 11.553,
0, 0, 0, 0, 16.811, 8.658, 0, 10.959, 4.370, 0, 9.862, 12.845,
10.958, 12.098, 9.557, 16.703, 18.460, 0, 6.353, 0, -0.082,
6.781, 1.823, 3.492, 7.139, 3.917, 0, 7.011, 0, 2.526, 3.114, 0,
2.156, 4.435, 2.003, 2.814, 5.734, 6.103, 4.826, 3.096, 5.181,
0, 0, 0, 8.454, 0, 12.594, 0, 10.068, 4.266, -0.623, 4.513,
5.829, 7.497, 4.096, 0, 0, 0, 13.403, 17.748, 0, 0, 0, 0, 3.281,
0, 0, 0, 0, 0, 0, 0, 4.256, -5.654, 8.363, 0, 0, 0, 1.069,
2.511, -0.921, 1.185, 2.559, 0, 5.351, 8.655, 0.269, 3.993, 0,
3.806, 6.137, 5.170, 9.934, 0.396, 0.554, -1.766, 0.351, -1.089,
1.408, 0.070, -0.632, -0.368, -0.369, 0.105, 1.005, 5.475,
1.208, -2.666, -0.599, -0.459, 0, -0.149, 0, -0.306, -0.041,
-1.575, 0, 0, 7.032, 4.264, 29.245, 0, 0, 0, 0, -3.623, -8.038,
-4.371, -0.931, 0, 2.303, 1.100, 0, 3.169, 2.823, 2.212, 0,
-0.480, -0.405, -0.014, 0, 1.291, 0, -0.639, 0.969, -2.754, 0,
0, 0.890, -4.086, 0, 0, 0, 0, 0, 0, 0, 0, -0.270, -0.878, 0,
-1.670, 0, 0, 2.235, 0.961, 0, 0, 0.033, -1.137, 2.421, 0, 0, 0,
0, 0, 0, 0.328, 0.402, 0, -0.878, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-1.237, 0, 0.235, 0, 0, -1.470, -1.059, 1.244, 0.473, -0.302,
-2.530, -1.736, -2.246, 8.034, -0.786, 3.671, 5.975, 0, 0, 0,
-1.487, 0, 0, 0, -7.583, 0, -4.840, -0.272, 1.661, -3.479,
0.301, 0, 5.666, 0, 0, -0.607, 0, -2.703, -0.385, -0.442,
-0.143, 5.377, 0, 0, 0, 0.223, 0, -0.958, 3.275, 0, 0, -4.091,
0, 0, -3.687, 2.047, 7.327, 0, 2.510, 0.018, 0, -0.784, 0, 0,
-2.485, 0.196, 1.934, 0, -0.599, 0, 0, 1.193, -3.971, -1.153,
0.694, -3.699, 2.037, 2.150, 0, 0, 0, 1.176, 5.027, 0, 0,
-3.417, 0, -4.967, -2.587, -1.365],
"txt": [
("CH3-",), # 0
("-CH2-",),
(">CH-",),
(">C<",),
("CH2=CH-",),
("-CH=CH-",),
("CH2=C<",),
("-CH=C<",),
(">C=C<",),
("CH2=C=CH-",),
("CH2=C=C<",), # 10
("-CH=C=CH-",),
("CH≡C-",),
("-C≡C-",),
("(a)CH",),
("(a)C (fused)",),
("(a)C (ring fused)",),
("(a)C (others)",),
("(a)N-",),
("(a)C-CH3",),
("(a)C-CH2-",), # 20
("(a)C-CH<",),
("(a)C-C<",),
("(a)C-CH=CH2",),
("(a)C-CH=CH-",),
("(a)C-C=CH2",),
("(a)C-C≡CH",),
("(a)C-C≡C-",),
("-OH",),
("(a)C-OH",),
("-COOH",), # 30
("(a)C-COOH",),
("CH3-CO-",),
("-CH2-CO-",),
(">CH-CO-",),
(">C-CO-",),
("(a)C-CO-",),
("-CHO",),
("(a)C-CHO",),
("CH3-COO-",),
("-CH2-COO-",), # 40
(">CH-COO-",),
(">C-COO-",),
("HCOO-",),
("(a)C-COO-",),
("(a)C-OOCH",),
("(a)C-OOC-",),
("COO- (others)",),
("CH3-O-",),
("-CH2-O-",),
(">CH-O-",), # 50
(">C-O-",),
("(a)C-O-",),
("-CH2-NH2",),
(">CH-NH2",),
(">C-NH2",),
("CH3-NH-",),
("-CH2-NH-",),
(">CH-NH-",),
("CH3-N<",),
("-CH2-N<",), # 60
("(a)C-NH2",),
("(a)C-NH-",),
("(a)C-N<",),
("NH2 (others)",),
("-CH=N-",),
(">C=N-",),
("-CH2-CN",),
(">CH-CN",),
(">C-CN",),
("(a)C-CN",), # 70
("CN (others)",),
("-CH2-NCO",),
(">CH-NCO",),
(">C-NCO",),
("(a)C-NCO",),
("-CH2-NO2",),
(">CH-NO2",),
(">C-NO2",),
("(a)C-NO2",),
("NO2 (others)",), # 80
("-ONO",),
("-ONO2",),
("-HCON-CH2CH2",),
("-HCONH-CH2",),
("-CO-NH2",),
("-CO-NH-CH3",),
("-CO-NH-CH2-",),
("-CO-N-CH3CH3",),
("-CO-NCH3-CH2-",),
("-CO-N-CH2CH2<",), # 90
("-CO-NH-CO-",),
("-CO-N-CO-",),
("(a)C-CO-NH2",),
("(a)C-NHCOH",),
("(a)C-N(CO)H-",),
("(a)C-CONH-",),
("(a)C-NHCO-",),
("(a)C-NCO-",),
("-NH-CO-NH-",),
("NH2-CO-NH-",), # 100
("NH2-CO-N<",),
("-NH-CO-N<",),
(">N-CO-N<",),
("(a)C-NHCONH2",),
("(a)C-NHCONH-",),
("-NHCO- (others)",),
("-CH2Cl",),
(">CHCl",),
(">CCl",),
("-CHCl2",), # 110
(">CCl2",),
("-CCl3",),
("-CH2F",),
(">CHF",),
(">CF",),
("-CHF2",),
(">CF2",),
(">CF3",),
("-CCl2F",),
("-CHClF",), # 120
("-CClF2",),
("(a)C-Cl",),
("(a)C-F",),
("(a)C-I",),
("(a)C-Br",),
("I- (others)",),
("Br- (others)",),
("F- (others)",),
("Cl- (others)",),
("-CHNOH",), # 130
(">CNOH",),
("(a)C-CHNOH",),
("-O-CH2-CH2-OH",),
("-O-CH-CH2-OH",),
("-O-CH2-CH-OH",),
("-O-OH",),
("-CH2-SH",),
(">CH-SH",),
(">C-SH",),
("(a)C-SH",), # 140
("-SH (others)",),
("CH3-S-",),
("-CH2-S-",),
(">CH-S-",),
(">C-S-",),
("(a)C-S-",),
("-SO-",),
("-SO2",),
("-SO3 (sulfite)",),
("-SO3 (sulfonate)",), # 150
("-SO4 (sulfate)",),
("(a)C-SO-",),
("(a)C-SO2",),
("PH (phosphine)",),
("P (phosphine)",),
("PO3 (phosphite)",),
("PHO3 (phosphonate)",),
("PO3 (phosphonate)",),
("PHO4 (phosphate)",),
("PO4 (phosphate)",), # 160
("(a)C-PO4",),
("(a)C-P",),
("CO3 (carbonate)",),
("C2H3O (oxirane)",),
("C2H2O (oxirane)",),
("C2O (oxirane)",),
("-CH2- (cyclic)",),
("-CH< (cyclic)",),
(">C< (cyclic)",),
("-CH=CH- (cyclic)",), # 170
("-CH=C< (cyclic)",),
(">C=C< (cyclic)",),
("CH2=C< (cyclic)",),
("-NH- (cyclic)",),
(">N- (cyclic)",),
("-CH=N- (cyclic)",),
(">C=N- (cyclic)",),
("-O- (cyclic)",),
("-CO- (cyclic)",),
("-S- (cyclic)",), # 180
("-SO2- (cyclic)",),
# 2nd order term, index here are 181+, 1 -> 182
("CH(CH3)2", ),
("C(CH3)3", ),
("CHCH3CHCH3", ),
("CH(CH3)C(CH3)2", ),
("C(CH3)2C(CH3)2", ),
("CHn=CHm-CHp=CHk (m, p (0,1); k, n (0,2))", ),
("CH3-CHm=CHn (m (0,1); n (0,2))", ),
("CH2-CHm=CHn (m (0,1); n (0,2))", ),
("CHp-CHm=CHn (m, p (0,1); n (0,2))", ), # 190
("CHCHO or CCHO", ),
("CH3COCH2", ),
("CH3COCH or CH3COC", ),
("CHCOOH or CCOOH", ),
("CH3COOCH or CH3COOC", ),
("CO-O-CO", ),
("CHOH", ),
("COH", ),
("CH3(OH)CHn(OH) (n (0,2))", ),
("NCCHOH or NCCOH", ), # 200
("OH-CHn-COO (n (0,2))", ),
("CHm(OH)CHn(OH) (0<m,n<2)", ),
("CHm(OH)CHn(-) (0<m,n,p<2)", ),
("CHm(NH2)CHn(NH2) (0<m,n<2)", ),
("CHm(NH)CHn(NH2) (1<m,n<2)", ),
("H2NCOCHnCHmCONH2 (1<m,n<2)", ),
("CHm(NHn)-COOH (0<m,n<2)", ),
("HOOC-CHn-COOH (1<n<2)", ),
("HOOC-CHn-CHm-COOH (1<n,m<2)", ),
("HO-CHn-COOH (1<n<2)", ), # 210
("NH2-CHn-CHm-COOH (1<n,m<2)", ),
("CH3-O-CHn-COOH (1<n<2)", ),
("SH-CH-COOH", ),
("SH-CHn-CHm-COOH (1<n,m<2)", ),
("CN-CHn-CHm-CN (1<n,m<2)", ),
("OH-CHn-CHm-CN (1<n,m<2)", ),
("SH-CHn-CHm-SH (1<n,m<2)", ),
("COO-CHn-CHm-OOC (1<n,m<2)", ),
("OOC-CHn-CHm-COO (1<n,m<2)", ),
("NC-CHn-COO (1<n<2)", ), # 220
("CO-CHn-COO (1<n<2)", ),
("CHm-O-CHn=CHp (0<n,m,p<3)", ),
("CHm=CHn-F (0<n,m<2)", ),
("CHm=CHn-Br (0<n,m<2)", ),
("CHm=CHn-I (0<n,m<2)", ),
("CHm=CHn-Cl (0<n,m<2)", ),
("CHm=CHn-CN (0<n,m<2)", ),
("CHn=CHm-COO-CHp (0<n,m,p<3)", ),
("CHm=CHn-CHO (0<n,m<2)", ),
("CHm=CHn-COOH (0<n,m<2)", ), # 230
("aC-CHn-X (1<n<2; X:halogen)", ),
("aC-CHn-NHm (1<n<2; 0<m<2)", ),
("aC-CHn-O- (1<n<2)", ),
("aC-CHn-OH (1<n<2)", ),
("aC-CHn-CN (1<n<2)", ),
("aC-CHn-CHO (1<n<2)", ),
("aC-CHn-SH (1<n<2)", ),
("aC-CHn-COOH (1<n<2)", ),
("aC-CHn-CO- (1<n<2)", ),
("aC-CHn-S- (1<n<2)", ), # 240
("aC-CHn-OOCH (1<n<2)", ),
("aC-CHn-NO2 (1<n<2)", ),
("aC-CHn-CONH2 (1<n<2)", ),
("aC-CHn-OOC (1<n<2)", ),
("aC-CHn-COO (1<n<2)", ),
("aC-SO2-OH", ),
("aC-CH(CH3)2", ),
("aC-C(CH3)3", ),
("aC-CF3", ),
("(CHn=C)(cyclic)-CHO (0<n<2)", ), # 250
("(CHn=C)(cyclic)-COO-CHm (0<n,m<3)", ),
("(CHn=C)(cyclic)-CO- (0<n<2)", ),
("(CHn=C)(cyclic)-CH3 (0<n<2)", ),
("(CHn=C)(cyclic)-CH2- (0<n<2)", ),
("(CHn=C)(cyclic)-CN (0<n<2)", ),
("(CHn=C)(cyclic)-Cl (0<n<2)", ),
("CH(cyclic)-CH3", ),
("CH(cyclic)-CH2-", ),
("CH(cyclic)-CH<", ),
("CH(cyclic)-C<", ), # 260
("CH(cyclic)-CH=CHn (1<n<2)", ),
("CH(cyclic)-C=CHn (1<n<2)", ),
("CH(cyclic)-Cl", ),
("CH(cyclic)-F", ),
("CH(cyclic)-OH", ),
("CH(cyclic)-NH2", ),
("CH(cyclic)-NH-CHn (0<n<3)", ),
("CH(cyclic)-N-CHn (0<n<3)", ),
("CH(cyclic)-SH", ),
("CH(cyclic)-CN", ), # 270
("CH(cyclic)-COOH", ),
("CH(cyclic)-CO", ),
("CH(cyclic)-NO2", ),
("CH(cyclic)-S-", ),
("CH(cyclic)-CHO", ),
("CH(cyclic)-O-", ),
("CH(cyclic)-OOCH", ),
("CH(cyclic)-COO-", ),
("CH(cyclic)-OOC-", ),
("C(cyclic)-CH3", ), # 280
("C(cyclic)-CH2-", ),
("C(cyclic)-OH", ),
(">N(cyclic)-CH3", ),
(">N(cyclic)-CH2-", ),
("AROMRING s1s2", ),
("AROMRING s1s3", ),
("AROMRING s1s4", ),
("AROMRING s1s2s3", ),
("AROMRING s1s2s4", ),
("AROMRING s1s2s5", ), # 290
("AROMRING s1s2s3s4", ),
("AROMRING s1s2s3s5", ),
("AROMRING s1s2s4s5", ),
("PYRIDINE s2", ),
("PYRIDINE s3", ),
("PYRIDINE s4", ),
("PYRIDINE s2s3", ),
("PYRIDINE s2s4", ),
("PYRIDINE s2s5", ),
("PYRIDINE s2s6", ), # 300
("PYRIDINE s3s4", ),
("PYRIDINE s3s5", ),
("PYRIDINE s2s3s6", ),
# 3rd order term, index here are 303+, 1 -> 304
("HOOC-(CHn)m-COOH (m>2; 0<n<2)", ),
("NHn-(CHn)m-COOH (m>2; 0<n<2)", ),
("NH2-(CHn)m-OH (m>2; 0<n<2)", ),
("OH-(CHn)m-OH (m>2; 0<n<2)", ),
("OH-(CHp)k-O-(CHn)m-OH (m,k>0; 0<n,p<2)", ),
("OH-(CHp)k-S-(CHn)m-OH (m,k>0; 0<n,p<2)", ),
("OH-(CHp)k-NHx-(CHn)m-OH (m,k>0; 0<n,p,x<2)", ), # 310
("(CHp)-O-(CHn)m-OH (m>2; 0<n,p<2)", ),
("NH2-(CHn)m-NH2 (m>2; 0<n<2)", ),
("NHk-(CHn)m-NH2 (m>2; 0<k<1; 0<n<2)", ),
("SH-(CHn)m-SH (m>2; 0<n<2)", ),
("NC-(CHn)m-CN (m>2; 0<n<2)", ),
("COO-(CHn)m-OOC (m>2; 0<n<2)", ),
("aC-(CHn=CHm)(cyclic)(fused rings) (0<n,m<1)", ),
("aC-aC (different rings)", ),
("aC-CHn(cyclic) (different rings) (0<n<1)", ),
("aC-CHn(cyclic) (fused rings) (0<n<1)", ), # 320
("aC-(CHn)m-aC (different rings) (m>1; 0<n<2)", ),
("aC-(CHn)m-CH(cyclic) (different rings) (m>0; 0<n<2)", ),
("CH(cyclic)-CH(cyclic) (different rings)", ),
("CH(cyclic)-(CHn)m-CH(cyclic)(different rings) (m>0;0<n<2)",),
("CH (multiring)", ),
("C (multiring)", ),
("aC-CHn-aC (different rings) (0<n<2)", ),
("aC-(CHm=CHn)-aC (different rings) (0<n,m<2)", ),
("(CHm=C)(cyclic)-CH=CH-(C=CHn)(cyclic) (different rings)", ),
("(CHm=C)(cyclic)-CHp-(C=CHn)(cyclic) (different rings)", ), # 330
("aC-CO-aC (different rings)", ),
("aC-CHm-CO-aC (different rings) (0<m<2)", ),
("aC-CO-(C=CHn)(cyclic) (different rings) (0<n<1)", ),
("aC-CO-CO-aC (different rings)", ),
("aC-CO(cyclic) (fused rings)", ),
("aC-CO-(CHn)m-CO-aC (different rings) (m>0; 0<n<2)", ),
("aC-CO-CHn(cyclic) (different rings) (0<n<1)", ),
("aC-CO-NHn-aC (different rings) (0<n<1)", ),
("aC-NHn-CO-NHm-aC (different rings) (0<n,m<1)", ),
("aC-CO-N(cyclic) (different rings)", ), # 340
("aC-S(cyclic) (fused rings)", ),
("aC-S-aC (different rings)", ),
("aC-POn-aC (different rings) (0<n<4)", ),
("aC-SOn-aC (different rings) (0<n<4)", ),
("aC-NHn(cyclic) (different rings) (0<n<1)", ),
("aC-NH-aC (different rings)", ),
("aC-(C=N)(cyclic) (different rings)", ),
("aC-(N=CHn)(cyclic) (fused rings) (0<n<1)", ),
("aC-(CHn=N)(cyclic) (fused rings) (0<n<1)", ),
("aC-O-CHn-aC (different rings) (0<n<2)", ), # 350
("aC-O-aC (different rings)", ),
("aC-CHn-O-CHm-aC (different rings) (0<n,m<2)", ),
("aC-O(cyclic) (fused rings)", ),
("AROMFUSED[2]", ),
("AROMFUSED[2] s1", ),
("AROMFUSED[2] s2", ),
("AROMFUSED[2] s2s3", ),
("AROMFUSED[2] s1s4", ),
("AROMFUSED[2] s1s2", ),
("AROMFUSED[2] s1s3", ), # 360
("AROMFUSED[3]", ),
("AROMFUSED[4a]", ),
("AROMFUSED[4a] s1", ),
("AROMFUSED[4a] s1s4", ),
("AROMFUSED[4p]", ),
("AROMFUSED[4p] s3s4", ),
("PYRIDINEFUSED[2]", ),
("PYRIDINEFUSED[2-iso]", ),
("PYRIDINEFUSED[4]", )]}
FirstOrder = 182
SecondOrder = 304
ThirdOrder = 370
[docs]
def calculo(self):
if self.kwargs["M"]:
self.M = self.kwargs["M"]
else:
self.M = self._M()
tf, tb, tc, pc = 0, 0, 0, 0
vc = 7.95
gf = -34.967
hf = 5.549
hv = 11.733
hm = -2.806
for i, c in zip(self.kwargs["group"], self.kwargs["contribution"]):
tf += c*self.__coeff__["tf"][i]
tb += c*self.__coeff__["tb"][i]
tc += c*self.__coeff__["tc"][i]
pc += c*self.__coeff__["pc"][i]
vc += c*self.__coeff__["vc"][i]
gf += c*self.__coeff__["gf"][i]
hf += c*self.__coeff__["hf"][i]
hv += c*self.__coeff__["hv"][i]
hm += c*self.__coeff__["hm"][i]
# Equations of Table 1
self.Tf = unidades.Temperature(147.45*log(tf))
self.Tb = unidades.Temperature(222.543*log(tb))
self.Tc = unidades.Temperature(231.239*log(tc))
self.Pc = unidades.Pressure(5.9827+(pc+0.108998)**-2, "bar")
self.Vc = unidades.SpecificVolume(vc/self.M, "ccg")
self.Gf = unidades.Enthalpy(gf/self.M, "kJg")
self.Hf = unidades.Enthalpy(hf/self.M, "kJg")
self.Hv = unidades.Enthalpy(hv/self.M, "kJg")
self.Hm = unidades.Enthalpy(hm/self.M, "kJg")
GroupContribution.calculo(self)