asind command returns complex angle. What is the meaning of this?

21 vues (au cours des 30 derniers jours)
buscuit
buscuit le 22 Mai 2012
Hi everybody, I am trying to extract an angle from a triangle in degrees and I am using the asind command for this. I need to apply the asind command to values that are more than 1. This results in a complex result e.g. asind(1.0019) returns 90-3.5570i. How can I interpret this value in degrees? thanks

Réponse acceptée

the cyclist
the cyclist le 22 Mai 2012
When you type
asind(1.0019)
you are asking for the angle (in degrees) whose sine is equal to 1.0019. But no real-valued angle exists whose sine has that value.
The inverse sine for complex numbers can be defined as
f_inverse_sine = @(z)(-i*log(i*z+sqrt(1-z.^2)))
(I've switched over to radians here, but you could multiply the result by 180/pi to get degrees.) MATLAB has simply done the right thing for you in the complex domain.
See this page for more of the math: http://mathworld.wolfram.com/InverseSine.html
But, since you are working with triangles, I am guessing you have just made a mistake that ended up with your taking the arcsin of something greater than 1, when you really shouldn't be.

Plus de réponses (0)

Catégories

En savoir plus sur Denoising and Compression 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!

Translated by