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

22 次查看(过去 30 天)
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

采纳的回答

the cyclist
the cyclist 2012-5-22
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.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Denoising and Compression 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by