Примеры решения научно-технических задач

  • Выше при изложении данного учебного курса приводились многие сотни примеров применения системы Maple 7. При этом намеренно подбирались достаточно простые примеры, занимающие немного места и не требующие чрезмерных ухищрений для решения.
  • Задание исходной функции и построение ее графика Трудно представить себе область более широкую и читаемую, чем аппроксимация различных функциональных зависимостей. С получения простой аппроксимации сложной зависимости нередко начинаются (а часто и заканчиваются) научные исследования во многих областях как прикладной, так и фундаментальной науки
  • Аппроксимации рядом Тейлора Начнем с аппроксимации функции хорошо известным рядом Тейлора степени 8 относительно середины интервала
  • Паде-аппроксимация Теперь опробуем рациональную аппроксимацию Паде (Fade) функции f(x) степени (4,4). Приближения по этому разложению будут аппроксимировать функцию более точно, и потому ошибки округления в вычислениях станут более заметными. Поэтому зададим еще два дополнительных знака для точности вычислений.
  • Аппроксимация полиномами Чебышева Знатоки техники аппроксимации знают, что лучшие приближения на заданном интервале могут быть получены при использовании разложения в ряд Чебышева. Это связано с тем, что ортогональные полиномы Чебышева позволяют получить аппроксимацию, погрешность которой в заданном диапазоне изменения аргумента распределена более равномерно, чем в предшествующих случаях.
  • Аппроксимация Чебышева-Паде Теперь рассмотрим еще более точную рациональную аппроксимацию Чебышева-Паде. Это такая рациональная функция r[m, n](х) с числителем степени т и знаменателем степени п такой же, как и для разложения в ряд Чебышева. Функция r [m, n](х) согласуется с разложением в ряд Чебышева f(x) членом степени m+n.
  • Минимаксная аппроксимация Классический результат теории аппроксимации заключается в том, что минимакс как наилучшая аппроксимация рациональной функции степени (т, п) достигается, когда кривая ошибки имеет m+n+2 равных по величине колебаний.
  • Эффективная оценка рациональных функций Полиномы числителя и знаменателя в минимаксной аппроксимации уже выражены в форме Горнера (то есть в форме вложенного умножения).
  • Сравнение времен вычислений Теперь определим время, необходимое для вычисления функции/(л:) в 1000 точек, используя первоначальное интегральное определение, и сравним его с временем, требующимся для схемы MinimaxApprox в виде непрерывной дроби.
  • Преобразование в код Фортрана или С Один из поводов разработки эффективной аппроксимации для вычисления математической функции заключается в создании библиотек подпрограмм для популярных языков программирования высокого уровня, таких как Фортран или С.
  • Моделирование физических явлений Итак, пусть подвернувшиеся под руку камни с массой 500 и 100 г брошены под углом 45° к горизонту со скоростью Vo = 20 м/с. Найдем их баллистические траектории, если сила сопротивления воздуха Fтр=А*V, где А=0,1 Н*с/м. Сравним их с траекториями, получающимися без учета сопротивления воздуха.
  • Движение частицы в магнитном поле От реального мира перейдем к микромиру. Пусть микрочастица массой 9* 10-31 кг и зарядом +1,6*10"19 Кл влетает в магнитное поле с индукцией В = 0,1 Тл под углом а=80°. Рассчитаем траекторию движения частицы при начальной скорости Vo= 1*107м/с:
  • Разделение изотопов Рассмотрим еще одну классическую задачу ядерной физики — разделение изотопов (атомов с одинаковым зарядом ядра, но разной массой). Для этого используют различные способы. В частности, это может быть масс-спектроскопический метод.
  • Моделирование рассеивания альфа-частиц Одним из фундаментальных доказательств существования ядра у атомов стал опыт с бомбардировкой тонкой фольги из металла альфа- частицами с высокой энергией.
  • Нужно ли применять Maple для моделирования и расчета электронных схем?. Нужно ли применять системы компьютерной математики для анализа, расчета и моделирования электронных схем? Ответ на этот вопрос не так прост, как кажется с первого взгляда. С одной стороны, к услугам пользователя компьютера сейчас имеется ряд программ схемотехнического моделирования, например Micro-CAP, Electronics Workbench, PSpice, Design Labs и др
  • Малосигнальный анализ усилителя на полевом транзисторе Рассмотрим классический усилительный каскад на полевом транзисторе, схема которого приведена
  • Расчет аналогового фильтра на операционном усилителе Теперь рассмотрим проектирование аналогового полосового фильтра на операционном усилителе
  • Проектирование цифрового фильтра Основной недостаток аналоговых активных фильтров, подобных описанному выше, заключается в их малом порядке. Его повышение за счет применения многих звеньев низкого порядка ведет к значительному повышению габаритов фильтров и их стоимости.
  • Моделирование цепи на туннельном диоде А теперь займемся моделированием явно нелинейной цепи. Выполним его для цепи, которая состоит из последовательно включенных источника напряжения Es, резистора Rs, индуктивности L и туннельного диода, имеющего N-образную вольтамперную характеристику (ВАХ). Туннельный диод обладает емкостью С, что имитируется конденсатором С, подключенным параллельно туннельному диоду.
  • Применение интеграла Дюамеля для расчета переходных процессов Вернемся к линейным цепям и рассмотрим еще один полезный метод расчета электрических цепей — с помощью интеграла Дюамеля. При нем можно рассчитать временную зависимость выходного напряжения u2(t) цепи по известному входному сигналу ul(t) и переходной характеристике цепи a(t)
  • Основные определения линейной алгебры Прежде чем перейти к рассмотрению обширных возможностей пакетов Maple 7 по части решения задач линейной алгебры, рассмотрим краткие определения, относящиеся к ней.
  • Пакет решения задач линейной алгебры linatg Несомненно, что уникальной возможностью системы Maple 7, как и других систем компьютерной алгебры, является возможность решения задач линейной алгебры в символьном (формульном, аналитическом) виде.
  • Интерактивный ввод матриц Для интерактивного ввода матриц можно, определив размерность некоторого массива, использовать функцию entermatrix
  • Основные функции для задания векторов и матриц В библиотечном файле Unalg имеются следующие функции для задания векторов и матриц
  • Функции для работы, с векторами и матрицами Для работы с векторами и матрицами Maple 7 имеет множество функций, входящих в пакет linalg. Ограничимся приведением краткого описания наиболее распространенных функций этой категории
  • Решение систем линейных уравнений. Ниже представлен простой пример составления и решения трех систем линейных уравнений с применением функций, входящих в пакет linalg
  • Пакет линейной алгебры с алгоритмами NAG LinearAlgebra В последние годы разработчики систем символьной математики осознали, что малая скорость выполнения векторных и матричных операций при решении задач линейной алгебры оборачивается потерей заметной части рынка систем компьютерной математики.
  • Примеры матричных операций с применением пакета LinearAlgebra Применение алгоритмов NAG особенно эффективно в том случае, когда используется встроенная в современные микропроцессоры арифметика чисел с плавающей запятой.
  • Интеграция Maple 7 с MATLAB Несмотря на обширные средства линейной алгебры (да и многие другие), имеющиеся у системы Maple 7, есть системы компьютерной математики, решающие некоторые классы задач более эффективно, и прежде всего быстрее
  • Загрузка пакета расширения Matlab Как нетрудно заметить, данный пакет дает доступ всего к 18 функциям системы MATLAB  (из многих сотен, имеющихся только в ядре последней системы).
  • Типовые матричные операции пакета расширения Matlab Большинство функций пакета Matlab (не путайте с системой MATLAB, имя которой надо записывать прописными буквами) реализуют самые обычные матричные операции, что и иллюстрируют приведенные ниже примеры.
  • Выделение сигнала на фоне шумов Среди небольшого числа доступных функций системы MATLAB в пакете Matlab нельзя не выделить особо функции быстрого прямого и обратного преобразований Фурье.
  • Пакет анализа линейных функциональных систем LinearFunctionalSystems содержит набор функций для решения задач, связанных с анализом линейных функциональных систем.
  • Тестовые функции пакета LinearFunctionalSystems Прежде чем рассматривать основные функции пакета, рассмотрим две тестовые функции. Они представлены следующими формами записи:
  • Функции решения линейных функциональных систем Система функциональных уравнений задается либо в виде полной системы sys со списком переменных vars, либо в матричном виде с заданием матриц  коэффициентов, системы А и вектора свободных членов b (может отсутствовать) с указанием независимой переменной х и параметра case, имеющего значения 'differential', 'difference' или 'qdifference'.
  • Вспомогательные функции MatrixTriangularization(mat, m, n, x, It) — триангуляция матрицы mat размера mxn с указанием типа It ('lead' или 'trail');
  • Примеры применения пакета LinearFunctiftnalSystems Множество дополнительных примеров на анализ и решение линейных функциональных систем можно найти в справке по функциям данного пакета.

