Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Анализ пакетов.docx
Скачиваний:
37
Добавлен:
25.03.2016
Размер:
1.47 Mб
Скачать
  1. Достоинства и недостатки

    1. Mathcad

Достоинства

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

  • Расположение кода численных методов рядом с их результатами, форматированными комментариями, аналитическими выкладками и т.п. (это способствует лучшему усвоению материала)

  • Имеется большой задел по написанию учебных документов на MathCAD.

Недостатки

  • Трудоемкость написания сложных программ в MathCAD «с нуля» (людям, умеющим программировать, проще делать сложные задачи в любом другом пакете, хотя для простых задач MathCAD «экономичнее»).

  • Затруднительность отладки программ в MathCAD.

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

    1. Excel

Достоинства

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

  • Программа в табличном процессоре оперирует понятиями пространства и отношений, так как создается путём задания взаимосвязи ячеек, расположенных в пространстве листа. Такой подход использует интуитивные представления человека о пространстве и связи явлений. Обычное программирование требует написания последовательности строк текста, которые требуют внимательного прочтения для понимания работы программы.

  • В отличие от обычного программирования, требующего строгой последовательности команд для работы программы, табличные процессоры “прощают” ошибки и незаконченность структуры. Какие-то части программы в электронной таблице могут работать, в то время, как другие части могут быть ещё не закончены, что значительно упрощает разработку и отладку программ, что особенно важно на стадии создания алгоритма.

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

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

  • Весь процесс вычисления осуществляется в виде таблиц, поэтому все результаты и промежуточные данные так или иначе представлены в виде таблицы, которая сама по себе представляет ценность, если в результате расчета необходимо сформировать таблицу. Таким образом данные не требуют дополнительной обработки при “публикации” результатов.

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

Описать одним основным принципом:

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

Недостатки

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

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

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

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

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

  • Недостаток контроля за исправлениями повышает риск ошибок, возникающих из-за невозможности отследить, протестировать и изолировать изменения. Сложно выяснить какие изменения, кем и когда были внесены в программу.

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

  • Ячейки могут одновременно хранить только одно значение. Несмотря на то, что формулы в ячейках могут обращаться ко множеству других ячеек, они могут иметь только одно выходное значение, записываемое в ячейку. Это означает, что при повторении однообразных вычислений на множестве ячеек, одна и та же формула (с точностью до адреса ячейки входных данных) должна быть размножена отдельно для каждой из входных ячеек. Изменения формулы для работы с данными требуют изменения всех ячеек для всех исходных данных, что в совокупности с вышеописанными недостатками неизбежно приводит к появлению ошибок.

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

Основная характерная черта:

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

    1. Mathematica

Достоинства

  • Mathematica делает проще разработку и развертывание пользовательских интерфейсов.

  • Выполнение арифметических действий в символьном виде, то есть так, как это делает человек.

  • «Живая» архитектура вычислений (при изменении значения переменной математическое выражение, в котором она используется, автоматически пересчитывается).

  • Совершать алгебраические и логические операции. 

  • Не надо придерживаться одного стиля программирования.

Недостатки

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

  • Имеется свой специализированный язык записи операторов и программирования.

    1. MatLab

Достоинства

  • Большинство экспертов признают, что среди 4 самых распространенных пакетов для вычислительных задач лучше всего подходит MATLAB.

  • MATLAB – самый распространенный пакет в практических приложениях, в т.ч. среди ученых, занимающихся мат. моделированием.

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

  • MATLAB имеет богатые возможности настройки разнообразных графиков.

  • На MATLABе можно достаточно легко генерировать свой графический интерфейс, что делает его похожим на обычную (привычную пользователям) программу

  • Версии MATLAB существуют под несколько платформ, поэтому практикум на основе этого пакета может быть использован под Linux.

Недостатки

  • Поиск показал отсутствие серьезных русскоязычных методических разработок по применению MATLAB именно к вычислительной математике. Это, видимо, связано с тем, что MATLAB сложнее (чем MathCAD) для «рядового преподавателя», поэтому некому делать такие разработки.

  • Первое знакомство с MATLABом происходит очень долго – вследствие его Unix-подобной ориентации на интерфейс командной строки.

    1. MathConnex

Достоинства

  • Интеграция с другими математическими и графическими системами.

  • Средство особенно полезно, если необходимо блочное представление и описание сложной системы, работу которой необходимо имитировать.

  • Система ориентирована на построение 2D- и ЗD-графиков, способных удовлетворить самые изысканные требования в области графической визуализации.

Недостатки

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

  • Медлительность работы системы ощущается даже на ПК класса Pentium 166/200 ММХ;

  • MathConnex имеет свой собственный язык программирования, требующий усилий по его освоению;

  • Имеются трудности при задании текстовых комментариев на русском языке;

  • Подготовка проектов (документов) для MathConnex требует больших

затрат времени.

Вывод

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

Таблица 1

Специализи-

рованный пакеты данных

Графическая система

Функцио-

нальность

Интерфейс

Язык программ.

Доп.

фун-ции

MathCAD

2D, 3D, анимации

Около 300

Простой

Математич. язык расчетов

Функции для решения диф.уровнений;

Матричные фун-ции и сортировки

Excel

2D, 3D

Более 300

Простой

Visual Basic for Application или любой другой яз.програм.

Пакет данных для работы с ЗП, НДФЛ, НДС, календарными днями и текстовыми строками

MathLAB

2D, 3D

Более 300

Средний ур-нь сложности

Язык основан на базе: Basic, C++, Java, Object Pascal

Строковые выражения

Mathematica

2D, 3D

Более 700

Сложность в запуске фун-ций

Собственный и простой логический язык

Scientific Astonomer,

Optica,

MathTensor,

MathLink for Excel и то же для MS Word

MathConnex

2D, 3D

Множество фун-ций

Сложность в освоение

Собственный язык программирован.

Способность объединение всех программ

Проанализировав данные ПО для математических расчетов и анализов данных, можно сказать следующее:

  • Наиболее функциональной программой является пакет Mathematica и MathConnex;

  • В простоте работы и освоении программной среды, в приоритете, идут пакеты программного обеспечения Excel, MathCAD, MathLAB;

  • Все программы включают в себя графический интерфейс в 2-D и 3-D

На данном этапе работы наиболее удобный и простой метод решение математический операции, с большим количеством функций является среде MathCAD.