Skip to content

Commit b5e990d

Browse files
TorkelEisaacsas
andcommitted
Update docs/src/catalyst_applications/jump_simulation_performance.md
Co-authored-by: Sam Isaacson <[email protected]>
1 parent 5b632c2 commit b5e990d

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

docs/src/catalyst_applications/jump_simulation_performance.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ Gillespie's direct method will, after a jump has been performed, recompute the p
124124
k3, X3 --> 0
125125
end
126126
```
127-
Here, the rate of the `k1, X1 --> X2` and `k2, X2 --> X3` reactions does not depend on the amount of $X3$ in the system. Hence, their rates are unaffected by the occurrence of the `k3, X3 --> 0` reaction. Performant jump simulation methods have clever ways to determine which rates require recomputing after the occurrence of each reaction, which improves their performance. Many of these depend on so-called dependency graphs (which track which reactions' rates are affected by the occurrence of which reactions). Catalyst automatically builds such dependency graphs, which means that most jump simulators can be used without any additional input.
127+
Here, the propensities of the `k1, X1 --> X2` and `k2, X2 --> X3` reactions, `k1*X1*X2` and `k2*X2` respectively, do not depend on the amount of $X3$ in the system. Hence, the value of their propensities are unchanged by the occurrence of the `k3, X3 --> 0` reaction. Performant jump simulation methods have several ways to determine which rates require recomputing after the occurrence of a reaction, which improves their computational performance. Many of these depend on dependency graphs, which track which other reactions' propensities must be recomputed after the occurrence of a given reaction. Catalyst automatically builds such dependency graphs, which means that all JumpProcesses SSAs can be used without any additional inputs.
128128

129129
A full list of jump simulation method implemented by JumpProcesses can be found [here](https://docs.sciml.ai/JumpProcesses/stable/jump_types/#Jump-Aggregators-for-Exact-Simulation). Generally, `RSSA()` (the rejection SSA method [^4][^5]) is recommended for small models, with `RSSACR()` (the rejection SSA with composition-rejection method [^6]) typically being more performant for larger models. For models that are simulated a large number of times, it can be worthwhile to try a few different jump simulation methods to determine which one is most performant in each given case.
130130

0 commit comments

Comments
 (0)