Я хочу найти cos(5)
. Почему это выражение неверно:
syms x
f=sin(x)
disp(diff(f)(5))
Ошибка
Line: 3 Column: 12
Indexing with parentheses '()' must appear as the last operation of a valid indexing expression.
Я хочу найти cos(5)
. Почему это выражение неверно:
syms x
f=sin(x)
disp(diff(f)(5))
Ошибка
Line: 3 Column: 12
Indexing with parentheses '()' must appear as the last operation of a valid indexing expression.
Ваша ошибка не имеет ничего общего с символическими переменными.
Это вызвано оператором diff(f)(5)
, что не позволяет синтаксис MATLAB (начиная с R2019b). MATLAB интерпретирует это как попытку пользователя получить доступ к 5-му элементу некоторого промежуточного результата. Если вы хотите узнать фактическое значение производной от f
в x=5
, вам придется подставить желаемое значение x
(используя subs
) и преобразовать его в какой-либо числовой формат (например, double
):
syms x
f = sin(x)
disp(double(subs(diff(f),x,5))) % substitute x and convert to double
Y = cos(x) просто предоставит значение косинуса x. Или все х.
Я думаю, что в вашем коде: disp(diff(f(5))) должно работать.