Cosine function does not work

I have recently faced a silly problem using cosine (Y=cos(x)). I am trying to compute:
cos(ksi1)
where ksi1 equals to 2.8322 and is type double. I am getting only an error:
"Subscript indices must either be real positive integers or logicals."
What is funny that sin(ksi1) returns a value, 0.3044. Moreover, I can compute value cos(ksi1) using Pythagorean trigonometric identity.
It just eats my nerves. I am working with MATLAB R2013a.

 采纳的回答

James Tursa
James Tursa 2016-5-10
编辑:James Tursa 2016-5-10
You have inadvertently created a variable with the name "cos" that is shadowing the function "cos". Clear the variable, and pick a different variable name to use for the calculation you are doing to avoid the same problem in the future. E.g.,
>> which cos
built-in (C:\Program Files\MATLAB\R2015a\toolbox\matlab\elfun\@double\cos) % double method
>> cos(2.8322)
ans =
-0.9525
>> cos = 4 % <-- creating a variable named cos
cos =
4
>> which cos
cos is a variable.
>> cos(2.8322)
Subscript indices must either be real positive integers or logicals.
>> clear cos
>> cos(2.8322)
ans =
-0.9525

更多回答(1 个)

类别

帮助中心File Exchange 中查找有关 Programming 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by