Главная              Рефераты - Информатика

программа Mathematics - реферат

Борис Манзон

Едва исчезли со страниц журналов восторженные от­зывы на новую версию математического пакета Maple V 4.0 компании Maple Waterloo, как компания Wolfram Research представила не менее интересный продукт — Mathematica 3.0.

Немного истории для тех, кто недостаточно хорошо знаком с этой программой.

Она разработана компанией Wolfram Research Inc , ос­нованной известным математиком и физиком Стефаном Вольфрамом, одним из создателей теории сложных систем. Первая версия программы, появившаяся в 1988 г, стала но­вым словом в автоматизации математических расчетов.

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

За основу был взят специально разработанный язык символьного программирования, который способен опе­рировать очень широким спектром различных объектов с применением небольшого числа базисных конструкций. ^ ^Однако программа не приобрела большой популярнос­ти из-за того, что ее сложно было освоить и невозможно работать без использования объемной документации. Только в 1991 г., после выхода в свет второй версии, в кото­рой разработчики устранили многие ошибки предыдущей версии, а также применили более дружелюбный интерфейс и включили подсказки по встроенным функциям, про­грамма начала быстро завоевывать популярность. А к мо­менту выхода Mathematica 3.0 уже было зарегистрировано более миллиона постоянных пользователей программы.

Mathematicа дает возможность специалистам решать большое количество достаточно сложных задач, не вдаваясь в тонкости программирования. Благодаря этому про­грамма получила широкое распространение в таких областях, как физика, биология, экономика. Программа так­же применяется как для выполнения, так и для оформления инженерных проектов.

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

Программа Mathematica наряду с программами Maple, MatLab и MathCad применяется в качестве базис­ной для построения курса математики во многих высших как технических, так и гуманитарных учебных заведени­ях Несколько периодических икании и более двухсот книг посвящено этой программе.

Интерфейс

Программа состоит из двух частей — ядра, которое, собственно, и производит вычисления, выполняя заданные команды, и интерфейсного процессора, который определяет внешнее оформление и характер взаимодействия с пользователем и системой. Основной рабочий документ программы — тетрадь, в которой поль­зователь записывает все выкладки. Вид рабочей тетради на экране монитора зависит от интерфейсного процес­сора, реализация которого для разных платформ не­сколько отличается.

Пользовательский интерфейс программы Mathemati­ca 3.0 сначала кажется несколько примитивным: инстру­ментальная панель — это просто строка меню, а отдельное окно документа выглядит как бы подвешенным . Кроме того, на инструментальной панели отсут­ствуют кнопки для выполнения часто повторяемых опе­раций, которые были в предыдущей версии.

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

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

Программа дает возможность отображать математи­ческие символы с достаточно высоким полиграфическим качеством в тексте на экране, в командах, а также при вы­воде на печать . Увеличено количество опций. Возможно создание гипертекстовых связей.

Рабочую тетрадь можно сохранять в HTML-формате, а также в формате полиграфического языка LaTex и неко­торых других.

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

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

Аналитические расчеты

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

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

Расширен спектр математических выражений, для ко­торых аналитически находятся неопределенные и опреде­ленные интегралы. Появилась также возможность задавать область изменения параметров в подынтегральных выра­жениях, что позволяет интегрировать многие выражения, которые в общем случае не имеют первообразной.

Значительно возросло число различных (конечных и бесконечных) сумм и произведений, вычисляемых ана­литически, а также аналитически решаемых обыкновен­ных дифференциальных уравнений и уравнений в част­ных производных .

Из числа других улучшений можно выделить повы­шение скорости решения задач линейной алгебры.


Численные методы

