Математический пакет MathCAD




 

Математические и научно-технические расчеты являются важной сферой применения персональных компьютеров. Часто они выполняются с помощью программ, написанных на языке высокого уровня, например Бейсике или Паскале. Сегодня эту работу нередко выполняет обычный пользователь ПК. Для этого он вынужден изучать языки программирования и многочисленные, подчас весьма тонкие капризные численные методы математических расчетов. Нередко при этом из под руки способного физика, химика или инженера выходят далёкие от совершенства программы.

Это не вполне нормальное положение может изменить к лучшему применение интегрированных программных систем автоматизации математических расчетов (Eureka, MathCAD, MatLab и др.). Рассматрим возможности и эволюция одной из таких систем - MathCAD.

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

От других продуктов аналогичного назначения MATHCAD отличается ориентация на создание высококачественных документов (докладов, отчетов, статей) в режиме WYSIWYG (What You See Is What You Get). Это означает, что, внося изменения, пользователь немедленно видит их результаты и в любой момент может распечатать документ во всем блеске. Работа с пакетом за экраном компьютера практически совпадает с работой на бумаге с одной лишь разницей - она более эффективна. Преимущества MATHCAD состоит в том, что он не только позволяет провести необходимые расчеты, но и оформить свою работу с помощью графиков, рисунков, таблиц и математических формул. А эта часть работы является наиболее рутинной и мало творческой, к тому же она и время емкая и малоприятная.

MathCAD является интегрированной системой программирования, ориентированной на проведение математических и инженерно-технических расчетов.

Система MathCAD содержит текстовый редактор, вычислитель и графический процессор.

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

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

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

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

ОСНОВНЫЕ МЕНЮ СИСТЕМЫ

Основное меню содержит следующие позиции:

File, Edit, Window, Help – эти группы команд стандартны для всех windows-приложений, на них останавливаться не будем.

 

 

View - Наряду со стандартными пунктами имеются команды «Animate» и «Playback» позволяющие создавать и проигрывать анимации.

В пункте «Preferences» можно задать параметры подключения программы к интернет и настройки проверки правописания (только английский язык)

Insert - группа команд по управлению вставкой в документ различных объектов.

Graph – позволяет вставлять в документ графики в 2-х, 3-х, и полярной системах координат

Matrix - позволяет вставлять в документ числовой массив

Function - позволяет вставлять в документ функции (причем как обычные математические – синус, косинус, так и специфические матсадовские – работа в изображиниями например)

Unit - позволяет вставлять в документ единицы измерения (метры, градусы и т.п.)

Picture - позволяет вставлять в документ картинки

Math Region/Text Region - позволяет помечать: где вводятся просто текст, а где – формулы

Page Break - позволяет вставлять в документ принудительный переход на следующую страницу

Hyperlink - позволяет вставлять в документ гиперссылку

Reference - позволяет вставлять в документ ссылку на другой файл

Component - позволяет вставлять в документ другой файл из расчетных программ Например из Excel-я, из MathLab.

Object - позволяет вставлять в документ вообще любой файл, например Flash.

 

Format - группа команд по форматированию документа

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

Results – результатов;

Text – текста;

Paragraph – параграфа;

Tabs – табуляции;

Properties – выделенного объекта;

Graph – формат графиков;

Color – цветовые настройки;

Separate regions/Align regions – разбиение и выравнивание областей

Area – блокировка/разблокировка области

Headers/Footers – заголовок и «подвал» страницы

Repaginate now – переразбить страницы

 

 

Math - группа команд по калькуляции формул

Calculate – вычислить выражение;

Calculate Worksheet – вычислить все на листе;

Automatic Calculation – автоматическое вычисление;

Options – точность вычислений;

Symbolics - группа команд для алгебраических вычислений

Evaluate – вычислить (алгебраически/с плав. точкой/комплексные числа);

Simplify – упростить;

Variable, Matrix – работа с переменными и матрицами;

Понятие о документах

