Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SKM_02_2015.docx
Скачиваний:
86
Добавлен:
13.02.2018
Размер:
1.33 Mб
Скачать

1. Обзор систем компьютерной математики

Целью данного курса является приобретение практических навыков работы с современными математическими пакетами. Что такое математический пакет? Если коротко – это программный продукт, позволяющий общаться с персональным компьютером на языке математики, а не программирования.

В конце 50-х годов, в связи с решением задач небесной механики (рас-чет траекторий движения), многими исследователями была осознана необходимость автоматизировать длинные математические выкладки, как следствие начали появляться первые компьютерные системы для символьных (аналитических) преобразований на ЭВМ.

Создание подобных компьютерных систем породило новую ветвь математики, которую стали называть компьютерной алгеброй, соответствующие программные продукты получили названия «Системы компьютерной алгебры» (СКА). В данном курсе используется также более широкое понятие – «Системы компьютерной математики» (СКМ).

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

В литературе различают универсальные и специализированные СКМ.

В данном курсе рассматриваются универсальные СКМ.

Под универсальной СКМ понимаются, как правило, программные продукты, позволяющие проводить алгебраические преобразования над объектами достаточно общей, в математическом смысле, природы.

Современные СКМ не ограничиваются простейшими действиями и упрощением выражений.

Возможности, представляемые пользователю современными СКМ охватывают многие разделы алгебры и математического анализа. Во многих системах можно выполнять:

– арифметические операции с целыми (произвольной длины), рациональными, действительными и комплексными числами;

– алгебраические операции с полиномами и рациональными функциями одной или нескольких переменных;

– вычислять наибольший общий делитель полиномов;

– выполнять факторизацию над полем рациональных чисел.

Многие действия математического анализа доступны СКМ:

– дифференцирование, включая нахождение частных производных;

– интегрирование элементарных функций;

– разложение в ряды и многое др.

В СКМ имеются встроенные операции над матрицами с символьными элементами:

– сложение, умножение;

– обращение матриц;

– вычисление определителей;

– решение систем линейных алгебраических уравнений.

Пользователь СКА обладает возможностью:

– управлять процессом упрощения математических выражений;

– выполнять подстановки;

– выделять части формул;

– получать численные значения формул.

Как правило, СКМ предоставляют возможность определять новые (собственные) функции, которые затем используются наравне со встроенными.

Одно из основных отличий СКМ от традиционных систем программирования связано с процессом численного решения уравнений. Обычно значения вычисляются в 2 этапа, в начале вместо входящих в выражения переменных подставляются их значения, а затем вычисляется все выражение.

СКМ же, например, при решении линейных алгебраических уравнений выделит все его точные рациональные и алгебраические решения, даже если коэффициенты уравнения зависят от буквенных параметров, в то время как, самое большее на что можно рассчитывать, используя численные методы – это протабулировать решение уравнения при различных значениях этих параметров.

Важным достоинством СКМ являются развитые 2-х и 3-х мерные графические возможности.

Многие современные СКМ обладают возможностями хороших текстовых редакторов, что позволяет использовать их при подготовке научных публикаций.

Основу СКА составляют глубокие математические результаты из коммутативной алгебры, алгебраической геометрии, математической логики, математического анализа, дифференциальных уравнений, теории алгоритмов и др., однако современные СКМ позволяют использовать весь этот сложный математический аппарат без изучения самих алгоритмов на профессиональном уровне.

Наиболее известными на сегодняшний день среди универсальных СКМ являются MatLab, MathCAD, Maple, Mathematica и Derive.

MATLAB выполняет множество компьютерных задач для поддержки научных и инженерных работ, начиная от сбора и анализа данных до разработки приложений. Среда MATLAB объединяет математические вычисления, визуализацию и мощный технический язык. Встроенные интерфейсы позволяют получить быстрый доступ и извлекать данные из внешних устройств, файлов, внешних баз данных и программ.

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

Основные функции:

– быстрые и точные численные алгоритмы;

– графика для анализа и отображения данных;

– интерактивный язык и среда программирования;

– инструменты для настройки пользовательских интерфейсов;

– интерфейсы с внешними языками, такими как С, С++, Fortran и Java;

– поддержка импорта данных из файлов и внешних устройств плюс доступ к базам данных и вспомогательному оборудованию при помощи приложений;

– преобразование MATLAB приложений в С и С++.

Численные алгоритмы быстрые, точные и надежные. Эти алгоритмы, разработанные экспертами в математике, являются фундаментом языка MATLAB. Математика оптимизирована для матричных и векторных операций, так что она может быть использована вместо языков более низкого уровня, подобных С и С++, при этом получается та же скорость вычислений при значительной экономии времени на программирование.

