Skip to content

remake not working for Symbol + array variable (u0 only, p is fine) #3281

@TorkelE

Description

@TorkelE
using Catalyst, OrdinaryDiffEq

rn = @reaction_network begin
    @parameters k[1:2]
    @species X(t)[1:2]
    (k[1], k[2]), X[1] <--> X[2]
end

u0_symvar = [rn.X => [1.0, 2.0]]
ps_symvar = [rn.k => [2.0, 3.0]]
u0_symb = [:X => [1.0, 2.0]]
ps_symb = [:k => [2.0, 3.0]]

ODEProblem(rn, u0_symvar, (0.0, 1.0), ps_symvar) # Works. 
ODEProblem(rn, u0_symvar, (0.0, 1.0), ps_symb) # Works.
ODEProblem(rn, u0_symb, (0.0, 1.0), ps_symvar) # Works.
ODEProblem(rn, u0_symb, (0.0, 1.0), ps_symb) # Works.

oprob = ODEProblem(rn, u0_symvar, (0.0, 1.0), ps_symvar)
remake(oprob; u0 = u0_symb) # ERROR: KeyError: key 1:2 not found
remake(oprob; u0 = u0_symvar) # Works.
remake(oprob; p = ps_symvar) # Works.
remake(oprob; p = ps_symb) # Works.

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions