* Данный текст распознан в автоматическом режиме, поэтому может содержать ошибки
Работа с пакетом LinearAlgebra и алгоритмами NAG
> restart; with(LinearAlgebra): > infolevel[LinearAlgebra]:=1;
625
infolevelLinearAlgebra := 1 Многие функции этого пакета (их большой список опущен) повторяет по на значению функции более старого пакета linalg, описанного выше. Поэтому мы не будем останавливаться на их повторном описании. Главное – то, что эти функ ции задействуют возможности быстрых алгоритмов NAG и, в отличие от функций пакета linalg, ориентированы на численные расчеты в том формате обработки вещественных чисел, который характерен для применяемой компьютерной плат формы. Знающий матричные методы читатель легко поймет назначение функций пакета LinearAlgebra по их составным названиям. Например, DeleteColumn означает удаление столбца матрицы, ToeplitzMatrix означает создание матри цы Теплица, ZeroMatrix – создание матрицы с нулевыми элементами и т. д. Все имена функций этого пакета начинаются с заглавной буквы.
8.3.2. Примеры матричных операций с применением пакета LinearAlgebra
Применение алгоритмов NAG особенно эффективно в том случае, когда исполь зуется встроенная в современные микропроцессоры арифметика чисел с плаваю щей запятой. С помощью специального флага такую арифметику можно отклю чать или включать:
> UseHardwareFloats := false; > UseHardwareFloats := true; # use software floats # default behaviour
UseHardwareFloats := false UseHardwareFloats := true Матрицы в новом пакете линейной алгебры могут задаваться в угловых скоб ках, как показано ниже:
> M1:=<<1|2>,<4|5>>; M2:=<<1|2.>,<4|5>>;
После этого можно выполнять с ними типовые матричные операции. Напри мер, можно инвертировать (обращать) матрицы:
> M1^(-1); M2^(-1);