Skip to main content
Docs

Search guides and API endpoints, for example “Idempotency-Key” or “submit job”.

    Tools · Fluids & Thermodynamics

    Group-Contribution Properties

    Estimate boiling and critical points, acentric factor, formation enthalpies, heat capacity, logP, and molar refractivity from SMILES.

    Updated October 1, 2026

    On this page

    Prices, workflows, and method papersOpen in the app

    Group-Contribution Properties estimates pure-component properties from structure alone, for molecules without measured data. It is the bridge from a molecule to the fluids and thermodynamics tools: its critical constants and acentric factor are what VLE / Flash and equation-of-state models need.

    How it works

    • Joback group contribution (the open-source thermo package) for boiling and melting points, critical temperature, pressure, and volume, formation enthalpy and Gibbs energy, enthalpies of vaporization and fusion, and ideal-gas heat capacity.
    • Ambrose correlation for the acentric factor ω, from the Joback boiling point and critical constants.
    • RDKit Crippen for logP and molar refractivity.

    Group-contribution estimates are approximations: errors of several percent (more for large or unusual molecules) are normal. Prefer measured values when you have them.

    Inputs

    Up to 10,000 SMILES. Set include_nasa7 to also get NASA-7 polynomial coefficients as a Cantera species snippet in the zip.

    Outputs

    properties.csv, one row per molecule, all SI:

    ColumnProperty
    tb_k, tm_kNormal boiling and melting point (K)
    tc_k, pc_pa, vc_m3_molCritical temperature (K), pressure (Pa), and volume (m³/mol)
    omegaAcentric factor
    hf_j_mol, gf_j_molIdeal-gas enthalpy and Gibbs energy of formation (J/mol)
    hvap_j_mol, hfus_j_molEnthalpy of vaporization and of fusion (J/mol)
    cpig_a … cpig_dIdeal-gas heat capacity polynomial coefficients
    crippen_logp, crippen_mrCrippen logP and molar refractivity

    Molecules Joback can't break into groups keep their row with joback_status and an error; the job still succeeds.

    Hansen Solubility Parameters for solvent selection, NASA / Cantera Species Builder for fitted thermodynamic polynomials, and VLE / Flash for mixtures.

    Run it from the API

    Submit with Submit a job and the job_type below. Price it first with Estimate job reservation cost: submitting reserves that amount from your wallet, and the charge settles at the actual runtime.

    Group-Contribution Properties group-contribution

    Job type
    group-contribution
    Hardware
    cpu (default)
    Typical runtime
    2 min on CPU

    Payload

    Payload fields
    FieldTypeDescription
    input_data[]requiredstring[]

    Limits: min items 1, max items 10000

    input_formatrequiredstring

    One of: "smiles"

    include_nasa7boolean

    Default: false

    Example

    from cognichem_client import CogniChem
    
    client = CogniChem.from_env()  # reads COGNICHEM_API_KEY
    payload = {
        "input_data": ["CCO", "CCN"],
        "input_format": "smiles",
        "include_nasa7": False,
    }
    
    estimate = client.jobs.estimate(job_type="group-contribution", payload=payload, resource="cpu")
    print(f"Reserves ${estimate.cost:.2f}")
    
    job = client.jobs.submit(
        job_name="my-group-contribution-run",
        job_type="group-contribution",
        payload=payload,
        resource="cpu",
    )
    status = client.jobs.wait(job.process_id)
    if status.status == "completed":
        client.jobs.result(job.process_id, save_path=".")

    Sample data from the job catalog; long values are shortened here. Each job_name must be unique among your jobs.

    Workflow inputs

    • Molecules (list)SMILES

    Workflow outputs

    • ArchiveZIP
    • TableCSV