Во втором случае p,d=eig(A)
MATLAB просто печатает ранее вычисленное значение p из случая 1, а затем запускает команду d=eig(A)
.
Перед запуском варианта 2 попробуйте
>> clear p d
Если вы затем запустите p,d=eig(A)
, он вернет ошибку, сообщающую, что p является неопределенной функцией или переменной.
С help eig
:
E = EIG(X) is a vector containing the eigenvalues of a square
matrix X.
[V,D] = EIG(X) produces a diagonal matrix D of eigenvalues and a
full matrix V whose columns are the corresponding eigenvectors so
that X*V = V*D.
Обратите внимание, что опция V,D = EIG(X)
отсутствует. Функции MATLAB, которые возвращают более одного значения, сгруппируют их в формате:
[ ] = function()