1 Теоретический материал для использования на курсах повышения квалификации по проблеме «Инструментальные программные средства для решения прикладных математических задач» 1. Краткий исторический обзор В XXI веке математика с использованием компьютера получила должную известность и интенсивно развивается как передовое научное направление на стыке математики и информатики. Программируемые микрокалькуляторы и персональные компьютеры уже давно применяются для математических расчетов. Для подготовки программ использовались программирования. В различные начале 90-х гг. универсальные на смену им языки пришли специализированные системы компьютерной математики (СКМ). Большинство математических систем, используемых в работе с компьютером, являются компьютер мощный в численными системами. программируемый Они калькулятор, превращают позволяющий выполнять арифметические вычисления с огромной скоростью. Впрочем, очень редко результаты вычислений бывают абсолютно точными – как правило, при операциях с вещественными числами происходит их округление. Часто из-за накопления погрешности эти методы расходятся. За пределами возможностей численных математических систем оказались обширные области математики, связанные с проведением аналитических расчетов – от простых подстановок в выражениях до обучения компьютера новым математическим закономерностям и отношениям. Символьные операции – это как раз то, что кардинально отличает системы символьной математики (или компьютерной алгебры) от систем для выполнения численных расчетов. 2 В последние годы получили развитие специальные программные средства – интегрированные системы символьной математики: MathCAD ("MathSoft Inc.", http://www.mathsoft.com); MatLAB ("MathWorks", http://www.mathworks.com); Maple V (“Waterloo Maple Software”, http://www.maplesoft.com); Mathematica (“Wolfram Research Inc.”, http://www.wolfram.com); Axiom (“Numerical Algorithms Group Inc.”, http://www.nag.com) и др. 2. Mathcad Mathcad – это многофункциональная интерактивная вычислительная система, позволяющая, благодаря встроенным алгоритмам, решать аналитически и численно большое количество математических задач, не прибегая к программированию. Рабочий документ Mathcad – электронная книга с живыми формулами, вычисления в которой производятся автоматически в том порядке, в котором записаны выражения. Отличается простым и удобным интерфейсом, написанием выражений стандартными математическими символами, хорошей двух- и трехмерной графикой, возможностью подключения к распространенным офисным и конструкторским программам, а также к Internet. Интегрированная среда содержит текстовый редактор, вычислитель и графический процессор. Текстовый редактор предназначен для ввода и редактирования текстов. Текст может представлять собой обычные символы, математические выражения или формулы, спецзнаки. общепринятую в математике символику. Система MathCad использует 3 Вычислитель обеспечивает работу со сложными математическими формулами, имеет большой набор встроенных функций, позволяет вычислять ряды, суммы и произведения, определенные интегралы и производные, работать с комплексными числами, решать линейные и нелинейные уравнения, выполнять векторные и математические операции. Графический процессор служит для создания графиков. Можно строить простые графики от одного до нескольких одновременно, графики трехмерной поверхности, возможно изменение размеров графиков и проч. Рассмотрим экран среды MathCad: главное меню (вызов команд меню может осуществляться клавишей F10); панель инструментов; рабочая область; панель форматирования; палитра операторов. Большое значение разработчики MathCad придавали удобству работы с ним и простое освоение. Интерфейс MathCad прост и понятен, полностью отвечает стандартам Windows. Все графики и математические объекты могут быть введены щелчком «мыши» с перемещаемых палитр. Набор символов и формул происходит, если щелкнуть в свободном месте экрана (появляется красный крестик – визир, фиксирующий место ввода). Области на экране легко можно перетаскивать «мышью» или перемещать командами Cut, Insert и Paste меню Edit или правой кнопкой «мыши». Большинство математических формул записывается в рабочем документе так же, как и на листе бумаги. MathCad содержит строчные и 4 прописные буквы, арабские цифры, ряд греческих букв и математических символов. Знаки арифметических операций вводятся с клавиатуры с помощью клавиш +, -, * (на экране отображается точкой), / (отображается в виде x ) или с помощью панели инструментов. y Также имеется возможность: возводить в степень с клавиатуры: ^ (отображается в виде xn); набирать квадратный корень \ суммирование членов ряда $ перемножение членов ряда # определенный интеграл & В системе MathCad знак «=» означает числовой, а знак «стрелка вправо» - символьный вывод значения переменной, функции, выражения. При вводе данных возникают поля, около которых появляется курсор образной формы. Например: Клавиша Space (пробел) позволяет перейти к обрамлению всей формулы. Формулы вводятся в той же последовательности, как произносятся. Для определения переменных используется := (Shift :), который также находится на панели инструментов. Для подсчета выражения используется следующее правило: необходимо сначала определить все переменные, а только потом производить с ними вычисления. 5 Например, a := 4 b := 5 c := a+b c= система сама выдаст результат 5. Если порядок ввода будет изменен, например следующим образом: c := a+b a := 4 b := 5 то a будет выделена красным цветом – знак того, что это первая переменная, которая не определена. В данном порядке: a := 4 c := a+b b := 5 соответственно b – будет выделена. Задание интервалов Одним из важнейших элементов среды являются интервалы – группа чисел от начального до конечного значения, следующие с некоторым шагом. Интервалы задаются i := 1..10 1 2 6 i= … результат 10 По умолчанию шаг равен 1. Если нужно задать интервал с другим шагом, то это делается следующим образом: задается первое, второе и конечное значения интервала. j := 1, 1.1 .. 2 В MathCad имеется задание функций пользователя y(x) := cos(x)+2*sin(x) z := 2*sin(y(3)) 100 Рассмотрим пример подсчета суммы вида 1 1 i 1. i := 1..100 1 2. i i Построение графиков функций Для построения графика необходимо: 1. определить функцию 2. вызвать шаблон графика и заполнить его Пример: 1. y(x) := sin(x) 2. выбор нужного шаблона графика функции 7 Правым щелчком мыши по графику можно вызвать контекстное меню, в котором имеется доступ к элементам форматирования графика: его цвет, задавать нужный интервал и проч. Кроме того, имеется возможность построения графиков в полярных координатах (параметрически) 1. t := 0,001 ..4 2. x(t) := 2*sin(t) y(t) := 3*cos(t) 3. шаблон y(t) x(t) Имеется возможность построения в одном шаблоне нескольких графиков, для этого имена всех функций перечисляются через запятую. Символьные преобразования Символьные преобразования – это математические преобразования, выполняемые по законам математики без подстановки конкретных значений (с использованием переменных). Преобразования: symplity – упростить: сокращение дроби, приведение подобных слагаемых и проч. expand – развернуть: раскрыть скобки, привести подобные слагаемые и др. factor – разложить на множители 8 substitute – подставить: заменить в алгоритмическом выражении какуюлибо букву. Для использования символьных преобразований требуется ввести выражение, затем нажать на пробел для обхвата всего выражения и в главном меню Symbolics выбрать необходимую функцию. Например, 2*x + 2*y 2 * (x+y) Преобразования в математическом анализе На панели инструментов имеются специальные значки для вычисления интегралов, производной и пределов аналитики. Например: 2 x dx x3 3 Символьные решение уравнений и систем 1. вызываем шаблон <уравнение> solve <переменная> Уравнение должно быть приведено к виду f(x)=0 Например, x+2-a solve xa-2 Решение систем уравнений: Given (дано) <уравнение 1> <уравнение 2> <уравнение 3> Find (x, y, z) <ответ> 9 Например: Given xz 1 2 z ( x z ) 0 2 (1 x 2 ) * 4 y 2 2 x 2 0 y 2 * ( z 2) z 0 0 1 Find ( x, y, z ) 2 3 0 1 Матричные операции Для задания матрицы необходимо: ввести имя A := выбрать шаблон матрицы; выбрать количество строк и столбцов. Существуют возможности: задания нижнего индекса; вычисление обратной матрицы; вычисление определителя; транспонирование; скалярное и векторное произведение и проч. Построение поверхностей z(x,y) Построить график функции – это значит, на область определения функции поставить соответствующие значения любой точки x, y плоскости XOY. 10 Например, z (x,y) := e-x-y С помощью мыши можно вращать получившуюся поверхность относительно любой оси координат. Так же имеется контекстное меню.