2012-01-30 2 views
3

Прошу прощения, если я раньше не был прав; Я хотел бы работать с символическими функциями, такими как, например, x(t), без необходимости определять x.Символические функции в matlab

Это может быть полезно, потому что иногда у вас будут функции x, и вы хотите вычислить производную в t. Например

y(x) = y(x(t)) = t*x(t) 

d y(x)    d x(t) 
------ = x(t)+ t* ------ 
d t    dt 

Есть ли способ сделать это в Matlab?

ответ

1

Оказалось, что это довольно легко (после того, как я потратил 20 минут, чтобы сделать это очень сложно).

>> y = sym('t*x(t)') 
>> y_dot = diff(y,t) 
y_dot = 
t*diff(x(t), t) + x(t) 

Вы можете также определить некоторые промежуточные продукты, если вы хотите

>> f = sym('x(t)'); 
>> y = t*f; 
>> diff(y,'t') 
ans = 
t*diff(x(t), t) + x(t) 

Я также обнаружил mupad команду, которая стоит попробовать. В окне mupad введите y(x) := t*x(t) и diff(y(x),t).

+0

Спасибо, это сработало! – Saphrosit