Я хочу создать класс Python для спецификации c Углеводородная хроматография, где пользователь предоставляет только молярный состав определенных компонентов, для которых у меня уже есть физические свойства, необходимые для некоторых оценок:
formula mw ppc tpc
name
methane CH4 16.0430 666.40 -116.67
ethane C2H6 30.0700 706.50 89.92
propane C3H8 44.0970 616.00 206.06
isobutane C4H10 58.1230 527.90 274.46
n-butane C4H10 58.1230 550.60 305.62
... ... ... ... ...
nitrogen N2 28.0134 493.10 -232.51
chlorine CL2 70.9060 1157.00 290.75
water H2O 18.0153 3198.80 705.16
helium HE 4.0026 32.99 -450.31
hydrogen-chloride HCL 36.4610 1205.00 127.77
[64 rows x 4 columns]
Я изначально хотел создать класс Component следующим образом:
class component():
def __init__(self,name, symbol, mw, ppc, tpc):
self.name = name
self.symbol = symbol
self.mw = mw #Molecular Weight
self.ppc = ppc #Pressure Pseudo-critical
self.tpc = tpc #Temperature Pseudo-critical
Однако я не знаю, как поступить, чтобы получить класс, который группирует компоненты, определяемые пользователем.
Пользователь может иметь подобный DataFrame.
name y
0 methane 0.75
1 ethane 0.10
2 propane 0.08
3 isobutane 0.07
Я бы хотел, чтобы пользователь мог выполнять некоторые вычисления на основе предоставленной композиции и таблицы свойств.
Как лучше всего это сделать?