Обзор пакетов специального назначения

  • Пакет решения задач линейной оптимизации simplex Задачи линейной оптимизации важны как в фундаментальных, так и в прикладных приложениях математики. В пакете simplex имеется небольшой, но достаточно представительный набор функций и определений для решения таких задач
  • Функции maximize и minimize Главными из этих функций являются maximize и minimize, оптимизирующие задачу симплекс-методом. Они записываются в следующих формах:
  • Прочие функции пакета simplex. Функция basis(C) возвращает базис для системы линейных уравнений С
  • Пакет планиметрии geometry Пакет геометрических расчетов geometry в системе Maple 7 получил как бы второе рождение  число его функций по сравнению с версией этого пакета в системе Maple V R5 возросло в несколько раз.
  • Пример применения расчетных функций пакета geometry К сожалению, описание всех функций этого пакета потребует привести справочные данные практически по всей геометрии на плоскости, объем которых намного превышает объем данной книги.
  • Визуализация геометрических объектов с помощью пакета geometry Одно из важных достоинств пакета geometry - возможность наглядной визуализации различных геометрических понятий, например графической иллюстрации доказательства теорем или геометрических преобразований на плоскости.
  • Набор функций пакета geom3d Помимо существенного расширения пакета geometry в систему Maple 7 введен новый геометрический пакет geonfld. Он предназначен для решения задач в области трехмерной геометрии.
  • Пример применения пакета geom3d Напоминаем, что цель пакета не в построении рисунков геометрических фигур, а в аналитическом представлении объектов в пространстве. Поэтому в обширной базе данных справочной системы по этому пакету вы встретите очень много рисунков.
  • Пакет для работы с алгебраическими кривыми algcurves Пакет для работы с алгебраическими кривыми прекрасно дополняет возможности геометрических пакетов. При обращении к нему он дает доступ к полутора десяткам функций
  • Примеры применения пакета algcurves
  • Построение алгебраических кривых класса knot Функция plot_knot позволяет строить одну или несколько алгебраических кривых — узлов.
  • Новая функция Maple 7 plot_real_curve В пакет расширения algcurves добавлена новая функция импликативной графики plot_real_curve. Она строит алгебраическую кривую для действительной части полиномиального выражения и записывается в виде
  • Пакет функций теории графов networks Графы широко используются при решении многих прикладных и фундаментальных задач. Пользователей, занятых решением таких задач, наверняка порадует пакет networks, содержащий весьма представительный набор функций
  • Примеры применения пакета networks Рассмотрим некоторые избранные функции этого пакета, которые наиболее часто используются при работе с графами. Детали синтаксиса функций можно найти в справочной базе данных Maple 7.
  • Получение информации о графе Еще один пример, приведенный ниже, иллюстрирует работу функции show, выдающей таблицу с полной информацией о графе, созданном функцией complete:
  • Пакет статистических расчетов stats Мир математических систем сейчас насыщен статистическими системами, например такими, как Statistica или StatGraphics. Они прекрасно приспособлены для решения задач статистической обработки обширных массивов данных.
  • Генерация случайных чисел с заданным распределением Возможно задание дискретных и непрерьвных распределений, например binomiald --дискретное биномиальное распределение, discreteumform — дискретное 'равномерное распределение, empirical — дискретное эмпирическое распределение, poisson — дискретное распределение Пуассона, beta — бета-распределение, cauchi — .распределение Коши, exponential — экспоненциальное и др.
  • Графика статистического пакета stats Вид графика задается описанием function: boxplot, histogram, notehedbox, quantile, quantile2, scatterld, scatter2d и symmetry. Данные функции обеспечивают построение типовых графиков, иллюстрирующих статистические расчеты.
  • Регрессионный анализ Под регрессионным анализом (или просто регрессией) обычно подразумевают нахождение некоторой формальной аналитической зависимости, которая приближенно (по критерию минимума среднеквадратической ошибки) аппроксимирует исходную зависимость.
  • Пакет для студентов student Пакет student — это, несомненно, один из пакетов, наиболее привлекательных для студентов и аспирантов. В нем собраны наиболее распространенные и нужные функции, которые студенты университетов и иных вузов обычно используют на практических занятиях, при подготовке курсовых и дипломных проектов.
  • Функции интегрирования пакета student. В пакетах Maple 7 можно найти множество специальных функций для вычисления интегралов различного типа. Например, в пакете student имеются следующие функции
  • Иллюстративная графика пакета student В этих функциях прямоугольники строятся соответственно слева, справа и по середине относительно узловых точек функции f(x), график которой также строится
  • Пакет работы с тензорами tensor Этот пакет впервые появился в реализации Maple V R5. Он дает средства для работы с тензорами и вычислениями, используемыми в общей теории относительности. В нем использован специальный тип данных tensor_type в виде таблиц с двумя полями: компонентов и характеристик индексов
  • Пакет Domains. Этот небольшой пакет служит для создания доменов — таблиц операций для вычислений. При его загрузке появляется сообщение о переопределениях объектов и список из всего лишь шести функций:
  • Обзор пакетов узкого назначения Учитывая это, мы вынуждены отказаться от попытки описать ряд пакетов специального назначения. Такими пакетами интересуются серьезные специалисты в области математики и им (не без труда, разумеется) под силу разобраться с назначением функций таких пакетов и примерами их применения, приведенными в справочной системе Maple
  • Пакет функций теории чисел numtheory В новой реализации Maple 7 число функций было уменьшено. Большинство функций этого пакета достаточно просты и заинтересовавшийся читатель вполне в состоянии провести их тестирование самостоятельно.
  • Пакет для работы с р-адическими числами padic В Maple 7 число функций этого пакета увеличено почти в четыре раза. Однако ввиду специфичности данных функций их изучение мы оставляем за читателем для самостоятельной работы.
  • Пакет для работы с гауссовыми целыми числами Gausslnt Гауссово целое число — это число вида а + I*b, где а и b — любые целые рациональные числа. Таким образом, они образуют решетку всех точек с целыми координатами на плоскости комплексных чисел.
  • Пакет алгебры линейных операторов Ore_algebra Пакет Ore_algebra содержит набор функций алгебры линейных операторов, состав которого виден после обращения к пакету
  • Инструментальный пакет для линейных рекуррентных уравнений LREtools Этот пакет полезен математикам, часто использующим рекуррентные отношения и формулы. Он дополняет функцию rsolve основной библиотеки и содержит следующие функции
  • Пакет функций дифференциальных форм difforms
  • Пакет для работы с рациональными производящими функциями genfunc Эти функции представляют специальный интерес для пользователей, работающих в области теории чисел и рациональных функций.
  • Пакет операций для работы с конечными группами group Функции этого пакета представляют интерес для математиков, работающих в области конечных групп. Но вряд ли они будут полезны большинству пользователей. Тем не менее, наличие таких функций говорит о полноте функциональных возможностей системы Maple
  • Пакет для работы с симметрией Ли liesymm В этом пакете, являющемся реализацией алгоритма Харрисона-Эстабрука
  • Пакет команд для решения уравнений SolveTools Пакет команд с весьма многообещающим названием SolveTools на самом деле содержит вовсе не средства для решения уравнений, а несколько весьма специфических функций
  • Пакет для работы с таблицами Spread. Функции пакета не имеют самостоятельного значения и призвана поддерживать работу с электронными таблицами, которая уже была подробно описана.
  • Пакет генерации кодов codegen Пакет codegen представляет собой набор команд, предназначенных для организации взаимодействия системы Maple 7 с другими программными средствами
  • Пакет создания контекстных меню context Этот пакет используется довольно редко и в основном пользователями, решающими в среде Maple не вычислительные, а системные задачи
  • Пакет организации многопроцессорной работы process Этот узкоспециализированный пакет содержит ряд функций по организации работы на нескольких процессорах
  • Пакет поддержки вычислений с размерными величинами Units При выполнении большинства вычислений рекомендуется использовать безразмерные величины. Однако в некоторых областях науки и техники, например в физике, широко используются размерные величины, у которых помимо их значения указываются единицы измерения.
  • Пакет для работы с рядами ортогональных многочленов OrthogonalSeries. Новый пакет для работы с рядами ортогональных многочленов OrthogonalSeries имеет довольно представительный набор функций
  • Пакет поддержки стандарта MathML Для представления математической информации на страницах Интернета в последние годы был создан специальный язык MathML.
  • Пакет XMLTools В Maple 7 резко расширены средства интеграции с Интернетом. Это сделано не только на уровне специфических для математических приложений средств, таких как рассмотренный выше пакет MathML, но и на уровне обычных языков сети, таких как HTML и XML.
  • Пакет создания внешних программ ExternatCaUing служит для создания внешних программ, записанных на языке Maple (или C++). Состав пакета представлен небольшим числом функций
  • Пакет линейных операторов LinearOperators новый пакет, содержащий средства для работы с линейными операторами.
  • Пакет для работы со случайными объектами RandomTools Пакет для работы со случайными объектами RandomTools служит для расширения базовых возможностей системы Maple 7 (для большинства пользователей и так вполне достаточных) в части генерации различных случайных объектов, таких как числа различных форматов, векторов, матриц, строковых символов, таблиц и т. д.
  • Пакет для работы со списками ListTools содержит ряд полезных команд для работы со списками.
Пределы Интегралы Вычисление двойного интеграла Изменить порядок интегрирования Объектно-ориентированное программирование Архитектура приложений баз данных Примеры скриптов Высшая математика