Cosine function does not work

2 Ansichten (letzte 30 Tage)
Szymon Wlodarczyk
Szymon Wlodarczyk am 10 Mai 2016
Beantwortet: mustafa ün am 18 Jan. 2019
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.

Akzeptierte Antwort

James Tursa
James Tursa am 10 Mai 2016
Bearbeitet: James Tursa am 10 Mai 2016
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

Weitere Antworten (1)

mustafa ün
mustafa ün am 18 Jan. 2019
execllent fro beginners

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by