You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
which works by wrapping and unwrapping 0-dimensional arrays. (Note: this requires JuliaNLSolvers/NLSolversBase.jl#141.) That way, for the case of scalar functions you wouldn't have to go to the trouble of wrapping in an array yourself.
Of course, in the longer run you could have optimized methods for the scalar (0-dimensional) case.
The text was updated successfully, but these errors were encountered:
I think we just need to point more people to NonlinearSolve.jl for that. NLsolve.jl make a few too many assumptions and internally will put things in mutable structures anyways, so it's not going to be full performance. The true algorithm in that case should be just a fully non-allocating iteration, which is why NonlinearSolve.jl's native algorithms will do when presented with scalars and static arrays. NLsolve.jl is great for its trust region methods on medium sized equations, but on the large and small end it would need some overhauls.
I think we just need to point more people to NonlinearSolve.jl for that. NLsolve.jl make a few too many assumptions and internally will put things in mutable structures anyways, so it's not going to be full performance. The true algorithm in that case should be just a fully non-allocating iteration, which is why NonlinearSolve.jl's native algorithms will do when presented with scalars and static arrays. NLsolve.jl is great for its trust region methods on medium sized equations, but on the large and small end it would need some overhauls.
These improvements are already present in NLSolvers.jl as well. Though, I'm happy to accomodate any improvements until I get time to properly deprecate NLsolve.jl .
Would be nice to have a method for scalar functions, simply by dispatching on scalar initial values. In its simplest form, this could be:
which works by wrapping and unwrapping 0-dimensional arrays. (Note: this requires JuliaNLSolvers/NLSolversBase.jl#141.) That way, for the case of scalar functions you wouldn't have to go to the trouble of wrapping in an array yourself.
Of course, in the longer run you could have optimized methods for the scalar (0-dimensional) case.
The text was updated successfully, but these errors were encountered: