Интегрированные пакеты математических расчетов

ПАКЕТЫ  ДЛЯ МАТЕМАТИЧЕСКИХ РАСЧЕТОВ

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

  1. встроенные средства различной степени развития той или иной системы программирования;  (системы программирования, как Basic, С, Pascal)
  2. специальные языки программирования; (Fortran, Prolog)
  3. узкоспециальные.( пакеты MacMath, Phaser, Eureka)
  4. специальные (пакеты StatGraf, Macsyma, Dynamics, Derive)
  5. общие пакеты. (MathCAD, REDUCE, MatLab)

Наконец, современное  развитие компьютерных технологий, ориентированных  на создание интегрированных пакетов multimedia- технологии привело к появлению нового уровня математических пакетов, из которых наиболее известными являются пакеты MAPLE V фирмы Maple Software Inc. и Mathematica фирмы Wolfram Research Inc.

Пакет MATHCAD как средство решения математических задач.

Общая характеристика пакета

Пакет имеет  естественный входной язык представления математических зависимостей и инструменты их набора типа предлагаемых в Microsoft Equation

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

Особенности ввода:

  • Мнимая единица записывается как i или j сразу после числового множителя.
  • Углы по умолчанию задаются в радианах.
  • Латинские буквы, цифры и знаки операций, включая возведение в степень
  • указывающие прядок действий круглые скобки

- набираются  непосредственно с клавиатуры.

Нажатие [Ctrl+G] вслед  за набором латинской буквы преобразует  ее в греческую.

Умножение набирается как *, деление — посредством /. В  процессе ввода, знак умножения автоматически заменяется точкой, а делимое и делитель представляются как числитель и знаменатель дроби. Знак возведения в степень переводит последующее выражение в показатель степени, а открывающая квадратная скобка — в индекс. Возврат на основной уровень строки, (а также переход к набору знаменателя) выполняется нажатием [Space].

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

Присваивание  переменным; числовых значений производится набором конструкции <имя>:<число> (двоеточие будет заменено знаком присваивания).

Например x:6 получаем на экране x:=6.<

Вывод результатов  выполняется по нажатию клавиши [=]. Знаки равенства в условиях и уравнениях набираются только по [Ctrl+=]. Набор завершается нажатием [Enter] или щелчком мышью вне поля набора.

Интерфейс пакета MATHCAD

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

Расположение нетекстовых блоков в документе имеет принципиальное значение - слева направо и сверху вниз. Точка ввода на рабочем листе отмечается красным крестиком он называется «визир»

Математические  выражения

К основным элементам  математических выражений MathCAD относятся типы данных, операторы, функции и управляющие структуры.

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

К типам данных относятся числовые константы, обычные  и системные переменные, массивы (векторы и матрицы)

Функции

Функция - выражение, согласно которому проводятся некоторые  вычисления с аргументами и определяется его числовое значение.

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

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

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

Функции в пакете MathCAD могут быть встроенные. Способы вставки встроенной функции

  • Выбрать пункт меню Вставка / Функция. 
  • Нажать комбинацию клавиш Ctrl + E. 
  • Щелкнуть на кнопке

Текстовые области

Текстовая область  предназначена для небольших  кусков текста - подписей, комментариев и т. п. Вставляется с помощью  команды Вставка / Текстовая область или комбинации клавиш Shift + " (двойная кавычка).

Графические области

Графические области делятся на три основных типа - двумерные графики, трехмерные графики и импортированные графические образы. Двумерные и трехмерные графики строятся самим MathCAD на основании обработанных данных.

Для создания декартового графика:

  1. Установить визир в пустом месте рабочего документа.
  2. Выбрать команду Вставка / График / Х-У график, или нажать комбинацию клавиш Shift + @, или щелкнуть кнопку Графики. Появится шаблон декартового графика.
  3. Введите в средней метке под осью Х первую независимую переменную, через запятую - вторую и так до 10, например х1, х2, …
  4. Введите в средней метке слева от вертикальной оси Y первую независимую переменную, через запятую - вторую и т. д., например у1(х1), у2(х2), …, или соответствующие выражения.
  5. Щелкните за пределами области графика, что бы начать его построение.

Трехмерные, или 3D-графики, отображают функции двух переменных вида Z(X, Y).

Пример:

Решение математических задач  с помощью MATHCAD

Численное решение нелинейного  уравнения 

Для простейших уравнений вида f(x) = 0 решение в Mathcad находится с помощью функции root.

root( f(х1, x2, …), х1, a, b )

Возвращает значение х1, принадлежащее отрезку [a, b], при котором выражение или функция f(х) обращается в 0. Оба аргумента этой функции должны быть скалярами. Функция возвращает скаляр.

Аргументы

f(х1, x2, …) - функция, определенная где-либо в рабочем документе, или выражение. Выражение должно возвращать скалярные значения.

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

a, b - необязательны, если используются, то должны быть вещественными числами, причем a < b.

Приближенные  значения корней (начальные приближения) могут быть:

  1. Известны из физического смысла задачи.
  2. Найдены графическим способом.

Наиболее распространен  графический способ определения начальных приближений. Принимая во внимание, что действительные корни уравнения f(x) = 0 - это точки пересечения графика функции f(x) с осью абсцисс, достаточно построить график функции f(x) и отметить точки пересечения f(x) с осью Ох, или отметить на оси Ох отрезки, содержащие по одному корню.

Пример решения  нелинейного уравнения:

Нахождение  корней полинома

Для нахождения корней выражения, имеющего вид

