2012-04-08 2 views

ответ

1

Он выглядит действительным, так как он аналогичен примеру в http://www.mathworks.co.uk/help/toolbox/symbolic/syms.html. Вы можете проверить which x, which y и which f, чтобы убедиться, что х, у и е не существующие функции (я не думаю, что символические переменные могут иметь такое же имя, как функция)

Вы можете также попробовать:

x = sym('x'); 
y = sym('y'); 
f(x, y) = sym('f(x, y)'); 

Это должно делать то же, что и исходный код, но я не понимаю, почему он будет работать, если syms этого не делает.

+0

, когда я печатаю последнее выражение, которое я получаю: «??? Ошибки использования ==> mupadmex Ошибки в Команда MuPAD: DOUBLE не может преобразовать входное выражение в двойной массив . Если входное выражение содержит символическую переменную, вместо этого используйте функцию VPA. " – Andrew

3

Как это

syms x y; 
f = sym('3*x + 4*y'); 
subs(f, {x,y}, {4,5}); % returns 32 

BTV, довольно хорошая страница символической математики в MATLAB here

+0

На самом деле это то, что я пытаюсь выполнить: dsolve (diff (y) == a * y, y (0) == b) когда я отправляю это выражение, я получаю: «Ошибка с использованием ==> sym .sym> checkindex at 2729 Индекс должен быть положительным целым или логическим. " Любая идея о том, как его использовать? – Andrew

+0

Ну, это должен был быть ваш вопрос! Я посмотрю. – Griffin

+0

это вводит в заблуждение, потому что это пример, показанный на веб-сайте Matlab, и он не работает для меня. У меня есть Matlab 2011. – Andrew

Смежные вопросы