Skip to content

Commit f9b0fd3

Browse files
refactor: remove jacobian_wrt_vars
1 parent da84f0c commit f9b0fd3

File tree

2 files changed

+0
-50
lines changed

2 files changed

+0
-50
lines changed

src/systems/parameter_buffer.jl

Lines changed: 0 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -731,35 +731,6 @@ function Base.:(==)(a::MTKParameters, b::MTKParameters)
731731
end)
732732
end
733733

734-
# to support linearize/linearization_function
735-
function jacobian_wrt_vars(pf::F, p::MTKParameters, input_idxs, chunk::C) where {F, C}
736-
tunable, _, _ = SciMLStructures.canonicalize(SciMLStructures.Tunable(), p)
737-
T = eltype(tunable)
738-
tag = ForwardDiff.Tag(pf, T)
739-
dualtype = ForwardDiff.Dual{typeof(tag), T, ForwardDiff.chunksize(chunk)}
740-
p_big = SciMLStructures.replace(SciMLStructures.Tunable(), p, dualtype.(tunable))
741-
p_closure = let pf = pf,
742-
input_idxs = input_idxs,
743-
p_big = p_big
744-
745-
function (p_small_inner)
746-
for (i, val) in zip(input_idxs, p_small_inner)
747-
set_parameter!(p_big, val, i)
748-
end
749-
return if pf isa SciMLBase.ParamJacobianWrapper
750-
buffer = Array{dualtype}(undef, size(pf.u))
751-
pf(buffer, p_big)
752-
buffer
753-
else
754-
pf(p_big)
755-
end
756-
end
757-
end
758-
p_small = parameter_values.((p,), input_idxs)
759-
cfg = ForwardDiff.JacobianConfig(p_closure, p_small, chunk, tag)
760-
ForwardDiff.jacobian(p_closure, p_small, cfg, Val(false))
761-
end
762-
763734
const MISSING_PARAMETERS_MESSAGE = """
764735
Some parameters are missing from the variable map.
765736
Please provide a value or default for the following variables:

src/utils.jl

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -963,27 +963,6 @@ function Base.iterate(it::StatefulBFS, queue = (eltype(it)[(0, it.t)]))
963963
return (lv, t), queue
964964
end
965965

966-
function jacobian_wrt_vars(pf::F, p, input_idxs, chunk::C) where {F, C}
967-
E = eltype(p)
968-
tag = ForwardDiff.Tag(pf, E)
969-
T = typeof(tag)
970-
dualtype = ForwardDiff.Dual{T, E, ForwardDiff.chunksize(chunk)}
971-
p_big = similar(p, dualtype)
972-
copyto!(p_big, p)
973-
p_closure = let pf = pf,
974-
input_idxs = input_idxs,
975-
p_big = p_big
976-
977-
function (p_small_inner)
978-
p_big[input_idxs] .= p_small_inner
979-
pf(p_big)
980-
end
981-
end
982-
p_small = p[input_idxs]
983-
cfg = ForwardDiff.JacobianConfig(p_closure, p_small, chunk, tag)
984-
ForwardDiff.jacobian(p_closure, p_small, cfg, Val(false))
985-
end
986-
987966
function fold_constants(ex)
988967
if iscall(ex)
989968
maketerm(typeof(ex), operation(ex), map(fold_constants, arguments(ex)),

0 commit comments

Comments
 (0)