MATLAB Answers

Problem with Argument and fsolve

5 views (last 30 days)
satendra kumar
satendra kumar on 29 Apr 2013
Hi everyone, I am trying to solve:
S= (50625*(arg(x*i + y - 1393 - 746*i) - 3560289735917593/36028797018963968)^2)/pi^2 + ((x + (y - 987)^2 - 24025)^(1/2)/2 - 8643/20)^2 + (3240000*(arg(x*i + y - 259 - 1571*i) + 8955599335723659/288230376151711744)^2)/(169*pi^2) + (90000*(arg(x*i + y - 375 - 629*i) - 3959779706285659/144115188075855872)^2)/pi^2
end
with fsolve. But i am getting following error message:
'Undefined function 'arg' for input arguments of type 'double'.
Error in myfun (line 2)
F = [((x(1) + (x(2) - 987)^2 - 24025)^(1/2)/2 - 8643/20)/(2*(x(1) + (x(2) - 987)^2 - 24025)^(1/2)) -
(6480000*((17*pi)/60 + arg(x(1)*i + x(2) - 259 - 1571*i))*(imag(x(1)) - real(x(2)) + 259))/(169*pi
Error in fsolve (line 241)
fuser = feval(funfcn{3},x,varargin{:});
Caused by:
Failure in initial user-supplied objective function evaluation. FSOLVE cannot continue.
'
Please help me out in this. Thanks
  5 Comments
Walter Roberson
Walter Roberson on 29 Apr 2013
? Your current function has no reference to arg(). Are you possibly using matlabFunction() to generate the function in some code you have not shown here? The myfun() you have shown here has no relationship to finding S or Sx or Sy.

Sign in to comment.

Answers (1)

Shashank Prasanna
Shashank Prasanna on 29 Apr 2013
Satendra, arg is not a function in MATLAB but you the function 'angle' computes the argument of the complex number which I believe you are trying to find. In your 'S' replace 'arg' with 'angle'
  1 Comment
satendra kumar
satendra kumar on 29 Apr 2013
Thanks Shashank, But when i did that i got following error message:
Undefined function 'atan2' for input arguments of type 'sym'.
Error in angle (line 14)
p = atan2(imag(h), real(h));

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by