Skip to content

Instantly share code, notes, and snippets.

@majahn
Created April 16, 2021 17:18
Show Gist options
  • Save majahn/c42e33e629e63444c68aea744b48c0c9 to your computer and use it in GitHub Desktop.
Save majahn/c42e33e629e63444c68aea744b48c0c9 to your computer and use it in GitHub Desktop.

Revisions

  1. majahn created this gist Apr 16, 2021.
    45 changes: 45 additions & 0 deletions doc_catalyst_julia.jl
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,45 @@
    repressilator = @reaction_network begin
    hillr(P₃,α,K,n), ∅ --> m₁
    hillr(P₁,α,K,n), ∅ --> m₂
    hillr(P₂,α,K,n), ∅ --> m₃
    (δ,γ), m₁
    (δ,γ), m₂
    (δ,γ), m₃
    β, m₁ --> m₁ + P₁
    β, m₂ --> m₂ + P₂
    β, m₃ --> m₃ + P₃
    μ, P₁ -->
    μ, P₂ -->
    μ, P₃ -->
    end α K n δ γ β μ;

    latexify(repressilator)

    g = Graph(repressilator)

    odesys = convert(ODESystem, repressilator)

    latexify(odesys)

    speciesmap(repressilator)

    paramsmap(repressilator)

    species(repressilator)

    params(repressilator)

    # parameters [α,K,n,δ,γ,β,μ]
    p = (.5, 40, 2, log(2)/120, 5e-3, 20*log(2)/120, log(2)/60)

    # initial condition [m₁,m₂,m₃,P₁,P₂,P₃]
    u₀ = [0.,0.,0.,20.,0.,0.]

    # time interval to solve on
    tspan = (0., 10000.)

    # create the ODEProblem we want to solve
    oprob = ODEProblem(repressilator, u₀, tspan, p)

    sol = solve(oprob, Tsit5(), saveat=10.)
    plot(sol)