Короткий ответ: используйте subs
. Длинный ответ:
>> syms t;
>> y = int(t^2) % note: as rzrgenesys187 says, this is t^3/3
y =
t^3/3
>> x = 1:10; % same as x = [1:1:10]
>> subs(y, 't', x)
ans =
Columns 1 through 7
0.3333 2.6667 9.0000 21.3333 41.6667 72.0000 114.3333
Columns 8 through 10
170.6667 243.0000 333.3333
Если вы хотите, чтобы выражение y(x)
ведут себя как вызов функции, вы можете связать переменную 'у', используя анонимную функцию:
>> y = int(t^2);
>> y = @(t) subs(y, 't', t); % the 't^3/3' value of y gets bound into the anonymous function
>> y(x)
ans =
Columns 1 through 7
0.3333 2.6667 9.0000 21.3333 41.6667 72.0000 114.3333
Columns 8 through 10
170.6667 243.0000 333.3333
>> y(2)
ans =
2.6667
Если вы находите интеграл от t^2, вы бы не получили t^3/3, а не 2t. 2t была бы производной от t^2 – rzrgenesys187
да, конечно. скажем, я спешил :) – Fantomas