Отличительной чертой Mathcad являются так называемые документы, которые объединяют описание математического алгоритма решения задачи (или ряда задач) с текстовыми комментариями и результатами вычислений, заданными в форме символов, чисел, таблиц или графиков. В оригинале документы системы Mathcad названы английским словом Worksheets. В научном мире длинные листы бумаги с текстами, формулами и графиками шутливо называют рабочими «простынями» — так и переводится слово Worksheets буквально.

Фактически документы Mathcad объединяют Код, написанный на визуально-ориен­тированном языке программирования Mathcad, с результатами его работы и тек­стовыми и формульными комментариями. Напомним, что визуально-ориентиро­ванные языки программирования задают программу не в виде малопонятных кодов, а в виде визуально понятных объектов. Язык программирования Mathcad ориенти­рован на математические вычисления и потому практически не отличается от обыч­ного языка математических статей, отчетов и книг. Это огромное достоинство сис­темы Mathcad, которое делает документы Mathcad вполне ясными даже школьникам и студентам младших курсов вузов, имеющим элементарные знания по математике.

Итак, уникальное свойство Mathcad — возможность описания математических алгоритмов в естественной математической форме с применением общепринятой символики для математических знаков, таких, например, как квадратный корень, знак деления в виде горизонтальной черты, знак интеграла и т. д. Это делает доку­мент, видимый на экране дисплея, чрезвычайно похожим на страницы текста мате­матических книг или научных статей. Такой подход значительно облегчает восприятие математической сущности решае­мой задачи и избавляет пользователя от изучения некоторого промежуточного язы­ка программирования (например Фортрана, Бейсика, Паскаля и т. д.). Можно ска­зать, что в Mathcad идея решения математических задач без их программирования доведена до высшего совершенства — подавляющее большинство задач требуют лишь корректного формульного описания решениям не нуждаются в подготовке программ в их общепринятом понимании.

Особые средства оформления

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

Все версии Mathcad под Windows позволяют работать как с латинскими буквами, так и с кириллицей (буквами русского алфавита), греческим алфавитом и вообще с любыми символами, доступными в Windows. Более того, благодаря применению масштабируемых TTF - шрифтов можно управлять как размером символов, так и их начертанием (делая буквы прямыми или наклонными, тонкими или жирными). Все это дает возможность готовить документы и электронные книги высокого каче­ства как на английском, так и на русском языках.

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

Понятие о входном языке общения и языке реализации Mathcad

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

Вот, к примеру, как выглядит вычисление квадрата переменной х с заданным значе­нием х=3 на популярном языке Pascal и на Mathcad:

 

