Реферат: Программа Mathematics

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Борис Манзон

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

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

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

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

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

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

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

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

Интерфейс

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Математические функции

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

<span Arial",«sans-serif»;mso-bidi-font-family: «Times New Roman»">Графика и звук

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

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

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Программирование

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

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

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

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

 •на базе правил преобразования выражений  (rule-based);<span Arial",«sans-serif»; mso-bidi-font-family:«Times New Roman»;mso-no-proof:yes">

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

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

<span Arial",«sans-serif»;mso-bidi-font-family:«Times New Roman»">Стандартныедополнения

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

Алгебра   

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

Вычисления  

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

Дискретная математика

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

Графика  

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

Геометрия   

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

Линейная алгебра  

  В это дополнение входят функции для созданияор­тогональных векторных базисов, решения матричных уравнений, разложенияматриц и выполнения  других операций сматрицами. Оно включает пакетыCholcsky,GaussianElimmatlon, MatrixManipulation, Orthogonalizaltion, Tridiagonal.

Теория чисел  

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

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

Приближенные  вычисления   

  Это дополнение расширяет список встроенныхфунк­ций программыMathematicaдля приближенных числен­ных расчетов. Оно содержитсредства подгонки функци­ями (полиномом, сплайнами, тригонометрическими), численные версии некоторыханалитических функций ядра(ND, NLiunit, NResldue,NSencs),функции числен­ного интегрирования(CauchyPrincipalValue, Listintegrate, IntegrateInterpolationFunction),аппроксимации отноше­ниемполиномов, поддержки численного решения диф­ференциальных уравнений(BesscIZeros, Butcher, Order-Star),а также альтернативный способ нахождения корней (FindRout)с использованием методов интервалов или интерполяции.    В последнюю версию введены пакетыдля численно­гонахождения  вычетов и разложений  комплексных функций.

Статистика

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

Утилиты и разное   

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

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

    В новой версии доступна полная документацияпо стандартным дополнениям в интерактивном режиме.

Профессиональные приложения.

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

  Перечислим только некоторые изпрофессиональных приложений, демонстрирующих их разнообразие: Structural Mechanics, Experimental Data Analyst, TimeSeries, Finance Essentials, Fuzzy logic и т.д.

<span Tms Rmn",«serif»;mso-fareast-font-family:«Times New Roman»; mso-bidi-font-family:«Times New Roman»;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">
еще рефераты
Еще работы по программному обеспечению