как я могу дифференцировать функцию в matlab? Я попытался с:.дифференцировать функцию в matlab
syms x;
f = 3x^2 + 2;
A = diff(f);
disp(A);
Моя проблема теперь я хочу, чтобы дать значение ха после (например, А (х = 1), и я не знаю, как
как я могу дифференцировать функцию в matlab? Я попытался с:.дифференцировать функцию в matlab
syms x;
f = 3x^2 + 2;
A = diff(f);
disp(A);
Моя проблема теперь я хочу, чтобы дать значение ха после (например, А (х = 1), и я не знаю, как
Во-первых, есть ошибка в вашем код, вы не может означать умножение, вам нужно написать 3*x^2
вместо 3x^2
.
Кроме того, в случае, если вы подаете функцию вектор, а не скаляр, вы должны использовать поэлементно операции (в том числе .
до полномочия, умножение и т. д.), поэтому это становится 3*x.^2
.
Кроме того, 2 варианта:
syms x;
f = 3*x.^2 + 2;
1) определяют A
как вы сделали и использовать subs
заменить x
, скажем, 1
.
A = diff(f);
subs(A,x,1);
2) определить A
как анонимную функцию и назвать ее более легко.
A = @(y) subs(diff(f),x,y)
Теперь A
можно легко назвать с различными значениями
A(1)
ans = 6
A(2)
ans = 12
Ссылки на документацию по поэлементно опс, subs
и анонимные функции:
https://uk.mathworks.com/help/matlab/matlab_prog/array-vs-matrix-operations.html https://uk.mathworks.com/help/symbolic/subs.html https://uk.mathworks.com/help/matlab/matlab_prog/anonymous-functions.html
Как я могу дифференцировать функциональный дескриптор, такой как @ (x) x^3 + 2? – zer0kai
Почему вы хотите это сделать? Если у вас есть набор инструментов символической математики, вы можете сделать это выше? Вам не нужна анонимная функция, если вы определяете ее как символическую функцию, например, в вашем вопросе ... – Wolfie
Я хочу сделать функцию, в которой я могу ввести свою функцию и afaik, это только работа с функцией-handle. – zer0kai
Вам нужно matlabfunction
функция.
matlabFunction Создать файл MATLAB или анонимную функцию из симво
Изменить код так:
syms x;
f = 3*x^2 + 2; % You missed a * here
A(x) = diff(f); % This creates a symfun
A(1) % This gives the value of A at x=1
Так ... 'подводные лодки (А, х, 1)'? –
..... 'A = 6 * x?' –