Maple 13 не назначает переменную - PullRequest
1 голос
/ 06 июня 2010

Пожалуйста, обратитесь к скриншоту. Я назначил Qswap матрице, и когда я пытаюсь просмотреть Qswap, ему ничего не назначается! Помощь будет оценена =) альтернативный текст http://i48.tinypic.com/2zybin4.

1 Ответ

4 голосов
/ 07 июня 2010

Команда swapcol из пакета linalg, которая работает с матрицей и / или вектором. Обратите внимание на отсутствие заглавных букв в matrix и vector.

A matrix в Maple - это объект, для оценки которого используются так называемые правила last_name_eval. Смотрите страницу помощи last_name_eval. Поэтому, когда вы вводите только имя, все, что вы получаете, это имя. Вы можете просмотреть базовый массив, который назначен на имя, используя команды evalm, eval или print. Например,

restart:
with(linalg):
m:=matrix(2,2,[1,2,3,4]);
qswap:=swapcol(m,1,2);
qswap;
evalm(qswap);

Теперь пакет linalg официально объявлен устаревшим в Maple 13. Рекомендуется заменить его пакетом LinearAlgebra (представлен в Maple 6 десять лет назад). Пакет LinearAlgebra предназначен для матрицы или вектора (не с заглавной буквы). Объекты Matrix и Vector не имеют last_name_eval, в отличие от матрицы и вектора. Например,

restart:
with(LinearAlgebra):
m:=Matrix(2,2,[[1,2],[3,4]]);
qswap:=ColumnOperation(m,[1,2]);
qswap;

И последнее. По умолчанию только матрицы и векторы размером <11 получают свое содержимое в явном виде. Вы можете отрегулировать это с помощью нового среза размером 50, скажем, вот так: </p>

interface(rtablesize=50);
...