Для тех задач, которые невозможно решить аналити­чески, Mathematica 3.0 предлагает большое количество эффективных алгоритмов для проведения численных расчетов. Она позволяет находить конечные и бесконеч­ные суммы и произведения, вычислять интегралы, решать алгебраические и дифференциальные уравнения и системы, задачи оптимизации (линейного программиро­вания, нахождения экстремумов функций), а также зада­чи математической статистики. При численном решении математических задач на­ряду с правильностью алгоритмов расчета особую роль играет точность вычислений. В Mathematica 3.0 реализо­ван адаптивный контроль точности, основанный на вы­боре внутренних алгоритмов, позволяющих ее максими­зировать. В этой версии программы повышена эффективность одно и многомерной интерполяции, оптимизированы алгоритмы численного решения дифференци­альных уравнений Добавлены многократное численное интегрирование) а также численное дифференцирование Оптимизированы алгоритмы нахождения экстремумов Поддерживается арифметика интервалов (рис 6)

Осуществлен независимый от конкретной компьютернои платформы механизм ввода и вывода числовых данных без потери точности.

Математические функции

Мathernatica 3.0 позволяет включать в расчеты все известные элементарные функции, а также сотни специ­альных встроенных функций . Разумеется, пользователь программы может вводить и свои функции как для применения в течение одного сеанса работы так и для постоянного использования. В новой версии 3.0 добавлены интегралы Френеля ин тегральные гиперболические синус и косинус, обратная функция ошибок, гаммa и бета функции, дополнительная функция Вейерштрасса, эллиптические и родственные с ними функции, функции Матье .Введены числа и полиномы Фибоначчи .

Графика и звук

Mathernatica позволяет строить двух и трехмерные графики различных типов в виде точек и линии на плоскости, поверхностей, а также контурные, градиентные (dencity plot), параметрические. Имеется большое коли­чество опций оформления и настройки, например изме­нение подсветки, цвета, размеров и точки наблюдения . Mathematica выполняет построение графика в три эта­па. На первом создается множество графических прими­тивов, на втором они преобразуются в независимое от вы­числительной платформы описание на языке PostScript, а на третьем это описание переводится в графический фор­мат для той системы, на которой установлена Mathematiса. Если первые два этапа осуществляет ядро программы, то последний — интерфейсный процессор. Mathematica позволяет также строить серии карти­нок, которые могут быть воспроизведены как анимация. Программа содержит функции, позволяющие создавать и воспроизводить различные звуки, а также воспринимает и может анализировать некоторые типы стандартных звуковых файлов.

По­сле выполнения команды в рабочей тетради появляется картинка, представляющая собой график синусоид, вхо­дящих в аргумент команды, а звуковой файл (так же как и файл анимации) запоминается в документе. Это позво­ляет сразу после открытия документа воспроизвести их без повторного вычисления. В новой версии 3.0 программы заметно улучшено текстовое оформление графиков. Теперь заголовки и текст ме­ток на графиках могут быть представлены с достаточно вы­соким полиграфическим качеством (правильное изобра­жение матсматических символов). Возможно также вклю­чение в сам график форматированных текстовых строк. Ячейки рабочего документа теперь автоматически конвертируются в EPS, TIFF, GIF и другие графические форматы.

Программирование

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

• основанный на операциях со списками , этот метод использует особенности универсального объекта программы — списка выражений, с которыми можно производить математические операции, как с алгебра­ическими выражениями, при этом заданные операции выполняются всеми элементами списка,

• основанный на операциях над строками (string-based),

• функциональною программирования (functional programming), позволяющий создавать сложные функции и последовательности вложенных функций;

• на базе правил преобразования выражений (rule-based);

• объектно-ориентированный (object-oriented) .

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

Стандартные дополнения

Mathematica 3.0 содержит 11 стандартных дополне­ний, включающих подпрограммы (пакеты), значительно расширяющие функциональные возможности в таких областях, как алгебра, аналитические и численныс расче-гы, графика, дискретная математика, теория чисел и ста­тистика. Стандартные дополнения могут загружаться по мере надобности. Для загрузки пакета используется соот­ветствующее название, включающее имя дополнения и имя пакета из данного дополнения. Рассмотрим подроб­нее стандартные дополнения.

Алгебра

В это дополнение входят пакеты, позволяющие задавать различные алгебраические поля и оперировать в них, а так­же несколько