How i can solve the "Non-Linear Equation" with "TWO Unknown variables" ?
    2 views (last 30 days)
  
       Show older comments
    
Hi everyone, I want to solve the"Non-Linear Equation" with "TWO Unknown variables". In my equation i have two eq. Eq7 & Eq.10 non- linear equation and 2 unknown variables (x,y) are there.
>> Eq7=(((1+2*x^2)./(1-x^2))+(4*(1-2*y^2)*sqrt(1-x^2)*(2+x^2))./((1-x^2)*(1-y^2)^0.5*(2+y^2))); >> Eq10=(((4*(y*(2+x^2)*(1-x^2)*sqrt(pi^2*(1-y^2)+4*y^2)))./(x*(2+y^2)*(1-y^2)*sqrt(pi^2*(1- x^2)+4*x^2))-1)); I would like to solve these equations with Newton-Raphson Method. DETAILED INFORMATION IS AVAILABLE IN ATTACHED "PDF". Kindly help me in this regard. Thanks,
1 Comment
  John D'Errico
      
      
 on 17 Apr 2016
				
      Edited: John D'Errico
      
      
 on 17 Apr 2016
  
			Why do you think that Newton-Raphson is what is needed to solve them? What if some other method is better? Or is this your homework assignment that you wish us to do for you?
For example, is there a good reason why you would not just use fsolve to solve the problem?
Answers (1)
  John D'Errico
      
      
 on 17 Apr 2016
        
      Edited: John D'Errico
      
      
 on 17 Apr 2016
  
      By the way, these functions are rather nasty looking, full of discontinuities and singularities. Newton-Raphson will fail rather miserably.
[xx,yy] = meshgrid(-3:.01:3);
f10 = matlabFunction(Eq10)
f10 = 
    @(x,y)(y.*(x.^2-1.0).*(x.^2+2.0).*1.0./sqrt(x.^2.*(-5.869604401089358)+9.869604401089358).*sqrt(y.^2.*(-5.869604401089358)+9.869604401089358).*4.0)./(x.*(y.^2-1.0).*(y.^2+2.0))-1.0
f7 = matlabFunction(Eq7)
f7 = 
    @(x,y)-(x.^2.*2.0+1.0)./(x.^2-1.0)-(1.0./sqrt(-x.^2+1.0).*(x.^2+2.0).*1.0./sqrt(-y.^2+1.0).*(y.^2.*8.0-4.0))./(y.^2+2.0)
[xx,yy] = meshgrid(-3:.01:3);
z7 = f7(xx,yy);
z7(imag(z7) ~= 0) = NaN;
z10 = f10(xx,yy);
surf(xx,yy,z7)

surf(xx,yy,z10)

I'm sorry, but if you honestly think that Newton-Raphson has a snowball's chance in hell on this problem, then try thinking again.
xy = vpasolve(Eq7,Eq10,[x,y]);
xy.x
ans =
- 0.12987020281246053513502230527952 - 1.2712758599621447488655663518207i
xy.y
ans =
- 0.56101002772745884082718756405031 - 0.54153276698206277641963799470431i
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
