
Inverse cosine of complex numbers
13 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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)
0 commentaires
Réponses (1)
Andrew Reibold
le 9 Oct 2014
Modifié(e) : Andrew Reibold
le 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
4 commentaires
Andrew Reibold
le 10 Oct 2014
Modifié(e) : Andrew Reibold
le 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.
Voir également
Catégories
En savoir plus sur Data Type Identification dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!