nxn + ... + v2x2 + v1x + v0,

лучше использовать функцию  polyroots, нежели root. В отличие от функции root, функция polyroots не требует начального приближения и возвращает сразу все корни, как вещественные, так и комплексные.

Polyroots(v)

возвращает  корни полинома степени n. Коэффициенты полинома находятся в векторе v длины n+1. Возвращает вектор длины n, состоящий из корней полинома.

Аргументы: v - вектор, содержащий коэффициенты полинома.

Вектор v удобно создавать  использую команду  Символы Þ Коэффициенты полинома.

Пример  нахождения корней полинома:  

 

Решение систем уравнений

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

Для решения системы  уравнений необходимо выполнить следующее:

  1. Задать начальное приближение для всех неизвестных, входящих в систему уравнений. Mathcad решает систему с помощью итерационных методов.
  2. Напечатать ключевое слово Given. Оно указывает Mathcad, что далее следует система уравнений.
  3. Введите уравнения и неравенства в любом порядке. Используйте [Ctrl]= для печати символа =. Между левыми и правыми частями неравенств может стоять любой из символов <, >,
  4. Введите любое выражение, которое включает функцию Find, например: а:= Find(х, у).

Find(z1, z2, . . .)

Возвращает  точное решение системы  уравнений. Число  аргументов должно быть равно числу неизвестных.

Ключевое  слово Given, уравнения и неравенства, которые следуют за ним, и какое-либо выражение, содержащее функцию Find, называют блоком решения уравнений.

Блоки решения уравнений  не могут быть вложены  друг в друга, каждый блок может иметь  только одно ключевое слово Given и имя функции Find.

Пример  решение системы  уравнений в MathCAD.

  

Возможности пакета MAPLE для решения  математических задач.

Общая характеристика пакета

Документ  системы Maple состоит  из различных объектов — текстовых областей, областей ввода, графических областей, секций, подсекций и т.д. На экране дисплея в среде Maple по умолчанию строки ввода прописаны красным цветом, ответ системы - синим, комментарии пользователя - черным. В строках рабочего листа после приглашения > набираются команды состоящие главным образом ввызове ее процедур. Команды выполняются последовательно сверху вниз. Команды Maple завершаются символами : или ; (первый вариант подавляет вывод). Часть строки после символа. # воспринимается как комментарий.  

Типы  данных

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

Система имеет встроенные константы Pi, I = . Основание натуральных логарифмов е отсутствует, и работа с ним: заменяется ссылками на функцию ехр. В частности, собственно е приходится представлять как ехр(1). Бесконечность задается словом infinity. Все переменные по умолчанию считаются комплексными.

Из  элементарных объектов могут быть сформированы более сложные – множества и списки. Элементы множества перечисляются через запятую в фигурных скобках и порядок их не важен, элементы списка – в [  ] и порядок важен. Обычно решения уравнений выдаются в виде списка.

Операторы обработки

Для формирования выражений используют стандартные символы +, -, *, /, ^, !.

Чтобы запомнить результаты вычислений необходимо присвоить некоторой  переменной это значение. Ссылки на результаты трех предшествующих пунктов рабочего листа осуществляются с помощью знака %. Соответствующей кратности. Например:

>ex:=expand((x+l)*(x~2-x+l)); #перемножить

ex:=x^3+1

>factor(%); #разложить на множители выражение, полученное в предыдущем пункте

(x+l)(x^2-x+l)

Примеры использования Maple для  решения математических задач

Решение уравнений и систем уравнений

Используется  оператор Solve(выражение, переменная);

Пример:    

>ex:=x^2+2*x-12;

>sol:=solve(ex,x);

>sol:=[1,-1, ,- ];

Если  необходимо решить систему  уравнений по одной  или нескольким переменным данные необходимо вводить  как множества - в  фигурных скобках.

Эквивалентные преобразования

subs – выполняет замену переменных во втором аргументе согласно первому.

Пример:         > subs (x=sqrt(r), 3*x+x^2);

expand - разворачивает произведения и функции сложных аргументов в суммы

Пример:        

> expand((x+3)*(x-2));

> expand(cos(x-y));

factor выполняет противоположные преобразования.

Пример:  

> factor(x^3-1,complex);

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

Пример: 

> normal ((x^2-y^2)/(x-y)^3);

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

Пример: 

>combine(4*sin(x)^3,trig);

>combine(exp(x)^2*exp(y),exp); 

Операции  математического  анализа

Операция Пример  команды MAPLE Ответ
Вычисление  пределов >limit(sin(x)/x, x=0);

1

Дифференцирование >diff(sin(x),x)
Неопределенный  интеграл >int(sin(x),x)
Определенный  интеграл >int(sin(x),x=0..Pi)  

Графические возможности пакета Maple

Построение  двумерных и трехмерных графиков.

Используется  команда Plot (f,h,v,options) где  f – задаваемая функция, h – диапазон аргумента (по умолчанию –10,10), v – диапазон значений функции (необязателен), options – опции, задающие вид координат, внешний вид графика и т.п. 

 

Построение  графиков функций в декартовых координатах Построение  графика в полярных координатах
> plot([sin(x), x^2/6], x=-5..5, color=[red,blue], style=[line, point]); > plot (sqrt(x),x=-5..5, coords=polar);

Столь же просто, как и  график обычной функции в Декартовой системе координат, можно построить график трехмерной поверхности. В данном случае задана функция двух переменных Z(x,y):=sin(x*y) и ее график строится с использованием графической функции plot3d.

Интегрированные пакеты математических расчетов