Catalax is a computational framework that bridges mechanistic biochemical modeling with modern machine learning. Built on JAX for lightning-fast performance, Catalax enables researchers to tackle the most challenging problems in biochemical modelling and systems biology, from parameter estimation in complex reaction networks to discovering unknown biochemical mechanisms directly from experimental data.Whether you’re modeling enzyme kinetics, discovering metabolic pathways, or quantifying parameter uncertainty through Bayesian inference, Catalax provides the tools and mathematical rigor needed for reproducible, publication-quality research.
Get started with Catalax in just a few lines of code. Here’s how to build and simulate a complete enzyme kinetics model:
Copy
Ask AI
import catalax as ctximport jax.numpy as jnp# Create and define the biochemical systemmodel = ctx.Model(name="Michaelis-Menten Kinetics")# Add species and their dynamicsmodel.add_species(S="Substrate", E="Enzyme", ES="Complex", P="Product")model.add_ode("S", "-k1*E*S + k2*ES")model.add_ode("E", "-k1*E*S + k2*ES + kcat*ES") model.add_ode("ES", "k1*E*S - k2*ES - kcat*ES")model.add_ode("P", "kcat*ES")# Set kinetic parametersmodel.parameters.k1.value = 0.1 # Association ratemodel.parameters.k2.value = 0.05 # Dissociation rate model.parameters.kcat.value = 0.02 # Catalytic rate# Create experimental conditions and simulatedataset = ctx.Dataset.from_model(model)dataset.add_initial(S=100, E=10, ES=0, P=0) # Initial concentrationsconfig = ctx.SimulationConfig(t0=0, t1=100, nsteps=1000)results = model.simulate(dataset=dataset, config=config)# Visualize the simulationresults.plot()
That’s it! You’ve just created a complete biochemical model, simulated its dynamics, and generated publication-ready visualizations. Now let’s explore what makes Catalax powerful for advanced research.