Generalized Kinetic Modeler: A Python package for modeling arbitrary kinetic schemes.
Project description
GeKiM (Generalized Kinetic Modeler)
Description
GeKiM (Generalized Kinetic Modeler) is a Python package designed for creating, interpreting, and modeling arbitrary kinetic schemes. Schemes are defined by the user in a dictionary of species and transitions, which is used to initialize an instance of the System class. Choose (or make) and initialize a simulator for the instance and run it. Field-specific practices are found in gekim/fields.
Installation
With pip:
pip install gekim
Or directly from the source code:
git clone https://github.com/kghaby/GeKiM.git
cd GeKiM
pip install --editable .
Usage
Here is a basic example of how to use GeKiM to create and simulate a kinetic system:
import gekim as gk
from gekim.fields.bio.enzyme.inhib import irrev as ii
# Define your kinetic scheme in a configuration dictionary
concI0,concE0 = 100,1
scheme = {
'species': {
"I": {"y0": concI0, "label": "I"},
"E": {"y0": concE0, "label": "E"},
"EI": {"y0": 0, "label": "EI"},
"E-I": {"y0": 0, "label": "E-I"},
},
'transitions': {
"kon": {"k": 0.01, "source": ["E","2I"], "target": ["EI"]},
"koff": {"k": 0.1, "source": ["EI"], "target": ["E","2I"]},
"kinact": {"k": 0.01, "source": ["EI"], "target": ["E-I"]}, # irreversible step
}
}
# Initialize a system with your schematic dictionary
system = gk.System(scheme, quiet=False)
# Choose a simulator and go
# In this example we're doing a deterministic
# simulation of the concentrations of each species over time.
sim = system.set_simulator(gk.simulators.ODESolver)
sim.simulate() # Note the lack of time-scale input. It's predicted!
# Fit the data to experimental models to extract mock-experimental measurements
t = system.simout["t"]
final_state = system.species["E-I"].simout["y"]
all_bound = system.sum_species_simout(blacklist=["E","I"])
fit_output = ii.kobs_uplim_fit_to_occ_final_wrt_t(
t, final_state,
nondefault_params={"Etot":{"value":concE0, "vary":False}})
For more detailed examples, please refer to the examples directory.
Documentation
Documentation pages are pending, but the functions have docstrings.
Example Jupyter Notebooks where GeKiM has been applied to model and analyze irreversible enzyme inhibition:
Contributing
If you have suggestions or want to contribute code, please feel free to open an issue or a pull request.
License
GeKiM is licensed under MIT.
Contact
Citation
If you use this software, please cite:
Ghaby, K.; Roux, B. Kinetic Modeling of Covalent Inhibition: Effects of Rapidly Fluctuating Intermediate States. J. Chem. Inf. Model. 2025. https://doi.org/10.1021/acs.jcim.5c00952
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gekim-0.7.8.tar.gz.
File metadata
- Download URL: gekim-0.7.8.tar.gz
- Upload date:
- Size: 47.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b362eae6edd0d831ea69cb226b05e9b8ab5c039f0b654118f5d14fcb00c72259
|
|
| MD5 |
dc58e0349e0fd92cf2bfc8d7b677e402
|
|
| BLAKE2b-256 |
6201f08922f4f5f108a5d93d77e1503494c142d58d0f6fcd2e32521d17375f4a
|
File details
Details for the file gekim-0.7.8-py3-none-any.whl.
File metadata
- Download URL: gekim-0.7.8-py3-none-any.whl
- Upload date:
- Size: 59.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
55394fa32f7132fd7b8125640f8cf99c6326d34d749e82c5d37b7a27a337542b
|
|
| MD5 |
143bb7d1dc1ceb4274f80d341d027f82
|
|
| BLAKE2b-256 |
6cba4ebc010f844d893bcefad3f25cc92aa2476f153b2cff214e3e0ac2302b76
|