Skip to content

โš™๏ธ Core Workflows

๐Ÿ”Œ Initialize

import pyThermoDB as ptdb
tdb = ptdb.init()

๐Ÿ“‹ Inspect Databooks and Tables

print(tdb.list_databooks(res_format="dataframe"))
print(tdb.list_tables(1, res_format="dict"))
print(tdb.table_info(1, 2, res_format="dict"))

๐Ÿงฑ Load Table Structure Before Building

data_table = tdb.data_load(1, 2)
print(data_table.data_structure())

eq_table = tdb.equation_load(1, 3)
print(eq_table.eq_structure(1))

โœ… Check Component Availability

check = tdb.check_component("carbon dioxide", 1, 2, res_format="dict")
print(check)

๐Ÿ› ๏ธ Build Data and Equation Objects

co2_data = tdb.build_data("carbon dioxide", 1, 2)
print(co2_data.get_property("MW"))
print(co2_data.get_property("molecular-weight"))

co2_vapr = tdb.build_equation("carbon dioxide", 1, 3)
print(co2_vapr.args)
print(co2_vapr.cal(T=298.15))

๐Ÿ”Ž Search Databooks

# exact name + formula
print(tdb.search_databook(
    ["Carbon dioxide", "CO2"],
    res_format="dict",
    search_mode="exact"
))

# formula-only search
print(tdb.search_databook(
    ["CO2"],
    column_names=["Formula"],
    res_format="json",
    search_mode="exact"
))

โš ๏ธ Gotchas

Component key modes

API surfaces use different component key conventions depending on method: Name, Formula, Name-State, and Formula-State.

Table types

Always check table_info(...) first. Behavior differs across Data, Equation, Matrix-Data, Matrix-Equation, and Constants.