Говорухин В., Цибулин Б. Компьютер в математическом исследовании (1185927), страница 64
Текст из файла (страница 64)
Чтобы определить такие характеристики разреженной матрицы, как норма, число обусловленности и ранг матрицы применяются, соответственно, команды попзез с, сопаезг и зргап1. Разреженную матрицу в нормальную можно преобразовать командой т ц11. Чтобы проверить матрицу на принадлежность к категории разреженных, служит команда 1ззрагзе. Количество ненулевых элементов можно определить командой пппб, а сформировать вектор из ненулевых элементов — функцией попгегок Имеются варианты команд определения спектральных характеристик (е1дз) и сингулярных чисел (зтаз), позволяющие вычислять не весь набор величин, а некоторое их количество.
Например, команда е1 да (А, К. ЧАС ) вычислит К собственных чисел матрицы А, расположенных около значения ЧАС. Эти команды позволяют избежать огромных затрат времени на решение полных проблем. Отметим, что данные команды действуют и для обычных матриц, но особенно удобны для анализа больших разреженных матриц. Команды 1оаа и хате поддерживают работу с разреженными матрицами.
Если матрица задается при помощи формата ЯЬС!1, то конвертировать данные нз подготовленного внешнего файла поможет команда зрсоптегт, при этом ненулевые элементы задаются построчно: на отдельной строке должны быть индексы и значение элемента. Целая серия команд реализует алгоритмы упорядочения матриц, и результатом действия этих команд является вектор упорядоченности.
Упорядочение автоматически применяется МАТЮКАВ при решении линейных систем с разреженными матрицами и при операциях обращения. Команда зужгсж находит такой вектор упорядочения симметричной матрицы, чтобы ненулевые элементы были сгруппированы вблизи главной диагонали. Команды зуевва и со1изпа позволяют получить более разреженное, чем исходная матрица, СП-разложение для симметричной и несимметричной матрицы соответственно. 344 Глава 13.
Ь)атричные вычисления В задачах, полученных в результате применения метода конечных элементов, имеется информация о пространственных координатах, связанных со строками и столбцами разреженной матрицы. Пусть в матрице ху содержатся координаты конечноэлементной сетки, а 5 — соответствующая матрица связности. Нарисовать соответствующий граф можно при помощи команды 001 от (5.
й') Картина распределения ненулевых элементов будет выведена по команде зру(5) Приведем пример преобразования матрицы Пуассона (из стандартного набора матриц оэ11егу) при сетке бхб в разреженную и последующие выводы структур матриц, полученных при помощи различных преобразований: » Рот=ра11егу("ро1ззоп".5): 5-зрагзе(ро!):г-зумгсм(5): Для размещения на одном рисунке нескольких изображений используется команда зыЬр101 (см. главу 14 «Графика МАТ) АВ»).
» зцор1ос(2,2. 1).зру(рот).зцЬР)ос(2.2,2).яру(5(.,г)) зцор!о1(2,2.3).зру()и(5)).зоЬр1ос(2.2.4),зру()и(5(..г))) 10 20 20 30 30 0 10 20 30 О 10 20 30 па =156 пг = 156 0 0 10 1О 20 20 30 30 0 10 20 30 О 10 20 30 пг = 406 пг = 346 рис. 13лп исходная задача дяя задачи пуассона и преобразованные матрицы Внизу каждой картины дано число ненулевых элементов для матрицы размера 36х36. Решение системы линейных алгебраических уравнений с разреженной матрицей может быть получено прямыми методами (различные варианты метода Гаусса— Ш-факторизация, схема Холецкого) и итерационными методами. Прямые методы быстрее н лучше, если достаточно памяти для проведения соответствующих Работа е разрежениями матрицами 345 преобразований.
Эти методы располагаются в ядре МАТ1.АВ, и их реализация осуществлена с большой тщательностью. Итерационные методы выручают, если матрица системы большого размера, как, например, при решении уравнений в частных производных сеточным методом или методом конечных элементов.
Наиболее распространены методы Ьч сд, Ьч сзтзЬ, сдз, дечгез, детез, дечг. Все шесть методов можно предварять проведением левого или правого предобусловливания, позволяющего улучшить обусловленность системы перед применением итерационного метода. Полный перечень команд работы с разреженными матрицами может быть получен по команде справки чешир трагтип ГЛАВА Графика МАП АВ Для многих исследований и вычислительных работ важным этапом является визуализация данных, поддержка которой осуществляется в МАТ|АВ при помощи набора мощных графических команд высокого уровня и программируемого интерфейса дескрипторной графики Напб!е СгарЬ~сз.
Команды высокоуровневой графики реализуют построение графиков кривых в двумерном н трехмерном пространствах, изображение поверхностей, рисование линий уровня, гистограмм, многие виды специализированной графики и анимацию. При этом управление цветом, масштабирование, нанесение подписей, маркировка осей и т.д. осуществляется достаточно просто, а назначенные по умолчанию режимы вполне удовлетворительны в большинстве случаев. Начиная с версии 5.3 под %!про эз появилась возможность интерактивного оформления рисунков. Объектно-ориентированная система Напб!е СгарЫсз предоставляет доступ ко всем характеристикам графических объектов и позволяет создавать новые графические команды. Кривые, поверхности и другие графические объекты строятся в специальном графическом окне (Яйиге).
Первое обращение в сеансе к графической команде автоматически вызывает появление окна, которому присваивается первый номер. Чтобы организовать новое окно или перейти от одного окна к другому, нужно выбрать пункт Нее Г!йоге в меню Г!1е командного или графического окна. Для того чтобы перейти к имеющемуся окну с номером з или организовать новое окно, достаточно в строке ввода ввести команду г!чэге и Одновременно может быть открыто несколько графических окон.
В многооконной среде действуют обычные способы перемещения от приложения к приложению: выбор при помощи панели задач или нажатие А!с+Тай. При описании графических команд будем приводить рисунки без меню и значков, то есть в том виде, который нужен исследователю для вставки графиков и рисунков в отчеты, статьи, книги, а в конце главы рассмотрим интерфейс графического окна и имеющиеся в нем возможности для редактирования изображений и оформления рисунков. В МАТВАВ для сохранения рисунка имеется большой выбор форматов графиче- Двунерная графика 347 ских файлов, причем рисунок можно записать, используя меню графического окна или выполнив команду в основном окне, Двумерная графика Таблица 14.1.
Типы линий Символ Описание Символ Описание пунктирная штрнхпунктнрная сплошная пунктирная Таблица 14.2. Типы меток Символ Описание Символ Описание точка звезда плюс крест ромб кружок квадрат пятиконечная заезда различные треугольники шестиконечная звезда Н Нехадгае Р рептаргав Таблица 14.3. Цвет линий Символ Цвет Код КОК (1 1 О) (1 0 1) желтый фиолетовый продоазквнив вэ Основная команда двумерной графики р1 ос строит графики кривых с абсциссами Х1, Х2, ... и ординатами У1, У2, ... и имеет следующий формат: р1ом Х1. т1. 51, Х2, т2, 52 ..
) Дополнительные параметры, представленные строками 51, 52, ... позволяют задать тип, толщину и цвет рисуемой кривой, а также форму и размер маркера. Сводка символов, используемых для определения типа и цвета линий, а также типа меток, представлена в табл, 14.1 — 14.3. Строки 51, 52, ... могут быть подготовлены отдельно либо информация по оформлению кривой должна быть взята в апострофы.
Если дополнительные параметры опущены, то МАТ1АВ устанавливает параметры, действующие по умолчанию: все кривые будут выведены сплошными линиями и окрашены циклически в шесть различных цветов. Если ординаты У1, У2, представлены двумерными массивами, то строятся графики для столбцов. Если массивы абсцисс и ординат содержат комплексные элементы, то их мнимые части игнорируются и график строится по вегцественным частям.
348 Глава 14. Графина ИАТЕАВ Таблица 14.3 (лродоллгение) Символ Цвет Нод йбв голубой красный (011) (10 0) (О 1 0) (00 1) (000) (111) зеленый синий черный белый Размерности массивов, задающих абсциссы и ординаты, должны совпадать. В про- тивном случае будет выведено сообщение об ошибке: » х-):3, у-1:4, р101(х,у) ??? Еггог оззпр — р1о1 уестогз иизт Ье Ене заве 1епчгоз. Начнем с построения графика единственной кривой, указав в апострофах, что ри- суется сплошная кривая черного цвета, см. рис. (4. В » х-0:.01:3 у-ехр(х).*з1пщ*х), р1омх.у,'-К') 20 10 -10 -20 0 1 2 3 Рис.