АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Примеры матричных операций с применением пакета LinearAlgebra

Читайте также:
  1. II. Примеры, подтверждающие милость, явленную в Пророке, да благословит его Аллах и да приветствует.
  2. MS Excel.Текстовые функции, примеры использования текстовых функций.
  3. SCADA. Назначение. Возможности. Примеры применения в АСУТП. Основные пакеты.
  4. Анализ пакета фирменного стиля бренда Nestle
  5. Анализ эффективности лизинговых операций
  6. Аудит перестраховочных операций
  7. БОЕВЫЕ ПРИМЕРЫ
  8. БУХГАЛТЕРСКИЙ УЧЕТ ОПЕРАЦИЙ ПОГАШЕНИЯ ОБЛИГАЦИЙ ГОСУДАРСТВЕННОГО ВЫИГРЫШНОГО ВАЛЮТНОГО ЗАЙМА
  9. В. Примеры случайных процессов
  10. Взаимно исключающие связи в ER-модели. Примеры. Отображение диаграммы со взаимно исключающими связями в реляционную схему.
  11. Взаимосвязь архитектуры и строительных материалов (примеры).
  12. Взлом беспроводных сетей с помощью пакета aircrack-ng 0.6.2-win и ОС Windows XP

Применение алгоритмов NAG особенно эффективно в том случае, когда используется встроенная в современные микропроцессоры арифметика чисел с плавающей запятой. С помощью специального флага такую арифметику можно отключать или включать:

> UseHardwareFloats:= false; # use software floats

Use Hardware Floats:= false

> UseHardwareFloats:= true; # default behaviour

UseHardwareFloats:= true

Матрицы в новом пакете линейной алгебры могут задаваться в угловых скобках, как показано ниже:

> М1:=<<1|2>,<4|5>>; М2:=<<1|2.>, <4|5>>;

После этого можно выполнять с ними типовые матричные операции. Например, можно инвертировать (обращать) матрицы:

> М1^(-1); М2^(-1);

MatrixInverse: "calling external function"

MatrixInverse: "NAG" hw_f07adf

MatrixInverse: "NAG" hw_f07ajf

Обратите внимание, что Maple теперь выдает информационные сообщения о новых условиях реализации операции инвертирования матриц с вещественными элементами и, в частности, об использовании алгоритмов NAG и арифметики, встроенной в сопроцессор.

Следующий пример иллюстрирует создание двух случайных матриц M1 и М2 и затем их умножение:

> M1:=RandomMatrix(2,3); М2:=RandomMatrix(3,3);

Multiply(M1,M2,'inplace'); M1;

Параметр inplace в функции умножения обеспечивает помещение результата умножения матриц на место исходной матрицы М1 — излюбленный прием создателей быстрых матричных алгоритмов NAG. Поскольку матрицы M1 и М2 заданы как случайные, то при повторении этого примера результаты, естественно, будут иными, чем приведенные.

Другой пример иллюстрирует проведение хорошо известной операции LU-разложения над матрицей М, созданной функцией Matrix:

> M:=Matrix([[14,-8,1],[-11,-4,18],[3,12,19]], datatype=float);

LUDecomposition(М,output=['NAG'],inplace);

ipiv:=%[1];

M;

LUDecomposition: "calling external function"

LUDecomposition: "NAG" hw_f07adf


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)