Mathcad – это многофункциональная интерактивная вычислительная система, позволяющая, благодаря встроенным алгоритмам, решать аналитически и численно большое количество математических задач не прибегая к программированию. Рабочий документ Mathcad – электронная книга с живыми формулами, вычисления в которой производятся автоматически в том порядке, в котором записаны выражения. Отличается простым и удобным интерфейсом, написанием выражений стандартными математическими символами, хорошей двух- и трехмерной графикой, возможностью подключения к распространенным офисным и конструкторским программам, а также к Internet.

Программа Mathcad сочетает в себе набор мощных инструментов для технических расчетов с полиграфическим качеством написания формул и гибкий, полнофункциональный текстовый редактор. С помощью эффективной среды решения задач программы Mathcad можно выполнять работу и демонстрировать результаты в одном и том же документе – на рабочей страннице Mathcad. В отличие от другого технического программного обеспечения Mathcad осуществляет математические расчеты в той же последовательности в которой Вы их записываете. Вводятся уравнения, данные для построения графика функции и текстовые примечания в любом месте страницы, при этом математические выражения в Mathcad записываются в полиграфическом формате. Единственная разница с обычным текстом, включающим математические формулы и графики состоит в том, что Mathcad уравнения и графики – «живые». Изменение значений переменных, данных графика или уравнений приведет к немедленному перевычислению рабочей страницы.

Maple – это мощная вычислительная система, предназначенная для выполнения сложных вычислительных проектов как аналитическими так и численными методами. Maple содержит проверенные, надежные и эффективные символьные и численные алгоритмы для решения огромного спектра математических задач, включая широко известные библиотечные численные алгоритмы компании NAG (Numeric Algorithm Groop). Maple умеет выполнять сложные алгебраические преобразования и упрощения над полем комплексных чисел, находить конечные и бесконечные суммы, произведения, пределы и интегралы, решать в символьном виде и численно алгебраические (в том числе трансцендентные) системы уравнений и неравенств, находить все корни многочленов, решать аналитически и численно системы обыкновенных дифференциальных уравнений и уравнений в частных производных. В Maple включены пакеты подпрограмм для решения задач линейной и тензорной алгебры, Евклидовой и аналитической геометрии, теории чисел, теории вероятностей и математической статистики, комбинаторики, теории групп, интегральных преобразований, численной аппроксимации и линейной оптимизации (симплекс метод) а также задач финансовой математики и многих, многих других задач.

Maple обладает также развитым языком программирования. Это дает возможность пользователю самостоятельно создавать команды и приложе- ния и таким образом расширять возможности Maple для решения специальных задач.

Для технических применений в Maple включены справочники физических констант и единицы физических величин с автоматическим пересчетом формул. Хороший текстовый редактор, полиграфическое качество формул и превосходная двух- и трехмерная графика позволяют профессионально оформить выполненную работу и сохранить ее либо в виде электронного документа (HTML) для опубликования в Интернет либо стандартного текстового документа (rtf).

Mathematica является одной из универсальных математических систем, которая дает возможность решать большое количество весьма сложных задач не вдаваясь в сложности программирования. В ряду себе подобных Mathematica является одной из самых мощных и детально разработанных. С ее помощью легко осуществляются численные и символьные вычисления. Сильной стороной системы, выгодно отличающей ее от остальных, является двух и трехмерная графика, применяемая для визуализации кривых и поверхностей в трехмерном пространстве.

В среде Mathematica содержится язык программирования современного высокого уровня с более емким и естественным функциональным стилем и стилем правил преобразований.

Система интерактивна (то есть работает в режиме постоянного диалога с пользователем). Она гибка и универсальна в том смысле, что может быть использована всеми желающими, как студентами, так и профессионалами математиками и другими специалистами, работа которых связана с математикой.

DERIVE – самая маленькая из систем компьютерной алгебры. Последняя версия Derive под MS-DOS может работать на «древних» ПК даже без жесткого диска, целиком помещаясь на загрузочной дискете. При этом система имеет многооконный интерфейс и управляется простой системой меню. Derive тщательно опробованная, надежная и быстрая система. Ядро Derive cодержит около 1000 функций и 23 тысячи строк программного кода. Удивительная компактность ядра связана с использованием языка программирования экспертных систем LISP.

Derive является универсальной математической системой, ориентированной на решение широкого круга математических и научно-технических задач. Современные версии Derive – это расширяемые системы, способные легко адаптироваться под решение специальных задач. Они поставляются с развитой библиотекой функций, существенно расширяющей возможности системы. Derive позволяет готовить расширения и записывать их в виде файлов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]