Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion docs/src/mainapi.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,10 @@ DiffEqBase.ODEProblem(::FSPSystem, u0, tmax, p)

## Steady-State Problems

Computing steady-state distributions can be done using the SteadyStateDiffEq.jl package. At the moment FiniteStateProjection.jl adjusts the rate matrix so that reactions leaving the truncated state space have propensity 0.
Computing steady-state distributions can be done using the SteadyStateDiffEq.jl package. At the moment FiniteStateProjection.jl adjusts the rate matrix so that reactions leaving the truncated state space have propensity 0. Pass a [`SteadyState`](@ref) instance to the conversion methods to request this steady-state formulation.

```@docs
SteadyState
Base.convert(::Type{ODEFunction}, ::FSPSystem, ::SteadyState)
DiffEqBase.SteadyStateProblem(::FSPSystem, u0, p)
```
15 changes: 15 additions & 0 deletions src/build_rhs_ss.jl
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
"""
struct SteadyState end

Marker type used to select the steady-state formulation of the Chemical
Master Equation. Passing a `SteadyState()` instance to the conversion and
matrix-building methods requests the right-hand side in which transitions
out of the truncated state space are dropped (their propensity is set to
zero), as required for solving for the stationary distribution rather than
the time-dependent one.

It is used as a dispatch tag by
[`Base.convert(::Type{ODEFunction}, ::FSPSystem, ::SteadyState)`](@ref),
[`SparseArrays.SparseMatrixCSC(::FSPSystem, ::NTuple, ps, ::SteadyState)`](@ref)
and [`DiffEqBase.SteadyStateProblem(::FSPSystem, u0, p)`](@ref).
"""
struct SteadyState end

"""
Expand Down
Loading