Pascal Mathcad Комментарий  
х= 3   х:= 3   Переменной Х присваивается значение 3  
У = х^2   у:= х2   Переменной у присваивается значение Х в квадрате  
writeln(“y=";y)   у= 9   Вывод значения переменной у  

 

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

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

Важно сразу учесть, что Mathcad выполняет действия над блоками в строго опре­деленном порядке — блоки анализируются (оцениваются) слева направо и сверху вниз. Это означает, что блоки нельзя располагать в документе произвольно. Блоки, готовящие какие-либо операции, должны предшествовать блокам, которые выпол­няют эти операции. Исключением являются блоки с глобальным определением (они также будет рассмотрены позже). Их можно располагать в любом месте документа, например в конце.

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

Визуально-ориентированный язык общения системы Mathcad надо отличать от языка реализации системы, то есть обычного языка программирования высокого уровня, на котором написана система. Языком реализации системы Mathcad являет­ся один из самых мощных языков высокого уровня — C++.

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

В версии Mathcad 2000 PRO значительно снижены требования и к знанию даже входного языка. Практически все операторы, имеющие вид привычных математи­ческих символов, можно выбирать мышью в палитрах математических объектов, а большинство математических функций (например, sin, cos, ехр и т. д.) имеют есте­ственную форму задания, например, sin (х) так и вводится — sin (х). К тому же есть возможность выбора функций из списка, имеющегося в специальном окне, что рез­ко уменьшает вероятность ошибок при вводе. Этот список выводится с помощью кнопки f(x) на панели инструментов.

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

Средства повышения эффективности вычислений и их оптимизация

Как отмечалось, входной язык системы Mathcad — интерпретируемый. В интерпре­таторах, например, в Бейсике, листинг программы пользователя анализируется системой сверху вниз

(а в пределах строки — слева направо), и любые указания в программе тут же выполняются. Так же просматриваются блоки в системе Mathcad. Как только блок опознается, система автоматически запускает внутренние подпрограммы для выполнения необходимых действий, например, вы­числения по формуле, вывода таблицы значений вектора, построения рисунка по его шаблону и т. д. Интерпретаторы работают медленно, поэтому не случайно, что пользователи, рабо­тавшие со старыми версиями Mathcad, отмечали медлительность систем, особенно при сложных вычислениях и при построении графиков. Медлительность является и следствием работы системы в графическом режиме, когда малейшее изменение со­держания экрана требует его полной перерисовки.

В последние версии Mathcad введена экспертная система SmartMath. Эта система старается использовать при численных вычислениях конечные формулы, получен­ные в результате символьных (аналитических) преобразований. Часто (хотя и не всегда) это дает значительное ускорение вычислений в сравнении с их реализацией численными методами.

Операция оптимизации вычислений с помощью системы SmartMath вводится спе­циальными атрибутами (знак * у формул) и словами — директивами. Их число в новых версиях Mathcad значительно увеличено, и для ввода операторов и директив символьной математики добавлена специальная палитра. Таким образом система SmartMath превратилась в полноправного члена семьи Mathcad. Наиболее развит этот подход в самом мощном варианте системы — Mathcad 2000 Premium, в состав которой введено оптимизирующее расширение The Expert Solver, автоматически включающее «на всю катушку» средства SmartMath.

ВЫЧИСЛЕНИЯ В MATHCAD

 

Понятия используемые в MathCAD: переменная, константа, системная переменная, функция, оператор.

Задание переменных с пределами изменения, что дает возможность проведения циклических вычислений. Целоисчисленная переменная, меняющаяся с шагом 1 от значения Start до значения End, задается следующим образом:

Name: Start;End что дает Name:= Start..End

Идентификаторы

Алфавит системы MathCAD строчные и прописные латинские буквы, арабские цифры, ряд греческих букв и специальных знаков. С их помощью задаются имена встроенных функций и операторы и идентификаторы. Идентификаторы должны начинаться с буквы и их имена должны быть уникальны. (qwerty, resultat – можно; 1u, sin, альфа - нельзя)

Греческие буквы вводятся нажатием клавиши Alt и некоторых латинских букв.

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

p = 3.14159 p

е = 2.71823 основание натурального логарифма

¥ = 10 ²бесконечность²

% = 0.01 процент

TOL = 0.001 погрешность численных методов

ORIGIN = 0 нижняя граница индексации массивов

Значения их можно переопределить, но не рекомендуется.

Переменные: набирается: Х:=123

Для ввода значений переменных Х =. Форма вывода зависит от установленного пользователем формата вывода. Он может быть глобальным, то есть относится ко всей программе, может быть локальным, то есть действовать в ограниченной области.

Глобальный формат

RADIX = d - тип используемых чисел (d - десятичные).

PRECISION DISPLAYED = 4 - количество знаков после запятой.

EXPONENTIAL THRESHOLD = 6 - граница представления чисел в экспоненциальной форме.

IMARGINARY SYMBOL = i - обозначение для мнимой единицы.

ZERO TOLERANCE = 15 - значение машинных нулей при вычислении.

COMPLEX TOLERANCE = 15 - представление машинных нуля для комплексных чисел.

OVERALE DEFAULT - глобальная установка данных.

REVERT - возврат к исходным данным.

DONE - продолжение работы.

Для задания циклических вычислений с целоисчисленной управляющей переменной цикла пользуйтесь следующей конструкцией:

имя переменной:=Nнач...Nкон цикл

с целой

(вводится как;)

Если Nнач < Nкон, то шаг изменения переменной положительный, если Nнач > Nкон, то отрицательный.

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

Х:=1

2+sin(Х)=2.841

Можно задать внешние функции, или функции пользователя.

eх es (Х):=exp(sin(X)) - такая функция будет вести себя как встроенная

Операторы. Специальные знаки или слова, вызывающие определенные действия (+, -, =,:, <, >, Ö).



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: