Inverse cosine of complex numbers

8 views (last 30 days)
Sriram on 9 Oct 2014
Edited: Andrew Reibold on 10 Oct 2014
I'm trying to get the inverse cosine of a complex number. Using the definition given in the help of acos(z) produces a different result than directly using acos. See below for the code snippet. Can someone help me out?
format LONGENG
z = 0.625820036622262+1.576125391478034E-055i;
res1 = acos(z)
d = z + i*sqrt(1-(z*z))
res2 = -i*log(d)

Answers (1)

Andrew Reibold
Andrew Reibold on 9 Oct 2014
Edited: Andrew Reibold on 9 Oct 2014
I know why!
You were close, but you didn't quite replicate the definition in the documentation correctly.
This is how you would write it.
d = z + i*sqrt(1-z*z)
res2 = -i*log(d)
Using this corrected definition, I get approximately 0.894613863 + ~0i for both answers.
First Method Solution: 0.894613863926113 - 2.02075780910344e-55i
Second Method Solution: 0.894613863926114 + 1.11022302462516e-16i
Bother of the i values are near negligible in magnitude relative to the real part.
Hope this helped!
Andrew Reibold
Andrew Reibold on 10 Oct 2014
Edited: Andrew Reibold on 10 Oct 2014
For some reason I thought your square root function was only taking the square root of z^2. Unless you edited the question, I just made an honest mistake saying you typed it wrong I guess.

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