Skip to main content
Warning: You are using the test version of PyPI. This is a pre-production deployment of Warehouse. Changes made here affect the production instance of TestPyPI (
Help us improve Python packaging - Donate today!


Project Description

This utility creates source code to calculate the Jacobian matrix analytically for a chemical reaction mechanism.


The full documentation for pyJac can be found at


Detailed installation instructions can be found in the [full documentation]( However, pyJac can be installed as a Python module:

python install


pyJac can be run as a python module:

python -m pyjac [options]

The generated source code is placed within the `out` (by default) directory, which is created if it doesn't exist initially.


In the above, `[options]` indicates where command line options should be specified. The options available can be seen using `-h` or `--help`, or below:

-h, --help show this help message and exit
-l {c,cuda,fortran,matlab}, --lang {c,cuda,fortran,matlab}
Programming language for output source files.
-i INPUT, --input INPUT
Input mechanism filename (e.g., mech.dat).
-t THERMO, --thermo THERMO
Thermodynamic database filename (e.g., therm.dat), or
nothing if in mechanism.
-b, --build_path
The folder to generate the Jacobian and rate subroutines in
-ls SPECIES NAME, --last_species SPECIES NAME
The species to move to the end of the mechanism to force mass conservation.
Defaults to (in order) N2, Ar, He.
-ic STRING, --initial-conditions STRING
A comma separated list of initial conditions to set in the
set_same_initial_conditions method.
Expected Form: T,P,Species1=...,Species2=...,...
Temperature in K
Pressure in Atm
Species in moles
-nco, --no-cache-optimizer
Turn off the cache optimization functionality
-nosmem, --no-shared-memory
Turn off shared memory usage for CUDA
-pshare, --prefer-shared
Prefer a larger shared memory size (compared to L1 cache size) for CUDA.
(Not recommended)
-nb, --num_blocks
The target number of blocks per streaming multiprocessor for CUDA.
Default is 8
-nt, --num_threads
The number of threads per block for CUDA.
Default is 64
-mt, --multi-threaded
The number of threads to use during cache-optimization.
Default is the CPU count returned by multiprocessing
-fopt, --force-opt
Force re-running of cache optimizer.
By default cache optimizer will turn off if it detects a previous optimization
for the same mechanism
-ad, --auto-diff
Generate code for Adept autodifferentiation library (used for validation)
-sj, --skip_jac
Do not generate Jacobian subroutine


`pyJac` is released under the MIT license; see the [`LICENSE`]( for details.

If you use this package as part of a scholarly publication, please see the `` for the appropriate citation(s).


We welcome contributions to pyJac! Please see the guide to making contributions in the [``]( file.


Created by [Kyle Niemeyer]( ([]( and Nicholas Curtis ([](
Release History

Release History

This version
History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pyJac-0.9.9.tar.gz (104.7 kB) Copy SHA256 Checksum SHA256 Source May 5, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting