error To compute complex results, make at least one input complex, e.g. 'power(complex(a),b)'.
1 view (last 30 days)
Show older comments
hi,
i try to run a function when i have:
b = -log(((F - G*1i)*(1 + (F^2 + G^2 - 1)^(1/2)*1i)*1i)/(F^2 + G^2))*1i;
but it's generated,
??? Domain error. To compute complex results, make at least one input complex, e.g.
'power(complex(a),b)'.
how can i resolve it?
4 Comments
Walter Roberson
on 21 May 2015
Somewhere along the line you sent me a sample F and G value (but not e1.) I explored the graph with those values, and used an arbitrary e1, and I found that your "b" value can come out real or complex depending on the exact values used. When G = 1 there is also a singularity.
Answers (2)
Walter Roberson
on 20 May 2015
Try
b = -log(((F - G*1i).*(1 + (F.^2 + G.^2 - 1).^(1/2)*1i)*1i)./(F.^2 + G.^2))*1i;
2 Comments
Walter Roberson
on 20 May 2015
I am going to speculate that what might work is
b = -log(((F - G*1i).*(1 + complex(F.^2 + G.^2 - 1).^(1/2)*1i)*1i)./(F.^2 + G.^2))*1i;
studentU
on 20 May 2015
Edited: Walter Roberson
on 21 May 2015
1 Comment
Walter Roberson
on 21 May 2015
I am confused now. Is this in Simulink or is this at the MATLAB command prompt?
If it is at the MATLAB command prompt, then I need to a current copy of the line that failed and I need to know the values it fails on -- a sample el, F, G
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!