我正在使用MATLAB的符號工具箱,我有一些問題拉出衍生物的係數。也許MATLAB不能做我正在尋找的東西。無論如何,再現我有問題的代碼如下所示:MATLAB符號coeffs問題
clear ; close all; clc;
syms a b t
x = sym('x(t)');
y = sym('y(t)');
syms a b;
ra = a*cos(x);
radot = diff(ra, t);
xdot = diff(x,t);
ydot = diff(y,t);
% This one works as expected
works = coeffs(radot(1), xdot)
% This doesn't work as expected
fails = coeffs(radot(1), ydot)
評論在上面的代碼段突出什麼可行,什麼沒有按預期工作。具體來說,輸出是:
radot =
-a*sin(x(t))*diff(x(t), t)
works =
-a*sin(x(t))
fails =
-a*sin(x(t))*diff(x(t), t)
有誰知道爲什麼會發生這種情況,或者我是否做錯了什麼?