Closed
Description
If I want to guarantee the order of parameters during the optimization I need to use varmap_to_vars, e.g:
loss function:
function loss(p::Vector{Float64})
p1 = [param_vars[1] => p[1], param_vars[2] => p[2], param_vars[3] => p[3]]
p2 = ModelingToolkit.varmap_to_vars(p1, param_vars)
pred_sol = solve(prob, Tsit5(), p=p2, saveat=t_save)
pred = Array(pred_sol')
mse = mean((pred - obs_vals) .^ 2)
return mse
end
where param_vars
are the parameters of the MTK model.
The error I get:
ERROR: Compiling Tuple{Type{Dict}, Vector{Pair{Sym{Real, Base.ImmutableDict{DataType, Any}}, Float64}}}: try/catch is not supported. Refer to the Zygote documentation for fixes.
The full code description is here
Metadata
Metadata
Assignees
Labels
No labels