2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 [Wolfram Mathematica] Интерактивные собственные значения
Сообщение09.04.2017, 19:02 
Аватара пользователя
Столкнулся с проблемой при попытке анимировать график собственных значений матрицы, зависящих от параметра.
Например, если выполнить команду
Код:
In[1] := e = Eigenvalues[{{a x, 0},{0, -a x}}]

программа исправно выдаст
Код:
Out[2] = {-a x, a x}

Но вот
Код:
Manipulate[Plot[e, {x, 0, 1}], {a, 0, 1}]

просто рисует пустое поле с координатными осями. При этом, всё работает, если написать
Код:
Manipulate[Plot[%2, {x, 0, 1}], {a, 0, 1}]

В чём может быть дело?

 
 
 
 Re: [Wolfram Mathematica] Интерактивные собственные значения
Сообщение09.04.2017, 20:23 
Работает
Код:
Manipulate[Plot[e /. a -> c, {x, 0, 1}], {c, 0, 1}]

 
 
 
 Re: [Wolfram Mathematica] Интерактивные собственные значения
Сообщение09.04.2017, 22:13 
Аватара пользователя
Да, работает, но не так, как при передаче параметра через относительную ссылку (с помощью %). В предложенном вами методе Математика почему-то не делает разницы между двумя прямыми -- они обе нарисованы одним цветом, а параметр
Код:
PlotLegends -> {"e1", "e2"}
выводит только надпись "e1". Если же использовать относительную ссылку, то оба графика будут разного цвета и правильно подписаны.

 
 
 
 Re: [Wolfram Mathematica] Интерактивные собственные значения
Сообщение09.04.2017, 22:16 
И это можно исправить :-)
Код:
Manipulate[Plot[e /. a -> c // Evaluate, {x, 0, 1}], {c, 0, 1}]

 
 
 
 Re: [Wolfram Mathematica] Интерактивные собственные значения
Сообщение09.04.2017, 22:22 
Аватара пользователя
Действительно работает! А можете объяснить почему так происходит?

 
 
 
 Re: [Wolfram Mathematica] Интерактивные собственные значения
Сообщение09.04.2017, 23:39 
Аватара пользователя
It's not a bug, it's a feature ;-) Kitozavr, почитайте, напр., объяснения здесь.

 
 
 [ Сообщений: 6 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group