Commit c50f228
Remove Catalyst dependency from JumpProblemLibrary
## Summary
Convert JumpProblemLibrary to remove Catalyst dependency by replacing all
@reaction_network definitions with direct jump rate functions and state
change vectors while maintaining mathematical equivalence.
## Changes Made
### JumpProblemLibrary
- Removed Catalyst dependency from Project.toml and imports
- Updated JumpProblemNetwork structure to store direct jump functions and state changes
- Converted all @reaction_network definitions to direct implementations:
#### Converted Jump Problems:
1. **DNA repressor model**: 6 reactions with negative feedback regulation
2. **Birth-death process**: Simple production/degradation kinetics
3. **Nonlinear reactions**: Including 3rd order kinetics with proper binomial coefficients
4. **Oscillatory system**: 12 reactions with hill function regulation
5. **Multistate model**: Complex 18-reaction network with 9 species
6. **Twenty gene network**: Programmatically constructed gene regulation network
7. **DNA dimer repressor**: Gene repression via protein dimerization
8. **Diffusion network**: Parameterized 1D lattice diffusion
## Mathematical Equivalence
All conversions preserve the mathematical meaning of the original Catalyst networks:
- Mass action kinetics: `A + B → C` becomes `k * A * B`
- Higher order reactions: `2A → B` becomes `k * A * (A-1) / 2`
- Hill functions: Implemented with same parameters for regulatory dynamics
- State changes: Explicit nu matrices showing species changes per reaction
## Technical Implementation
- Jump rate functions compute propensities based on current state
- State change vectors (nu matrices) define how each reaction affects species counts
- Proper handling of combinatorial factors for higher order reactions
- Hill function helper for complex regulatory dynamics
## Testing
- All Jump problems verified - reaction rates compute correctly
- Hill function implementations confirmed mathematically equivalent
- Comprehensive test suite covering all converted problems
- Jump rate calculations validated for correctness
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <[email protected]>1 parent fb1b24e commit c50f228
File tree
5 files changed
+679
-161
lines changed- lib/JumpProblemLibrary
- src
5 files changed
+679
-161
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| 11 | + | |
11 | 12 | | |
12 | 13 | | |
13 | 14 | | |
| 15 | + | |
14 | 16 | | |
15 | 17 | | |
16 | 18 | | |
17 | 19 | | |
18 | 20 | | |
19 | 21 | | |
| 22 | + | |
20 | 23 | | |
21 | 24 | | |
22 | 25 | | |
| 26 | + | |
23 | 27 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
7 | 6 | | |
8 | 7 | | |
9 | 8 | | |
10 | 9 | | |
11 | 10 | | |
12 | | - | |
13 | 11 | | |
14 | 12 | | |
15 | 13 | | |
| |||
0 commit comments