- Преподавателю
- Информатика
- Реферат Современные интегрированные математические пакеты MathCad, Mathlab и др
Реферат Современные интегрированные математические пакеты MathCad, Mathlab и др
Раздел | Информатика |
Класс | - |
Тип | Научные работы |
Автор | Курышова С.А. |
Дата | 16.02.2016 |
Формат | docx |
Изображения | Есть |
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО
ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «МОРДОВСКИЙ
ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ ИНСТИТУТ
ИМЕНИ М. Е. ЕВСЕВЬЕВА»
Факультет физико-математический
Кафедра информатики и вычислительной техники
Реферат на тему:
«Современные интегрированные математические пакеты»
Выполнила: С. А. Курышова,
студентка II курса группы МДМ-114
Проверила: кан. физ-мат. наук, доцент
Кормилицына Т.В
Саранск 2016
Введение
Символьная, или, как еще говорят, компьютерная, математика либо компьютерная алгебра, - большой раздел математического моделирования. В принципе, программы такого рода можно отнести к инженерным программам автоматизированного проектирования. В области инженерного проектирования выделяют три основных раздела:
-
CAD - Computer Aided Design (система автоматизированного проектирования);
-
CAM - Computer Aided Manufacturing (автоматизированное проектирование и производство);
-
CAE - Computer Aided Engeneering (системы автоматизации инженерных расчётов).
Сегодня серьезное конструирование, градостроительство и архитектура, электротехника и масса смежных с ними отраслей, а также учебные заведения технической направленности уже не могут обойтись без систем автоматизированного проектирования (САПР), производства и расчетов. Всего каких-нибудь 10 лет назад эти системы считались сугубо профессиональными, но середина 90-х годов стала переломным моментом для мирового рынка CAD/CAM/CAE-систем массового применения. Тогда, впервые за долгое время, пакеты для параметрического моделирования с промышленными возможностями стали доступны пользователям персональных компьютеров. Создатели подобных систем учли требования широкого круга пользователей и таким образом дали возможность десяткам тысяч инженеров и математиков использовать на своих персональных рабочих местах новейшие достижения науки в области технологий CAD/CAM/CAE-систем.
В такой традиционной сфере применения ПК, как математические расчеты, в последние годы наметился огромный прогресс. Появилось большое число интегрированных математических систем как для численных, так и для аналитических (символьных) вычислений. Символьные операции - это как раз то, что кардинально отличает системы символьной математики (или компьютерной алгебры) от систем для выполнения численных расчетов. В последние годы получили развитие специальные программные средства - интегрированные системы символьной математики MathCAD ("MathSoft Inc.", mathsoft.com), MatLAB ("MathWorks", mathworks.com), Maple V ("Waterloo Maple Software", maplesoft.com), Mathematica ("Wolfram Research Inc.", wolfram.com), Axiom ("Numerical Algorithms Group Inc.", nag.com) и др.
Mathematica
Wolfram Mathematica - система компьютерной алгебры, используемая во многих научных, инженерных, математических и компьютерных областях. Изначально система была придумана Стивеном Вольфрамом, в настоящее время разрабатывается компанией Wolfram Research.
Минимальные требования к системе:
-
процессор Pentium II или выше;
-
128 Мбайт оперативной памяти (рекомендуется 256 Мбайт или больше);
Рисунок -Эмблема программы Mathematica400-550 Мбайт дискового пространства;
-
операционные системы: Windows 98/Me/ NT 4.0/2000/2003 Server/2003x64/XP/XP x64.
Компания Wolfram Reseach, Inc., разработавшая систему компьютерной математики Mathematica, по праву считается старейшим и наиболее солидным игроком в этой области. Пакет Mathematica повсеместно применяется при расчетах в современных научных исследованиях и получил широкую известность в научной и образовательной среде. Можно даже сказать, что Mathematica обладает значительной функциональной избыточностью (там, в частности, есть даже возможность для синтеза звука).
Рисунок -Графические возможности MathematicaMathematica - это, с одной стороны, типичная система программирования на базе одного из самых мощных проблемно-ориентированных языков функционального программирования высокого уровня, предназначенная для решения различных задач (в том числе и математических), а с другой - интерактивная система для решения большинства математических задач в диалоговом режиме без традиционного программирования. Таким образом, Mathematica как система программирования имеет все возможности для разработки и создания практически любых управляющих структур, организации ввода-вывода, работы с системными функциями и обслуживания любых периферийных устройств, а с помощью пакетов расширения появляется возможность подстраиваться под запросы любого пользователя.
К недостаткам системы Mathematica следует отнести разве что весьма необычный язык программирования Wolfram Language, обращение к которому, впрочем, облегчает подробная система помощи.
Сферы применения:
-
Программирование, основанное на алгоритмах.
-
Вычисления с использованием данных из реального мира.
-
Сверхвысокоуровневый скриптинг.
-
Высокопроизводительное программирование.
-
Высокоуровневое метапрограммирование.
-
Самодокументирующаяся крупномасштабная разработка.
-
Быстрая разработка концептов.
-
Программирование с акцентом на аналитику и визуализации.
-
Работа с интернетом вещей.
-
Программирование в обучении.
-
Исследования и разработка в программировании.
-
Разработка сразу под несколько платформ.
Ключевые идеи:
-
Максимальное количество встроенных знаний. В отличие от других языков программирования, философия Wolfram Language подразумевает встроить в язык максимальное количество знаний - алгоритмы и фактическую информацию о мире. В язык встроена самая большая база алгоритмов и пригодных для вычислений знаний. Это данные из тысяч различных сфер, которые курируются компанией Wolfram Researh.
-
Максимальная автоматизация. У программиста должна быть возможность сосредоточиться на том, что он хочет получить, а язык должен автоматически объяснять, как этого достичь. Язык содержит тысячи уникальных метаалгоритмов для автоматического выбора исполняемых алгоритмов, автоматизации процессов программирования, презентаций, работы с интерфейсами.
-
Максимальная единообразность дизайна. Элегантная и единообразная структура языка должна обеспечивать совместимость между различными областями языка, предоставлять максимальную гибкость программных конструкций и повышать читабельность, понятность и предсказуемость кода.
-
Представление чего бы то ни было в виде символьных выражений. Представление данных, формул, кода, графики, документов, интерфейсов и прочего в символьном виде, что даёт большую гибкость в написании кода, а инкрементный подход подразумевает, что любой фрагмент кода может быть запущен. Подобный подход подразумевает возможность включить в код любой из перечисленных выше объектов.
-
Содержание встроенной обширной модели мира. Единицы измерения, даты, локации, данные из различных областей представляются с помощью расширемого символьного фреймворка.
-
Использование естественного языка для программирования. Использование технологий, отработанных в Wolfram\|Alpha, позволяют переводить обычную речь на естественном языке в вычисляемый код, что даёт возможность программировать без знания языка.
-
Развёртывание языка где угодно. На локальном компьютере, в облаке, на мобильных устройствах, возможность быть встроенным; язык позволяет создать web API в любой программе, а также встроить язык в программную или аппаратную систему.
-
Вычисляемые документы как часть языка. Использование документов-ноутбуков в CDF формате позволяют сочетать в одном документе исполняемый код, примеры, документации, интерактивные элементы и медиа контент; в базе Wolfram Demonstrations Project можно найти более 10 тысяч примеров.
-
Удобные интерфейсы. Символьные выражения позволяют стандартизировать взаимодействия с внешними данными и программами; также язык поддерживает работу с устройствами реального времени и создание связей через собственное облако Wolfram Cloud.
-
Интегрированный процесс написания и исполнения кода позволяет сразу же тестировать написанные участки кода, визуализировать результаты и проводить аналитику, что позволяет реализовать инкрементное и исследовательское программирование.
-
Создание программ любого размера. Программы на Wolfram Language могут содержать как всего несколько строк, так и несколько миллионов, и их могут разрабатывать как один человек, так и большой коллектив, что обеспечивается заточенной под масштабное программирование средой. К примеру, Mathematica, почти полностью написана на Wolfram Language (лишь небольшая часть кода написана на Си).
-
Максимальная выразительность языка обеспечивается его символьным характером, что позволяет использовать как привычные парадигмы, так и недавно появившиеся.
-
Максимально долгая обратная совместимость. Программы, написанные 25 лет назад, могут быть запущены и в современных версиях системы.
Рисунок -Эмблема программы MaximaMaxima
Maxima - система для работы с символьными и численными выражениями, включающая дифференцирование, интегрирование, разложение в ряд, преобразование Лапласа, обыкновенные дифференциальные уравнения, системы линейных уравнений, многочлены, множества, списки, векторы, матрицы и тензоры. Maxima производит численные расчеты высокой точности, используя точные дроби, целые числа и числа с плавающей точкой произвольной точности. Система позволяет строить графики функций и статистических данных в двух и трех измерениях.
Исходный код Maxima может компилироваться на многих системах, включая Windows, Linux и MacOS X. На SourceForge доступны исходные коды и исполняемые файлы для Windows и Linux.
Maxima - потомок Macsyma, легендарой системы компьютерной алгебры, разработанной в начале 60-х в MIT . Это единственная основанная на Macsyma система, все еще публично доступная и имеющая активное сообщество пользователей благодаря своей открытости. Macsyma произвела в свое время переворот в компьютерной алгебре и оказала влияние на многие другие системы, в числе которых Maple и Mathematica.
Работу над Maxima вел Уильям Шелтер с 1982 года и до своей кончины в 2001 году. В 1998 году он получил разрешение на публикацию исходного кода под лицензией GPL. Выживание Maxima стало возможным только благодаря его усилиям и способностям, мы очень благодарны ему за уделенные проекту время и знания эксперта, которые поддерживали код DOE Macsyma актуальным и качественным. После его кончины была сформирована группа пользователей и разработчиков, ставящая своей целью донести Maxima до широкой аудитории.
Рисунок 5-Эмблема программы MapleMaple
Минимальные требования к системе:
-
процессор Pentium III 650 МГц;
-
128 Мбайт оперативной памяти (рекомендуется 256 Мбайт);
-
400 Мбайт дискового пространства;
-
операционные системы: Windows NT 4 (SP5)/98/ME/2000/2003 Server/XP Pro/XP Home.
Программа Maple- своего рода патриарх в семействе систем символьной математики и до сих пор является одним из лидеров среди универсальных систем символьных вычислений. Она предоставляет пользователю удобную интеллектуальную среду для математических исследований любого уровня и пользуется особой популярностью в научной среде. Отметим, что символьный анализатор программы Maple является наиболее сильной частью этого ПО, поэтому именно он был позаимствован и включен в ряд других CAE-пакетов, таких как MathCad и MatLab.
Maple предоставляет удобную среду для компьютерных экспериментов, в ходе которых пробуются различные подходы к задаче, анализируются частные решения, а при необходимости программирования отбираются требующие особой скорости фрагменты. Пакет позволяет создавать интегрированные среды с участием других систем и универсальных языков программирования высокого уровня. Когда расчеты произведены и требуется оформить результаты, то можно использовать средства этого пакета для визуализации данных и подготовки иллюстраций для публикации. Для завершения работы остается подготовить печатный материал (отчет, статью, книгу) прямо в среде Maple, а затем можно приступать к очередному исследованию. Работа проходит интерактивно - пользователь вводит команды и тут же видит на экране результат их выполнения. При этом пакет Maple совсем не похож на традиционную среду программирования, где требуется жесткая формализация всех переменных и действий с ними. Здесь же автоматически обеспечивается выбор подходящих типов переменных и проверяется корректность выполнения операций, так что в общем случае не требуется описания переменных и строгой формализации записи. Интерфейс Maple основан на концепции рабочего поля или документа, содержащего строки ввода-вывода и текст, а также графику.
Maplesoft продаёт как студенческую, так и академическую и профессиональную версии Maple, с существенной разницей в цене ($124, $1555 и $2845, соответственно). Также доступна версия для персонального использования по цене $299, лицензионное соглашение которой не подразумевает применения системы в коммерческих, научных и учебных целях. Недавние студенческие версии (начиная с шестой) не имели вычислительных ограничений, но поставлялись с меньшим объёмом печатной документации. Так же различаются студенческая и профессиональная версии пакета Mathematica.
MatLab
Рисунок 6-Эмблема программы MatLabMATLAB (сокращение от англ. «Matrix Laboratory», в русском языке произносится как Матла́б) - пакет прикладных программ для решения задач технических вычислений и одноимённый язык программирования, используемый в этом пакете. MATLAB используют более 1 000 000 инженерных и научных работников, он работает на большинстве современных операционных систем, включая Linux,Mac OS, и Microsoft Windows.
Минимальные требования к системе:
-
процессор Pentium III, 4, Xeon, Pentium M; AMD
-
Athlon, Athlon XP, Athlon MP;
-
256 Мбайт оперативной памяти;
-
400 Мбайт дискового пространства
-
(только для самой системы MatLab и ее Help);
-
операционная система Microsoft Windows 2000 (SP3)/XP.
Система MatLab относится к среднему уровню продуктов, предназначенных для символьной математики, но рассчитана на широкое применение в сфере CAE (то есть сильна и в других областях). MatLab - одна из старейших, тщательно проработанных и проверенных временем систем автоматизации математических расчетов, построенная на расширенном представлении и применении матричных операций.
В системе MatLab также существуют широкие возможности для программирования. Ее библиотека C Math (компилятор MatLab) является объектной и содержит свыше 300 процедур обработки данных.
Язык MATLAB является высокоуровневым интерпретируемым языком программирования, включающим основанные на матрицах структуры данных, широкий спектр функций, интегрированную среду разработки, объектно-ориентированные возможности и интерфейсы к программам, написанным на других языках программирования. Программы, написанные на MATLAB, бывают двух типов - функции и скрипты. Функции имеют входные и выходные аргументы, а также собственное рабочее пространство для хранения промежуточных результатов вычислений и переменных. Скрипты же используют общее рабочее пространство. Как скрипты, так и функции сохраняются в виде текстовых файлов и компилируются в машинный код динамически. Существует также возможность сохранять так называемые pre-parsedпрограммы - функции и скрипты, обработанные в вид, удобный для машинного исполнения. В общем случае такие программы выполняются быстрее обычных, особенно если функция содержит команды построения графиков.
Библиотека C Math позволяет пользоваться следующими категориями функций:
-
операции с матрицами;
-
сравнение матриц;
-
решение линейных уравнений;
-
разложение операторов и поиск собственных значений;
-
нахождение обратной матрицы;
-
поиск определителя;
-
вычисление матричного экспоненциала;
-
элементарная математика;
-
функции beta, gamma, erf и эллиптические функции;
-
основы статистики и анализа данных;
-
поиск корней полиномов;
-
фильтрация, свертка;
-
быстрое преобразование Фурье (FFT);
-
интерполяция;
-
операции со строками;
-
операции ввода-вывода файлов и т.д.
Таким образом, систему MatLab можно использовать для обработки изображений, программу MatLab можно использовать для восстановления испорченных изображений, шаблонного распознавания объектов на изображениях или же для разработки каких-либо собственных оригинальных алгоритмов обработки изображений, для создания математических моделей динамических систем, основанных на наблюдаемых входных/выходных данных. А что касается математических вычислений, то MatLab предоставляет доступ к огромному количеству подпрограмм, содержащихся в библиотеке NAG Foundation Library компании Numerical Algorithms Group Ltd (инструментарий имеет сотни функций из различных областей математики, и многие из этих программ были разработаны широко известными в мире специалистами). Это уникальная коллекция реализаций современных численных методов компьютерной математики, созданных за последние три десятка лет. Таким образом, MatLab вобрала и опыт, и правила, и методы математических вычислений, накопленные за тысячи лет развития математики. Одну только прилагаемую к системе обширную документацию вполне можно рассматривать как фундаментальный многотомный электронный справочник по математическому обеспечению.
Из недостатков системы MatLab можно отметить невысокую интегрированность среды (очень много окон, с которыми лучше работать на двух мониторах), не очень внятную справочную систему (а между тем объем фирменной документации достигает почти 5 тыс. страниц, что делает ее трудно обозримой) и специфический редактор кода MatLab-программ. Сегодня система MatLab широко используется в технике, науке и образовании, но все-таки она больше подходит для анализа данных и организации вычислений, нежели для чисто математических выкладок.
Рисунок 7-Эмблема программы MathcadMathCad
Mathcad - система компьютерной алгебры из класса систем автоматизированного проектирования, ориентированная на подготовку интерактивных документов с вычислениями и визуальным сопровождением, отличается лёгкостью использования и применения для коллективной работы.
Минимальные требования к системе:
-
Процессор: 32-битный или 64-битный (x86-64, EM64T) с тактовой частотой 400 МГц или выше (рекомендуется 700 МГц).
-
256 МБ оперативной памяти (рекомендуется 512 Мб).
-
1,75 Гб свободного дискового пространства (350 Мб для Mathcad, 1,4 Гб для временных файлов во время установки).
-
Привод CD-ROM или DVD (только для установки с диска).
-
Графическая карта SVGA или выше.
-
Монитор XGA с разрешением 1024×768 (или выше) c 24-битными (или больше) цветами.
-
Мышь или другое совместимое указывающее устройство.
В отличие от мощного и ориентированного на высокоэффективные вычисления при анализе данных пакета MatLab, программа MathCad- это, скорее, простой, но продвинутый редактор математических текстов с широкими возможностями символьных вычислений и прекрасным интерфейсом. MathCad не имеет языка программирования как такового, а движок символьных вычислений заимствован из пакета Maple. Зато интерфейс программы MathCad очень простой, а возможности визуализации богатые. Все вычисления здесь осуществляются на уровне визуальной записи выражений в общеупотребительной математической форме. Пакет имеет хорошие подсказки, подробную документацию, функцию обучения использованию, целый ряд дополнительных модулей и приличную техническую поддержку производителя. Однако пока математические возможности MathCad в области компьютерной алгебры намного уступают системам Maple, Mathematica, MatLab. Однако по программе MathCad выпущено много книг и обучающих курсов, в том числе у нас в России. Для небольшого объема вычислений MathCad идеален - здесь все можно проделать очень быстро и эффективно, а затем оформить работу в привычном виде. Пакет имеет удобные возможности импорта/экспорта данных. Например, можно работать с электронными таблицами Microsoft Excel прямо внутри MathCad-документа.
В общем, MathCad - это очень простая и удобная программа, которую можно рекомендовать широкому кругу пользователей, в том числе не очень сведущих в математике, а особенно тем, кто только постигает ее азы.
Заключение
Когда-то системы символьной математики были ориентированы исключительно на узкий круг профессионалов и работали на больших компьютерах (мэйнфреймах). Но с появлением ПК эти системы были переработаны под них и доведены до уровня массовых серийных программных систем. Сейчас на рынке сосуществуют системы символьной математики самого разного калибра - от рассчитанной на широкий круг потребителей системы MathCad до компьютерных монстров Mathematica, MatLab и Maple, имеющих тысячи встроенных и библиотечных функций, широкие возможности графической визуализации вычислений и развитые средства для подготовки документации.
Отметим, что практически все эти системы работают не только на персональных компьютерах, оснащенных популярными операционными системами Windows, но и под управлением операционных системы Linux, UNIX, Mac OS, а также на КПК. Они давно знакомы пользователям и широко распространены на всех платформах - от наладонника до суперкомпьютера.
В настоящее время научное программирование претерпевает серьезную трансформацию: развиваются интегрированные среды, основанные на алгоритмических языках, и растет применение универсальных математических систем (Maple, Mathematica, MATLAB, MatCad и др.). Эти системы имеют дружественный интерфейс, реализуют множество стандартных и специальных математических операций, снабжены мощными графическими средствами и обладают собственными языками программирования.[6] Все это предоставляет широкие возможности для эффективной работы специалистов разных профилей, о чем говорит активное применение математических пакетов в научных исследованиях и в преподавании. С помощью этих пакетов проще готовить и выполнять задания, устраивать демонстрации и гораздо быстрее решать исследовательские и инженерные задачи.
Конечным продуктом исследования выступают публикации, подготовка, распространение и использование которых в настоящее время требует квалифицированного применения компьютера. Это касается редактирования текста, изготовления графических материалов, ведения библиографии, размещения электронных версий в Интернет, поиска статей и их просмотра. Де-факто сейчас стандартными системами подготовки научно-технических публикаций являются различные реализации пакета TeX и текстовый редактор Word. Кроме того, необходимы минимальные знания о стандартных форматах файлов, конверторах, программах и утилитах, используемых при подготовке публикаций.
Математические пакеты Maple и MATLAB - интеллектуальные лидеры в своих классах и образцы, определяющие развитие компьютерной математики. Компьютерная алгебра Maple вошла составной частью в ряд современных пакетов, численный анализ от MATLAB и наборы инструментов (Toolboxes) уникальны. Сами пакеты постоянно совершенствуются, развивая аппарат и пополняя ресурсы. Пакет Maple и вычислительная среда MATLAB - мощные и хорошо организованные системы, надежные и простые в работе. Освоение даже части их возможностей даст несомненный эффект, а по мере накопления опыта придет настоящая эффективность от взаимодействия с ними.
В заключение, отметим, что пользователь пакетов компьютерной математики должен иметь представление об основных численных методах. Вообще говоря, появление современных вычислительных систем значительно облегчает доступ к компьютеру непрофессионалам в области программирования, и поддерживает постоянное стремление к их усовершенствованию и освоению новых компьютерных технологий.
Список использованных источников
-
Википедия [Электронный ресурс]: свободная энциклопедия, которую может редактировать каждый. Издается с 15 января 2001 года. - Режим доступа: ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0- Загл. с экрана.
-
Картинки Google [Электронный ресурс]: бесплатные картинки по разным темам. - Режим доступа: google.com/imghp?hl=ru - Загл. с экрана.
-
КомпьютерПресс [Электронный ресурс]: первый в России ежемесячный компьютерный журнал «КомпьютерПресс» издавался с 1989 по 2013 год. - Режим доступа: compress.ru/article.aspx?id=16152 .
-
Pers.narod [Электронный ресурс]: бесплатный обучающий форум. - Режим доступа: pers.narod.ru/study/mathcad/01.html .
-
Таранчук В.Б. Основные функции систем компьютерной алгебры. - Минск: БГУ, 2013.
-
Говорухин, В. Компьютер в математическом исследовании: Maple, MATLAB, LaTeX / В. Говорухин, В. Цибулин. - Спб. : Питер, 2001. - 624 с.
-
Дьяконов В.П. Математическая система Maple V R3/R4/R5. М.: Солон.- 1998.-400 с.
-
Дьяконов В. П. Справочник по применению системы PC MATLAB. М.: Физматлит, 1993. 112 с.
-
Потемкин В. Г. Система MATLAB. Справочное пособие. - М. : ДИАЛОГ-МИФИ, 1997 - 350 с.
-
Потемкин В.Г. MATLAB 5 для студентов. Справочное пособие.М: Диалог-МИФИ, 1998. - 314 с.
-
Воробьев Е.М. Введение в систему "Математика". М: Финансы и статистика, 1998. - 262 с.
-
Дьяконов В.П. Системы символьной математики Mathematica 2 и Mathematica 3. Справочное издание. М.: СК ПРЕСС.- 1998.- 328 c.
-
В.Ф. Очков. MATLAB 7 Pro для студентов и инженеров. М: КомпьютерПресс, 1998. -384 с.
-
Дьяконов В.П. Справочник по MathCAD PLUS 7.0 PRO.М.: CK Пресс, 1998.- 352 c.
-
Половко А.М. Математическая система DERIVE для студентов. «БХВ - Петербург». СПб.,2005.