Skip to content
Skillpedia
Misc51k · #1843

cantera

Runs chemical reactor simulations to study combustion kinetics. It helps understand how materials react under different conditions.

What it does

This tool calculates the time it takes for a gas mixture to ignite (start burning) under specific conditions. It uses chemical reaction models to predict this time.

When to use it

  • ✓To understand how different gas mixtures react to heat and pressure.
  • ✓To compare the ignition speed of different fuels.
  • ✓To check if a chemical reaction model is accurate for simulating an ignition.

Example of what to ask your AI

“Calculate the ignition delay for a mixture of hydrogen, oxygen, and argon at 1000 Kelvin and 1 atmosphere.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/cantera/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/cantera/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

You provide the gases, their amounts, the temperature, and pressure. The tool uses a chemical reaction model to simulate the process and calculate the exact time until ignition.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add K-Dense-AI/scientific-agent-skills --skill cantera

Or download just the file:

curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/cantera/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Cantera: homogeneous ignition calculations

When to use

Use for a closed, adiabatic, homogeneous ideal-gas reactor with a known kinetic mechanism, initial temperature, pressure, and mole composition. The bundled helper runs both constant volume and constant pressure cases and reports a precisely defined temperature-based delay. It is not a flame solver or a general reactor-network builder.

A calculation completing successfully establishes numerical execution, not mechanism validity for the fuel, pressure, temperature, diluent, or measured ignition observable. Read references/interpretation.md when choosing a mechanism, comparing experiments, or interpreting unresolved/two-stage ignition.

Workflow

  1. Identify the mechanism and its validated condition range. Preserve its source, version, citation, and any modifications. Check that its phase is ideal-gas and that every reactant, diluent, and tracked species exists. For custom YAML with imports, retain the original dependency files as well as the generated phase snapshot. Custom Python rate extensions additionally need their original code and environment for replay.
  2. Choose constant volume or constant pressure from the physical experiment. Supply K, Pa, seconds, and mole amounts explicitly. mole_amounts is normalized to mole fractions; it is not a mass-fraction mapping. The report includes the normalized initial composition.
  3. Copy assets/hydrogen-ignition.json and change its conditions. The supplied H2/O2/Ar case uses Cantera's bundled h2o2.yaml for an executable numerical example; it is not a recommendation for every hydrogen experiment.
  4. Set a time horizon long enough to observe the temperature rise and the decline of the heating-rate peak. Choose output spacing fine enough to locate that peak. Set a minimum temperature rise to distinguish ignition from negligible heating or numerical noise.
  5. Run the helper and inspect all four histories and the report. Refine again if the delay changes materially, if the maximum approaches a time boundary, or if conservation fails. Compare the temperature and tracked-species histories with the actual ignition definition.
  6. Report the condition set, mechanism hash, reactor constraint, delay definition, output spacing, numerical changes, and scientific limits together with the delay.

Execute the tested example

From the collection root:

uv run --no-project --python 3.12 --with cantera==3.2.0 --with numpy==2.5.3 \
  python skills/cantera/scripts/ignition_delay.py \
  skills/cantera/assets/hydrogen-ignition.json hydrogen-result

Tested on Python 3.12, Cantera 3.2.0, and NumPy 2.5.3. No external solver executable or credentials are needed. Local relative mechanism paths resolve against the configuration file directory before Cantera's built-in data search. Use a new output directory each run.

The 1000 K, 101325 Pa, H2:O2:Ar = 2:1:7 constant-volume example gives about 0.313 ms using the stated max(dT/dt) definition. At 3 ms its temperature is approximately 2920.67 K and agrees with a separate UV equilibrium calculation. These are package regression values, not experimental validation data.

Exact delay and refinement contract

Delay is the time of the global maximum of numpy.gradient(T, time, edge_order=2) on a uniform output grid. It is reported only if the maximum temperature rise reaches minimum_temperature_rise_k and the maximum is at least two sample indices from each boundary. Otherwise delay_s is null and a status explains why. No delay beyond the simulation horizon is extrapolated.

The helper explicitly uses Cantera 3.2's clone=True and reads evolving properties from reactor.phase. The original Solution retains the initial state; do not read it as the reactor's final state. ReactorNet.advance(t) requests an absolute time, and no advance limits are configured, so the output grid remains uniform.

It runs four independent fresh reactors:

Run Change from configured conditions
baseline Original settings
finer_output Half output spacing, same horizon and solver controls
tighter_solver Both solver tolerances divided by ten; maximum internal time step halved
longer_horizon Twice the horizon with the original output spacing

numerically_resolved requires all runs to yield delays, relative delay changes within

…

FAQ

What is a 'mechanism'?

It's a set of chemical rules and reactions that describe how a gas mixture behaves.

What does 'ignition' mean here?

It's the point when the gas mixture starts reacting rapidly, releasing energy and increasing temperature.

Can this tool predict explosions?

No, it focuses on the initial ignition time, not the propagation of an explosion or flame.

Details

Original description by the author

Runs Cantera homogeneous chemical reactors and evaluates ignition delay with mechanism provenance, conservation checks, and numerical refinement. Use for combustion kinetics, closed adiabatic ideal-gas constant-volume or constant-pressure ignition, temperature histories, or mechanism-specific ignition-delay comparisons.

repo: K-Dense-AI/scientific-agent-skills

Popularity

GitHub stars
51k
Ranking position
#1843
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills