<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/265191</link>
    <title>MATLAB Central Newsreader - Pls Help me to solve</title>
    <description>Feed for thread: Pls Help me to solve</description>
    <language>en-us</language>
    <copyright>&amp;copy;1994-2012 by MathWorks, Inc.</copyright>
    <webmaster>webmaster@mathworks.com</webmaster>
    <generator>MATLAB Central Newsreader</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>60</ttl>
    <image>
      <title>MathWorks</title>
      <url>http://www.mathworks.com/images/membrane_icon.gif</url>
    </image>
    <item>
      <pubDate>Fri, 06 Nov 2009 17:17:04 -0500</pubDate>
      <title>Pls Help me to solve</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/265191#692727</link>
      <author>Chirag </author>
      <description>Dear Readers&lt;br&gt;
I m facing problem in solving set of nonliner equations. Set contains 13 nonlinear equations and 13 variables. I've spent lots of time but unfortunately couldn't solve it....&lt;br&gt;
I've tried so far solve and fsolve commands.......&lt;br&gt;
When I am using solve my computer gets hanged. And fsolve is returning complex number which is practically not possible......&lt;br&gt;
&lt;br&gt;
I've made two files&lt;br&gt;
&lt;br&gt;
1st File:function file&lt;br&gt;
&lt;br&gt;
function F=myfun(x)&lt;br&gt;
F=[-22.47+log(x(1)/(x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10)))+(3*x(11))+(3*x(12))+(8*x(13));-24.89+log(x(2)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(12)+(2*x(13));-49.539+log(x(3)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(11)+(2*x(12));-0.0574+log(x(4)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+(2*x(13));-24.597+log(x(5)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(11)+x(12);-0.7027+log(x(6)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(11)+(4*x(13));-32.59+log(x(7)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+(2*x(11))+(2*x(12))+(4*x(13));-10.927+log(x(8)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(11)+x(12)+(4*x(13));-4.635+log(x(9)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+(2*x(11))+(x(12))+(6*x(13));-7.5188+log(x(10)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x &lt;br&gt;
(10))))+(2*x(11))+(x(12))+(4*x(13));3*x(1)+x(3)+x(5)+x(6)+2*x(7)+x(8)+2*x(9)+2*x(10)-0.1002;3*x(1)+x(2)+2*x(3)+x(5)+2*x(7)+x(8)+x(9)+x(10)-1.6332;8*x(1)+2*x(2)+2*x(4)+4*x(6)+4*x(7)+4*x(8)+6*x(9)+4*x(10)-3.3332] &lt;br&gt;
&lt;br&gt;
&lt;br&gt;
2nd file: calls the function&lt;br&gt;
&lt;br&gt;
clc&lt;br&gt;
clear all&lt;br&gt;
x0=[2;13;13;13;13;13;13;13;13;13;1;1;1]  %initial guess&lt;br&gt;
options=optimset('Display','iter');   % Option to display output&lt;br&gt;
[x,fval] = fsolve(@myfun,x0,options)  % Call optimizer&lt;br&gt;
&lt;br&gt;
It would be great help if u can give me some guidance to solve it.....&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Thank You</description>
    </item>
    <item>
      <pubDate>Sat, 07 Nov 2009 11:51:04 -0500</pubDate>
      <title>Re: Pls Help me to solve</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/265191#692873</link>
      <author>Torsten Hennig</author>
      <description>&amp;gt; Dear Readers&lt;br&gt;
&amp;gt; I m facing problem in solving set of nonliner&lt;br&gt;
&amp;gt; equations. Set contains 13 nonlinear equations and 13&lt;br&gt;
&amp;gt; variables. I've spent lots of time but unfortunately&lt;br&gt;
&amp;gt; couldn't solve it....&lt;br&gt;
&amp;gt; I've tried so far solve and fsolve commands.......&lt;br&gt;
&amp;gt; When I am using solve my computer gets hanged. And&lt;br&gt;
&amp;gt; fsolve is returning complex number which is&lt;br&gt;
&amp;gt; practically not possible......&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; I've made two files&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; 1st File:function file&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; function F=myfun(x)&lt;br&gt;
&amp;gt; F=[-22.47+log(x(1)/(x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)&lt;br&gt;
&amp;gt; +x(8)+x(9)+x(10)))+(3*x(11))+(3*x(12))+(8*x(13));-24.8&lt;br&gt;
&amp;gt; 9+log(x(2)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x&lt;br&gt;
&amp;gt; (9)+x(10))))+x(12)+(2*x(13));-49.539+log(x(3)/((x(1)+x&lt;br&gt;
&amp;gt; (2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(11)+&lt;br&gt;
&amp;gt; (2*x(12));-0.0574+log(x(4)/((x(1)+x(2)+x(3)+x(4)+x(5)+&lt;br&gt;
&amp;gt; x(6)+x(7)+x(8)+x(9)+x(10))))+(2*x(13));-24.597+log(x(5&lt;br&gt;
&amp;gt; )/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10)&lt;br&gt;
&amp;gt; )))+x(11)+x(12);-0.7027+log(x(6)/((x(1)+x(2)+x(3)+x(4)&lt;br&gt;
&amp;gt; +x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(11)+(4*x(13));-32&lt;br&gt;
&amp;gt; .59+log(x(7)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)&lt;br&gt;
&amp;gt; +x(9)+x(10))))+(2*x(11))+(2*x(12))+(4*x(13));-10.927+l&lt;br&gt;
&amp;gt; og(x(8)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)&lt;br&gt;
&amp;gt; +x(10))))+x(11)+x(12)+(4*x(13));-4.635+log(x(9)/((x(1)&lt;br&gt;
&amp;gt; +x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+(2*x&lt;br&gt;
&amp;gt; (11))+(x(12))+(6*x(13));-7.5188+log(x(10)/((x(1)+x(2)+&lt;br&gt;
&amp;gt; x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x &lt;br&gt;
&amp;gt; (10))))+(2*x(11))+(x(12))+(4*x(13));3*x(1)+x(3)+x(5)+x&lt;br&gt;
&amp;gt; (6)+2*x(7)+x(8)+2*x(9)+2*x(10)-0.1002;3*x(1)+x(2)+2*x(&lt;br&gt;
&amp;gt; 3)+x(5)+2*x(7)+x(8)+x(9)+x(10)-1.6332;8*x(1)+2*x(2)+2*&lt;br&gt;
&amp;gt; x(4)+4*x(6)+4*x(7)+4*x(8)+6*x(9)+4*x(10)-3.3332] &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; 2nd file: calls the function&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; clc&lt;br&gt;
&amp;gt; clear all&lt;br&gt;
&amp;gt; x0=[2;13;13;13;13;13;13;13;13;13;1;1;1]  %initial&lt;br&gt;
&amp;gt; guess&lt;br&gt;
&amp;gt; options=optimset('Display','iter');   % Option to&lt;br&gt;
&amp;gt; display output&lt;br&gt;
&amp;gt; [x,fval] = fsolve(@myfun,x0,options)  % Call&lt;br&gt;
&amp;gt; optimizer&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; It would be great help if u can give me some guidance&lt;br&gt;
&amp;gt; to solve it.....&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Thank You&lt;br&gt;
&lt;br&gt;
In order to avoid complex number solutions, you should&lt;br&gt;
be careful that you do not take the log of a negative&lt;br&gt;
number during iteration. Restrict your solution variables&lt;br&gt;
to be positive or solve in the squares of your solution &lt;br&gt;
variables.&lt;br&gt;
&lt;br&gt;
Best wishes&lt;br&gt;
Torsten.</description>
    </item>
    <item>
      <pubDate>Sun, 08 Nov 2009 18:55:03 -0500</pubDate>
      <title>Re: Pls Help me to solve</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/265191#693053</link>
      <author>Chirag Dave</author>
      <description>Thanks Torsten for spending time to answer my question. By assuming square of the variable I could resolve the problem of getting complex number, but still in fsolve it asks for assuming some different initial guess and i changed intial guess no. of times but I couldn't solve it. The problem is getting converged at the point which is not root of the given problem---such sort of error I m getting all the time and it's asking for new initial guess 2 solve......What to do now?&lt;br&gt;
&lt;br&gt;
Thank You&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Torsten Hennig &amp;lt;Torsten.Hennig@umsicht.fhg.de&amp;gt; wrote in message &amp;lt;2126357853.29693.1257594694977.JavaMail.root@gallium.mathforum.org&amp;gt;...&lt;br&gt;
&amp;gt; &amp;gt; Dear Readers&lt;br&gt;
&amp;gt; &amp;gt; I m facing problem in solving set of nonliner&lt;br&gt;
&amp;gt; &amp;gt; equations. Set contains 13 nonlinear equations and 13&lt;br&gt;
&amp;gt; &amp;gt; variables. I've spent lots of time but unfortunately&lt;br&gt;
&amp;gt; &amp;gt; couldn't solve it....&lt;br&gt;
&amp;gt; &amp;gt; I've tried so far solve and fsolve commands.......&lt;br&gt;
&amp;gt; &amp;gt; When I am using solve my computer gets hanged. And&lt;br&gt;
&amp;gt; &amp;gt; fsolve is returning complex number which is&lt;br&gt;
&amp;gt; &amp;gt; practically not possible......&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; I've made two files&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; 1st File:function file&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; function F=myfun(x)&lt;br&gt;
&amp;gt; &amp;gt; F=[-22.47+log(x(1)/(x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)&lt;br&gt;
&amp;gt; &amp;gt; +x(8)+x(9)+x(10)))+(3*x(11))+(3*x(12))+(8*x(13));-24.8&lt;br&gt;
&amp;gt; &amp;gt; 9+log(x(2)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x&lt;br&gt;
&amp;gt; &amp;gt; (9)+x(10))))+x(12)+(2*x(13));-49.539+log(x(3)/((x(1)+x&lt;br&gt;
&amp;gt; &amp;gt; (2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(11)+&lt;br&gt;
&amp;gt; &amp;gt; (2*x(12));-0.0574+log(x(4)/((x(1)+x(2)+x(3)+x(4)+x(5)+&lt;br&gt;
&amp;gt; &amp;gt; x(6)+x(7)+x(8)+x(9)+x(10))))+(2*x(13));-24.597+log(x(5&lt;br&gt;
&amp;gt; &amp;gt; )/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10)&lt;br&gt;
&amp;gt; &amp;gt; )))+x(11)+x(12);-0.7027+log(x(6)/((x(1)+x(2)+x(3)+x(4)&lt;br&gt;
&amp;gt; &amp;gt; +x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+x(11)+(4*x(13));-32&lt;br&gt;
&amp;gt; &amp;gt; .59+log(x(7)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)&lt;br&gt;
&amp;gt; &amp;gt; +x(9)+x(10))))+(2*x(11))+(2*x(12))+(4*x(13));-10.927+l&lt;br&gt;
&amp;gt; &amp;gt; og(x(8)/((x(1)+x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)&lt;br&gt;
&amp;gt; &amp;gt; +x(10))))+x(11)+x(12)+(4*x(13));-4.635+log(x(9)/((x(1)&lt;br&gt;
&amp;gt; &amp;gt; +x(2)+x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x(10))))+(2*x&lt;br&gt;
&amp;gt; &amp;gt; (11))+(x(12))+(6*x(13));-7.5188+log(x(10)/((x(1)+x(2)+&lt;br&gt;
&amp;gt; &amp;gt; x(3)+x(4)+x(5)+x(6)+x(7)+x(8)+x(9)+x &lt;br&gt;
&amp;gt; &amp;gt; (10))))+(2*x(11))+(x(12))+(4*x(13));3*x(1)+x(3)+x(5)+x&lt;br&gt;
&amp;gt; &amp;gt; (6)+2*x(7)+x(8)+2*x(9)+2*x(10)-0.1002;3*x(1)+x(2)+2*x(&lt;br&gt;
&amp;gt; &amp;gt; 3)+x(5)+2*x(7)+x(8)+x(9)+x(10)-1.6332;8*x(1)+2*x(2)+2*&lt;br&gt;
&amp;gt; &amp;gt; x(4)+4*x(6)+4*x(7)+4*x(8)+6*x(9)+4*x(10)-3.3332] &lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; 2nd file: calls the function&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; clc&lt;br&gt;
&amp;gt; &amp;gt; clear all&lt;br&gt;
&amp;gt; &amp;gt; x0=[2;13;13;13;13;13;13;13;13;13;1;1;1]  %initial&lt;br&gt;
&amp;gt; &amp;gt; guess&lt;br&gt;
&amp;gt; &amp;gt; options=optimset('Display','iter');   % Option to&lt;br&gt;
&amp;gt; &amp;gt; display output&lt;br&gt;
&amp;gt; &amp;gt; [x,fval] = fsolve(@myfun,x0,options)  % Call&lt;br&gt;
&amp;gt; &amp;gt; optimizer&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; It would be great help if u can give me some guidance&lt;br&gt;
&amp;gt; &amp;gt; to solve it.....&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; Thank You&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; In order to avoid complex number solutions, you should&lt;br&gt;
&amp;gt; be careful that you do not take the log of a negative&lt;br&gt;
&amp;gt; number during iteration. Restrict your solution variables&lt;br&gt;
&amp;gt; to be positive or solve in the squares of your solution &lt;br&gt;
&amp;gt; variables.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Best wishes&lt;br&gt;
&amp;gt; Torsten.</description>
    </item>
    <item>
      <pubDate>Sun, 08 Nov 2009 23:05:03 -0500</pubDate>
      <title>Re: Pls Help me to solve</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/265191#693087</link>
      <author>Miroslav Balda</author>
      <description>SNIP&lt;br&gt;
&lt;br&gt;
Hi,&lt;br&gt;
I tried to solve your task, because it is rather complicated and I wanted to test my function LMFnlsq. However, the code of your function is rather confused. I have changed it into more lucid form. I am not sure whether I have not introduced an error.&lt;br&gt;
Nevertheless , the following code solved the example in every attempt:&lt;br&gt;
&lt;br&gt;
%   chirag.m    2009-11-08&lt;br&gt;
[x,fval,cnt] = LMFnlsq(@myfun,rand(13,1),'Display',-20); % Call optimizer&lt;br&gt;
format short e&lt;br&gt;
x = x.*x&lt;br&gt;
&lt;br&gt;
%  function  file:&lt;br&gt;
function res = myfun(x)&lt;br&gt;
x = x.*x;&lt;br&gt;
sumx = sum(x(1:10));&lt;br&gt;
res = [-22.47+log(x(1)/sumx)+3*x(11)+3*x(12)+8*x(13)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-24.89+log(x(2)/sumx)+x(12)+2*x(13)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-49.539+log(x(3)/sumx)+x(11)+2*x(12)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-0.0574+log(x(4)/sumx)+2*x(13)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-24.597+log(x(5)/sumx)+x(11)+x(12)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-0.7027+log(x(6)/sumx)+x(11)+4*x(13)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-32.59+log(x(7)/sumx)+2*x(11)+2*x(12)+4*x(13)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-10.927+log(x(8)/sumx)+x(11)+x(12)+4*x(13)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-4.635+log(x(9)/sumx)+2*x(11)+x(12)+6*x(13)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-7.5188+log(x(10)/sumx)+2*x(11)+x(12)+4*x(13)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3*x(1)+x(3)+x(5)+x(6)+2*x(7)+x(8)+2*x(9)+2*x(10)-0.1002&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3*x(1)+x(2)+2*x(3)+x(5)+2*x(7)+x(8)+x(9)+x(10)-1.6332&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;8*x(1)+2*x(2)+2*x(4)+4*x(6)+4*x(7)+4*x(8)+6*x(9)+4*x(10)-3.3332];&lt;br&gt;
&lt;br&gt;
The above code is much better organized, so that you may see, the form of equations. more over, what is once evaluated doesn't need be evaluated more times (sumx).&lt;br&gt;
A solution has been reached always starting from a random initial estimate. If the accuracy is low, you may change the default one by a new option. Maybe that a requirement on positivness of all x is too strict, because the sum of squares dropped down only by one order. The reason could be also in an error in equations.&lt;br&gt;
&lt;br&gt;
Hope it helps.&lt;br&gt;
&lt;br&gt;
Mira</description>
    </item>
  </channel>
</rss>

