Говорухин В., Цибулин Б. Компьютер в математическом исследовании (1185927), страница 61
Текст из файла (страница 61)
Применение )пдпе-функции для построения графика Вычислим корень введенной функции, взяв в качестве начального приближения точку х" 1: » таего[тип. 1) 2его Гонов 1п Сне 1птегка1: [0.54745. 1.4525]. дпв 1.4142 Нужно учитывать, что для ряда команд т п1)пе-функция должна быть определена в виде, допускающем векторизацию. Так, для введенной функции при вычислении интеграла появится сообщение об ошибке; 326 Глава 12. Элементы языка МАТ(Ад » цнао(топ,д, 1) ??? Еггог иззпд -> зп1(пе/тета1 Еггог зп зп1(пе ехргеьззап -> х"2/2-х"4/4 ??? Еггог пз(пд -> " Матг1х мизт Ье зооаге.
Поэтому функцию нужно переписать следующим образом: » топ=(п11пе("х."2/2-х. 4/4"); Теперь интеграл будет вычислен: » цоао(топ,0.1) апз- 0.1167 При помощи )п11пе-функции просто организовать решение дифференциального уравнения первого порядка. Перечислим список элементарных математических функций МАТ).АВ, применя- емых к скалярным величинам (матрицы размера 1х1) или к каждому элементу матрицы-аргумента. Имя Описание аЬз ехр 51дп загс 1од 1од10 геа1 !пад апд1е 1са соп) тчх т1оог се!1 дед Наибольший общий делитель гоопо пюп Остаток от деления, вычисляемый по формуле аоо(х,у)-х-у."Г1оог(х./у) Перед вызовом любой функции полезно опробовать обращение к ней, пользуясь тем, что МАТЮКАВ интерпретатор. Например: » мп(ЕО 1: 2 Р(1) Математические функции Таблица 12.12.
Основные математические функции Имя Описание Абсолютная величина Натуральный логарифм Десятичный логарифм Вещественная часть комплексного числа Сопряженное число Округление до ближайшего целого в сторону нуля Округление до ближайшего в сторону Экспонента Знак числа Корень квадратный Мнимая часть комплексного числа Фазовый угол Наименьшее общее делимое Округление целого до ближайшего целого в сторону +» Округление до ближайшего по абсолютному значению целого числа Остаток от деления, вычисляемый по формуле геп(х,у)-х-у.*Г(х(х./у) [4атематические функции 327 ап5 О 0.8415 0.9093 О.ОООО Реализация одной операции для всех элементов массива называется векторизацией. Рассмотрим действие операций округления на примере нескольких чисел, оформленных в виде вектора-строки: » Г)х([-2.5 -2.49 2.49 2.5)) ап5- -2 -2 2 2 » Г1оог([-2.5 -2.49 2.49 2.5)) ап5- -3 -3 2 2 » се11[[-2.5 -2 49 2.49 2.51) ап5- -2 -2 3 3 » гоипс[[-2.5 -2.49 2.49 2.5)) ап5- -3 -2 2 3 Таблица 12 13.
Прямые тригонометрические и гиперболические функции Функция Тригономерическая Гиперболическая функция функция Косинус Синус Тангенс Котангенс Секанс СО5П СО5 51П 5!пя Сапп сап сот соти 5ЕСП 5ЕС Косеканс С5СП С5С Таблица 12.14, Обратные тригонометрические и гиперболические функции Функция Тригономерическая Гиперболическая функция функция Арккосинус Арксинус Арктангенс Аркотангенс Арксеканс Арккосеканс асоап асо5 551П датпл асан атапп асота ааесь асасн асот ааес аеас Список всех имеющихся математических функций может быть получен по команде Ье1р е1топ Помимо обычного арктангенса атал имеется функция атап2, позволяющая коррект- но определить угол в радианах — арктангенс отношения ординаты и абсциссы.
328 Глава 12. Элементы языка ИАТГАВ Например: » д1ап2(1,-зягтгз)) впз- 2.6180 Проверим ответ: » р!*6!6 апз- 2.6180 В заключение отметим, что рассмотрен базовый набор математических функций, специальные математические функции будут представлены в главе 15 «Численный анализ в МАТ1 АВ», а в главе зЗ «Матричные вычисления» будут описаны функции от матриц. ГЛАВА Матричные вычисления Матрица — двумерный массив с всшественными или комплексными элементами— является основным объектом пакета МАТ1.АВ, Функции работы с матрицами разработаны так, чтобы обеспечить максимальную эффективность выполнения множества операций: от нахождения минимального элемента до сложных алгоритмов линейной алгебры.
С подключением ядра пакета Мар!е в МАТЮКАВ стало возможным работать с матрицами, содержащими символьные переменные, аналитические выражения и другие элементы. Наше изложение не предполагает детального описания всех команд работы с матрицами, а ориентировано на представление наиболее часто используемых команд. Полные перечни команд и перечисление всех вариантов обращения к ним следует искать в документации самой среды МАТ1.АВ и справочной литературе 111 — 211.
Операции над матрицами Вначале рассмотрим функции МАТ1.АВ, предназначенные для обработки числовых массивов. При нахождении максимума и минимума, вычислении сумм, произведений, средних значений и т. д. для матриц по умолчанию действует следующее правило: вычисляется соответствуюшая операция для элементов столбцов и результат помещается в вектор-строку. Чтобы проделать вычисления построчно, можно вначале транспонировать исходную матрицу, а затем полученный в результате вектор-столбец превратить в строку. Кроме того, для многомерных массивов можно явно указать размерность, по которой будет действовать операция.
Так, для массива Х команды вычисления максимума и суммы по размерности М имеют соответственно следующий вид: щах(Х, Ц,л) и ялп(Х,л). Пусть задана следующаяматрица второго порядка: ь Я [О 1 2: 3 4 б) 4 0 1 2 3 4 б 330 Глава 13. Матричные вычисления Таблица 13.1. Команды работы с данными Нмя Назначение 5ОМ СОЕ5ОЮ ргоб сомргоо меьи ап Сравним результаты вычисления максимальных элементов в столбцах: » мах(А) апз- 3 4 б Другой способ вычисления максимальных элементов в строках имеет вид: » мах(А.[).2) апз- 2 б Нахождение наибольшего элемента исходной матрицы реализуется при помощи двукратного применения команды квх: » мах(мах(А)) апз = б Имеются варианты команд п)ах и а( и с иным числом входных и выходных параметров.
Так, [На, 1п)-тпах(А) выведет вектор-строку максимальных значений На и их номера для каждого столбца 1п, а пах(А, В) найдет результирующую матрицу, состоящую из максимальных значений двух матриц Я и В. Применение команды 5Оп) дает вектор-строку » 5ОП1(А) апз- 3 б 8 Для пустых массивов МАТ1АВ также выведет результат: » 5ОВ(П) апз- 0 и в строках: » мах(А')' апз " 2 б Определение максимальных элементов массива Определение минимальных элементов массива Суммирование элементов массива Суммирование элементов массива с накоплением Произведение элементов массива Произведение элементов массива с накоплением Определение медиан [срединных значений) Определение средних значений массива операции над матрицами 331 » р-аП) апэ- 1 Команда сцп)зрю позволяет провести суммирование, а сцюргоп' — произведение элементов в режиме накопления, когда каждая последующая строка вычисляется как сумма или произведение предыдущих строк соответственно: л сомргоч1А) апэ- О 1 г 0 4 1г Можно также явно указать размерность, по которой проводить суммирование.
Так, накопительное суммирование по строкам обеспечивает операция » соиэыя(А,г) апэ- О 1 3 3 г 13 Сравним результат вычисления средних значений по строкам: » иеап(А')' апэ- 1.0000 4.3333 и операцию вычисления медиан (срединных значений) по строкам; » ееснап1А')' апэ- 1 4 Таблица 13.2. Команды сортировки Имл Назначение эогт(Х,Й) Сортировка по возрастанию (упорядочивание по модулю) элементов массива Х по размерности И Сортировка строк с упорядочиванием по элементам столбца с номером Н Сортировка комплексно-сопряженных пар (упорядочивание по ве)цественной части) с точностью ТОС по размерности н эогтгоиэ(Х,(Ч) ср1 храп г(Х,Т01,)Ч) Сортировку элементов массива по строкам делает команда эогц Если массив составлен из комплексных чисел, то сортировка ведется для абсолютных значений (модулей чисел), В случае их равенства сначала будет выведено число с отрицательной мнимой частью.
Например: » Эпгт(10 1+5«т б 1-6 $]) Команды п)еап и пей ап применяются для анализа данных, см. главу 15 «Численный анализ в МАТ( АВ», а список функций анализаданных можно получить, вызвав справку Ие1р оатасип 332 Глава 13. Матричные вычисления ап5 = 5.0000 1.0000 — 5.0000т 1.0000 ч 5.00001 6.0000 Приведем пример сортировки комплексных пар при помощи команды ср)хратг, которая расставляет пары по величине вещественной части, начиная с меныпих значений. В случае равенства вещественной части, сначала будет выведено число с отрицательной мнимой частью. Затем команда выводит вещественные числа: » ср)хра1Г([-1 4+1 4-т 2 т]) ап5 = Со)Онпз 1 тнгооОП 4 0- 1.00001 О+1 00001 4.0000- 1.00001 4.0000»1.00001 Со)ипп 5 2.0000 Здесь вывод результата потребовал нескольких строк.
Сортировку матрицы по строкам поясняет следующий пример. Зададим матрицу из трех строк: » В=[0 3 2; 4 2 2: 1 3 2] В 0 4 1 Применим команду сортировки строк (по умолчанию сортировка ведется по элементам первого столбца): » зогтг(»Г5(В) апз = 0 1 Теперь укажем, что сортировку следует вести по элементам третьего столбца, а при совпадении элементов использовать второй столбец: » 5огтгоня(В,[3 2]) апз- 4 2 2 0 3 2 1 3 2 Таблица 13.3. функции от матриц Имя Описание Матричная экспонента Квадратный корень из матрицы Логарифм от матрицы Функция от матрицы ехря 5цгти )ова тнпм Достаточно легко найти целую положительную степень матрицы и вычислить полином от матрицы.