Open lieskjur opened 3 years ago
Similarly, the solver might not report convergence on problems with input dimension larger than output dimension.
F(x) = sin(x[1])*sin(x[2])/sqrt(1+x[1]^2+x[2]^2)
res = nlsolve(F, rand(2), autodiff=:forward, store_trace=true, extended_trace=true)
Results of Nonlinear Solver Algorithm
* Algorithm: Trust-region with dogleg and autoscaling
* Starting Point: [0.08081342223001275, 0.42525217505251844]
* Zero: [4.175125734506499e-9, 0.4132526768794085]
* Inf-norm of residuals: 0.425252
* Iterations: 1000
* Convergence: false
* |x - x'| < 0.0e+00: false
* |f(x)| < 1.0e-08: false
* Function Calls (f): 4
* Jacobian Calls (df/dx): 3
res.trace.states[end]
1000 4.252522e-01 0.000000e+00
* f(x): [0.0, 0.42525217505251844]
* g(x): [0.3711470323262712 2.9868402029688e-9; 0.0 0.0]
* x: [4.175125734506499e-9, 0.4132526768794085]
* delta: 0.000877443722023774
* rho: NaN
Hi, facing the same issue here. Is the package really restricted to square problems, or is there a workaround known?
Hi, does NLsolve not support non-square problems? I ran into an error when trying to solve a problem with more equations than than unknown variables which I replicated on a small testing script.
with console output
I am sure that the newton method is applicable to such problems so I do not see a reason why NLsolve would not handle it.