Path: news.mathworks.com!not-for-mail From: <HIDDEN> Newsgroups: comp.soft-sys.matlab Subject: Re: System of nonlinear equations: no convergence to a root using fsolve Date: Fri, 8 Jul 2011 17:33:49 +0000 (UTC) Organization: Xoran Technologies Lines: 31 Message-ID: <iv7f1t$h8a$1@newscl01ah.mathworks.com> References: <iv7cr9$aqv$1@newscl01ah.mathworks.com> Reply-To: <HIDDEN> NNTP-Posting-Host: www-04-blr.mathworks.com Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Trace: newscl01ah.mathworks.com 1310146429 17674 172.30.248.35 (8 Jul 2011 17:33:49 GMT) X-Complaints-To: news@mathworks.com NNTP-Posting-Date: Fri, 8 Jul 2011 17:33:49 +0000 (UTC) X-Newsreader: MATLAB Central Newsreader 1440443 Xref: news.mathworks.com comp.soft-sys.matlab:735575 "Romain " <romain_leg@yahoo.fr> wrote in message <iv7cr9$aqv$1@newscl01ah.mathworks.com>... >> > F(1)=x(1)^2+x(2)^2+x(3)^2-EXO_SIGMA1SQ; > F(2)=x(4)^2+x(5)^2+x(6)^2-EXO_SIGMA2SQ; > F(3)=x(7)^2+x(8)^2-EXO_SIGMA3SQ; > F(4)=x(1)*x(4)+x(2)*x(5)+x(3)*x(6)-EXO_SIGMA12; > F(5)=x(2)*x(7)+x(3)*x(8)-EXO_SIGMA13; > F(6)=x(5)*x(7)+x(6)*x(8)-EXO_SIGMA23; > F(7)=x(2)*EXO_K1+x(5)*EXO_K2+x(7); > F(8)=x(3)*EXO_K1+x(6)*EXO_K2+x(8); > The EXO variables are constants whose values are known by the program when it runs the algorithm, and the actual variables to value are the x(.). > > > I am a bit surprised since the system is rather small, and since I previously obtained convergence very easily with a very similar system. According to my thesis supervisor, the system should admit a solution. =================== Well, it's pretty clear that the system can fail to have a solution. Your very first equation, for example, requires that F(1)+EXO_SIGMA1SQ >=0 and similarly with your 2nd and third equation. If that's not satisifed, then right away you know a solution does not exist. If that's not the problem, your first 3 equations provide a clue to where a solution lies, if it does exist. The first equation implies, for example, that abs(x(i)) <= sqrt(F(1)+EXO_SIGMA1SQ) for i=1,2,3. The 2nd and 3rd equations provide similar bounds/ranges for the other x(i). To search for the global minimum, one thing you could try is to coarsely discretize the above ranges for x(i), into e.g. 5 bins. Then you could do an exhaustive search over all combinations of those values to see which most nearly solves the equation. That would at least give you some idea where to initialize.