ERROR: MethodError: no method matching strides(::ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}})
Closest candidates are:
strides(::StaticArraysCore.SizedArray)
@ StaticArrays ~/.julia/packages/StaticArrays/oOCPP/src/abstractarray.jl:20
strides(::Base.ReshapedArray)
@ Base reshapedarray.jl:305
strides(::LazyArrays.ApplyMatrix{<:Any, typeof(rot180)})
@ LazyArrays ~/.julia/packages/LazyArrays/8MqhP/src/lazyoperations.jl:492
...
Stacktrace:
[1] stride(A::ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, k::Int64)
@ Base ./abstractarray.jl:588
[2] stride1(x::ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}})
@ LinearAlgebra ~/.julia/juliaup/julia-1.9.3+0.x64.apple.darwin14/share/julia/stdlib/v1.9/LinearAlgebra/src/LinearAlgebra.jl:213
[3] _chkstride1 (repeats 2 times)
@ ~/.julia/juliaup/julia-1.9.3+0.x64.apple.darwin14/share/julia/stdlib/v1.9/LinearAlgebra/src/LinearAlgebra.jl:219 [inlined]
[4] chkstride1
@ ~/.julia/juliaup/julia-1.9.3+0.x64.apple.darwin14/share/julia/stdlib/v1.9/LinearAlgebra/src/LinearAlgebra.jl:217 [inlined]
[5] aa_getrs!(trans::Char, A::Matrix{Float64}, ipiv::Vector{Int32}, B::ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}; info::Base.RefValue{Int32})
@ LinearSolve ~/.julia/packages/LinearSolve/Dqpre/src/appleaccelerate.jl:166
[6] solve!(cache::LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}, alg::AppleAccelerateLUFactorization; kwargs::Base.Pairs{Symbol, Float64, Tuple{Symbol}, NamedTuple{(:reltol,), Tuple{Float64}}})
@ LinearSolve ~/.julia/packages/LinearSolve/Dqpre/src/appleaccelerate.jl:253
[7] macro expansion
@ ~/.julia/packages/LinearSolve/Dqpre/src/default.jl:343 [inlined]
[8] solve!(::LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}, ::LinearSolve.DefaultLinearSolver; assump::OperatorAssumptions{Nothing}, kwargs::Base.Pairs{Symbol, Float64, Tuple{Symbol}, NamedTuple{(:reltol,), Tuple{Float64}}})
@ LinearSolve ~/.julia/packages/LinearSolve/Dqpre/src/default.jl:336
[9] solve!
@ ~/.julia/packages/LinearSolve/Dqpre/src/default.jl:336 [inlined]
[10] #solve!#6
@ ~/.julia/packages/LinearSolve/Dqpre/src/common.jl:189 [inlined]
[11] solve!
@ ~/.julia/packages/LinearSolve/Dqpre/src/common.jl:188 [inlined]
[12] #dolinsolve#3
@ ~/.julia/packages/OrdinaryDiffEq/NBaQM/src/misc_utils.jl:107 [inlined]
[13] dolinsolve
@ ~/.julia/packages/OrdinaryDiffEq/NBaQM/src/misc_utils.jl:83 [inlined]
[14] compute_step!(nlsolver::OrdinaryDiffEq.NLSolver{NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Nothing, Float64, OrdinaryDiffEq.NLNewtonCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Matrix{Float64}, Matrix{Float64}, SciMLBase.UJacobianWrapper{true, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, Float64, SciMLBase.NullParameters}, ForwardColorJacCache{ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{Vector{NTuple{8, Float64}}}, UnitRange{Int64}, Nothing}, LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}}}, integrator::StochasticDiffEq.SDEIntegrator{SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, Float64, SciMLBase.NullParameters, Float64, Float64, Float64, NoiseProcess{Float64, 2, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_DIST), typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_BRIDGE), true, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, RSWM{Float64}, Nothing, RandomNumbers.Xorshifts.Xoroshiro128Plus}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, RODESolution{Float64, 2, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Nothing, Nothing, Vector{Float64}, NoiseProcess{Float64, 2, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_DIST), typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_BRIDGE), true, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, RSWM{Float64}, Nothing, RandomNumbers.Xorshifts.Xoroshiro128Plus}, SDEProblem{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Tuple{Float64, Float64}, true, SciMLBase.NullParameters, Nothing, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, Nothing}, SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, StochasticDiffEq.LinearInterpolationData{Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Vector{Float64}}, SciMLBase.DEStats, Nothing}, StochasticDiffEq.SKenCarpCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, OrdinaryDiffEq.NLSolver{NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Nothing, Float64, OrdinaryDiffEq.NLNewtonCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Matrix{Float64}, Matrix{Float64}, SciMLBase.UJacobianWrapper{true, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, Float64, SciMLBase.NullParameters}, ForwardColorJacCache{ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{Vector{NTuple{8, Float64}}}, UnitRange{Int64}, Nothing}, LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}}}, StochasticDiffEq.SKenCarpTableau{Float64, Float64}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Nothing, StochasticDiffEq.SDEOptions{Float64, Float64, PIController{Float64}, typeof(DiffEqBase.ODE_DEFAULT_NORM), Nothing, CallbackSet{Tuple{}, Tuple{}}, typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, Nothing, Nothing, Int64, Float64, Float64, Float64, Tuple{}, Tuple{}, Tuple{}}, Nothing, Float64, Nothing, Nothing}, γW::Float64)
@ OrdinaryDiffEq ~/.julia/packages/OrdinaryDiffEq/NBaQM/src/nlsolve/newton.jl:122
[15] nlsolve!(nlsolver::OrdinaryDiffEq.NLSolver{NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Nothing, Float64, OrdinaryDiffEq.NLNewtonCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Matrix{Float64}, Matrix{Float64}, SciMLBase.UJacobianWrapper{true, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, Float64, SciMLBase.NullParameters}, ForwardColorJacCache{ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{Vector{NTuple{8, Float64}}}, UnitRange{Int64}, Nothing}, LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}}}, integrator::StochasticDiffEq.SDEIntegrator{SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, Float64, SciMLBase.NullParameters, Float64, Float64, Float64, NoiseProcess{Float64, 2, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_DIST), typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_BRIDGE), true, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, RSWM{Float64}, Nothing, RandomNumbers.Xorshifts.Xoroshiro128Plus}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, RODESolution{Float64, 2, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Nothing, Nothing, Vector{Float64}, NoiseProcess{Float64, 2, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_DIST), typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_BRIDGE), true, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, RSWM{Float64}, Nothing, RandomNumbers.Xorshifts.Xoroshiro128Plus}, SDEProblem{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Tuple{Float64, Float64}, true, SciMLBase.NullParameters, Nothing, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, Nothing}, SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, StochasticDiffEq.LinearInterpolationData{Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Vector{Float64}}, SciMLBase.DEStats, Nothing}, StochasticDiffEq.SKenCarpCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, OrdinaryDiffEq.NLSolver{NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Nothing, Float64, OrdinaryDiffEq.NLNewtonCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Matrix{Float64}, Matrix{Float64}, SciMLBase.UJacobianWrapper{true, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, Float64, SciMLBase.NullParameters}, ForwardColorJacCache{ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{Vector{NTuple{8, Float64}}}, UnitRange{Int64}, Nothing}, LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}}}, StochasticDiffEq.SKenCarpTableau{Float64, Float64}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Nothing, StochasticDiffEq.SDEOptions{Float64, Float64, PIController{Float64}, typeof(DiffEqBase.ODE_DEFAULT_NORM), Nothing, CallbackSet{Tuple{}, Tuple{}}, typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, Nothing, Nothing, Int64, Float64, Float64, Float64, Tuple{}, Tuple{}, Tuple{}}, Nothing, Float64, Nothing, Nothing}, cache::StochasticDiffEq.SKenCarpCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, OrdinaryDiffEq.NLSolver{NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Nothing, Float64, OrdinaryDiffEq.NLNewtonCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Matrix{Float64}, Matrix{Float64}, SciMLBase.UJacobianWrapper{true, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, Float64, SciMLBase.NullParameters}, ForwardColorJacCache{ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{Vector{NTuple{8, Float64}}}, UnitRange{Int64}, Nothing}, LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}}}, StochasticDiffEq.SKenCarpTableau{Float64, Float64}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, repeat_step::Bool)
@ OrdinaryDiffEq ~/.julia/packages/OrdinaryDiffEq/NBaQM/src/nlsolve/nlsolve.jl:52
[16] perform_step!(integrator::StochasticDiffEq.SDEIntegrator{SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, Float64, SciMLBase.NullParameters, Float64, Float64, Float64, NoiseProcess{Float64, 2, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_DIST), typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_BRIDGE), true, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, RSWM{Float64}, Nothing, RandomNumbers.Xorshifts.Xoroshiro128Plus}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, RODESolution{Float64, 2, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Nothing, Nothing, Vector{Float64}, NoiseProcess{Float64, 2, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_DIST), typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_BRIDGE), true, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, RSWM{Float64}, Nothing, RandomNumbers.Xorshifts.Xoroshiro128Plus}, SDEProblem{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Tuple{Float64, Float64}, true, SciMLBase.NullParameters, Nothing, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, Nothing}, SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, StochasticDiffEq.LinearInterpolationData{Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Vector{Float64}}, SciMLBase.DEStats, Nothing}, StochasticDiffEq.SKenCarpCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, OrdinaryDiffEq.NLSolver{NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Nothing, Float64, OrdinaryDiffEq.NLNewtonCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Matrix{Float64}, Matrix{Float64}, SciMLBase.UJacobianWrapper{true, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, Float64, SciMLBase.NullParameters}, ForwardColorJacCache{ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{Vector{NTuple{8, Float64}}}, UnitRange{Int64}, Nothing}, LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}}}, StochasticDiffEq.SKenCarpTableau{Float64, Float64}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Nothing, StochasticDiffEq.SDEOptions{Float64, Float64, PIController{Float64}, typeof(DiffEqBase.ODE_DEFAULT_NORM), Nothing, CallbackSet{Tuple{}, Tuple{}}, typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, Nothing, Nothing, Int64, Float64, Float64, Float64, Tuple{}, Tuple{}, Tuple{}}, Nothing, Float64, Nothing, Nothing}, cache::StochasticDiffEq.SKenCarpCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, OrdinaryDiffEq.NLSolver{NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Nothing, Float64, OrdinaryDiffEq.NLNewtonCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Matrix{Float64}, Matrix{Float64}, SciMLBase.UJacobianWrapper{true, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, Float64, SciMLBase.NullParameters}, ForwardColorJacCache{ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{Vector{NTuple{8, Float64}}}, UnitRange{Int64}, Nothing}, LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}}}, StochasticDiffEq.SKenCarpTableau{Float64, Float64}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}})
@ StochasticDiffEq ~/.julia/packages/StochasticDiffEq/tdY4b/src/perform_step/kencarp.jl:209
[17] solve!(integrator::StochasticDiffEq.SDEIntegrator{SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, Float64, SciMLBase.NullParameters, Float64, Float64, Float64, NoiseProcess{Float64, 2, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_DIST), typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_BRIDGE), true, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, RSWM{Float64}, Nothing, RandomNumbers.Xorshifts.Xoroshiro128Plus}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, RODESolution{Float64, 2, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Nothing, Nothing, Vector{Float64}, NoiseProcess{Float64, 2, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_DIST), typeof(DiffEqNoiseProcess.INPLACE_WHITE_NOISE_BRIDGE), true, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, ResettableStacks.ResettableStack{Tuple{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, true}, RSWM{Float64}, Nothing, RandomNumbers.Xorshifts.Xoroshiro128Plus}, SDEProblem{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Tuple{Float64, Float64}, true, SciMLBase.NullParameters, Nothing, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, Nothing}, SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, StochasticDiffEq.LinearInterpolationData{Vector{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Vector{Float64}}, SciMLBase.DEStats, Nothing}, StochasticDiffEq.SKenCarpCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, OrdinaryDiffEq.NLSolver{NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, true, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Nothing, Float64, OrdinaryDiffEq.NLNewtonCache{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Float64, Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Matrix{Float64}, Matrix{Float64}, SciMLBase.UJacobianWrapper{true, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, Float64, SciMLBase.NullParameters}, ForwardColorJacCache{ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}, Tuple{Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}, Matrix{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.OrdinaryDiffEqTag, Float64}, Float64, 8}}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Vector{Vector{NTuple{8, Float64}}}, UnitRange{Int64}, Nothing}, LinearSolve.LinearCache{Matrix{Float64}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, SciMLBase.NullParameters, LinearSolve.DefaultLinearSolver, LinearSolve.DefaultLinearSolverInit{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, LinearAlgebra.QRCompactWY{Float64, Matrix{Float64}, Matrix{Float64}}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Vector{Int64}}, Nothing, Nothing, Nothing, LinearAlgebra.SVD{Float64, Float64, Matrix{Float64}, Vector{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int32}}, Base.RefValue{Int32}}, Tuple{LinearAlgebra.LU{Float64, Matrix{Float64}, Vector{Int64}}, Base.RefValue{Int64}}, LinearAlgebra.QRPivoted{Float64, Matrix{Float64}, Vector{Float64}, Vector{Int64}}, Nothing, Nothing}, LinearSolve.InvPreconditioner{LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}}, LinearAlgebra.Diagonal{Float64, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, Float64, Bool}}}, StochasticDiffEq.SKenCarpTableau{Float64, Float64}, Nothing, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}}, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Nothing, StochasticDiffEq.SDEOptions{Float64, Float64, PIController{Float64}, typeof(DiffEqBase.ODE_DEFAULT_NORM), Nothing, CallbackSet{Tuple{}, Tuple{}}, typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, Nothing, Nothing, Int64, Float64, Float64, Float64, Tuple{}, Tuple{}, Tuple{}}, Nothing, Float64, Nothing, Nothing})
@ StochasticDiffEq ~/.julia/packages/StochasticDiffEq/tdY4b/src/solve.jl:618
[18] __solve(prob::SDEProblem{ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, Tuple{Float64, Float64}, true, SciMLBase.NullParameters, Nothing, SDEFunction{true, SciMLBase.FullSpecialize, typeof(f!), typeof(g!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}}, typeof(g!), Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, Nothing}, alg::SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive}, timeseries::Vector{Any}, ts::Vector{Any}, ks::Nothing, recompile::Type{Val{true}}; kwargs::Base.Pairs{Symbol, Float64, Tuple{Symbol}, NamedTuple{(:dt,), Tuple{Float64}}})
@ StochasticDiffEq ~/.julia/packages/StochasticDiffEq/tdY4b/src/solve.jl:7
[19] __solve (repeats 5 times)
@ ~/.julia/packages/StochasticDiffEq/tdY4b/src/solve.jl:1 [inlined]
[20] #solve_call#34
@ ~/.julia/packages/DiffEqBase/eTCPy/src/solve.jl:608 [inlined]
[21] solve_call
@ ~/.julia/packages/DiffEqBase/eTCPy/src/solve.jl:566 [inlined]
[22] #solve_up#42
@ ~/.julia/packages/DiffEqBase/eTCPy/src/solve.jl:1057 [inlined]
[23] solve_up
@ ~/.julia/packages/DiffEqBase/eTCPy/src/solve.jl:1043 [inlined]
[24] #solve#40
@ ~/.julia/packages/DiffEqBase/eTCPy/src/solve.jl:980 [inlined]
[25] example(u0::ArrayPartition{Float64, Tuple{Matrix{Float64}, Matrix{Float64}}}, solver::SKenCarp{0, true, Nothing, typeof(OrdinaryDiffEq.DEFAULT_PRECS), Val{:central}, true, nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Rational{Int64}}, Float64, :Predictive})
@ Main ~/MyProject/bug-mre.jl:43
[26] top-level scope
@ REPL[33]:1
Bug Description 🐞
Using
ArrayPartitionfails when using implicit solvers such asSKenCarporImplicitEM. It seems to be fine for the explicit solverSOSRA, although I haven't tested it on any others.The one caveat, is that it appears to depend on the array dimensions (as demonstrated below). For very small arrays,
SKenCarphas no problem with theArrayPartition, but for anything larger than this, it throws aMethodError. The error is raised because there is nostridesmethod defined forArrayPartition.I "fixed" this by overloading
stridesmethod, however anotherMethodErroris raised because there is nopointermethod defined forArrayPartition.I suppose this makes sense, because as far as I am aware, an
ArrayPartitiondoes not correspond to single location in memory. As in, the partition is made up of multiple arrays, each of which have their own location in memory?Expected Behavior
The native
SKenCarpsolver (and native solvers in general) should solve the SDE just like it would for the explicitSOSRAsolver.Minimal Reproducible Example
Obviously a very basic SDE, but demonstrates the error:
I also tried to overload
strides(essentially the same definition as inBase):Error & Stacktrace⚠️
Output of
julia> example(slightly_larger_u0, SKenCarp())Then, after "fixing" the
stridesbug:Output of
julia> example(slightly_larger_u0, SKenCarp())Environment
Output of
pkg> statusOutput of
pkg> status -mOutput of
julia> versioninfo()Additional context
The problem I am working on is a system of stiff SDEs (eg
size(2,10)[ndim, nparticles]) coupled to a diffusion PDE (egsize(51,51)finite diff matrix).I really did not want to have to unravel this into a flat vector, especially because of all the unnecessary allocations with reshaping the
Arrays on every function call.Hence why, I have tried to use
ArrayPartition(rand(2,10), zeros(51,51)), sinceVector{Array{Float64, 2}}is not supported, and neither isVectorOfArray.