Ключ
|
Действие
|
Shift+Enter
|
Завершение ввода строки;
отправка на выполнение.
|
F1
|
Вызов HELP.
|
Cell
|
Обращение к меню для работы
с ячейками.
|
Palettes
|
Обращение к меню для работы
с палитрами.
|
Ctrl+^
|
Возведение (выделенного
выражения) в степень.
|
Ctrl+пробел
|
Возвращение курсора в
основную строку.
|
Ctrl+% (Ctrl+5)
|
Перемещение курсора между
нижним и верхним пределами интегрирования.
|
Ctrl+K+подстрока
|
Вызов списка ключевых слов,
содержащих данную подстроку.
|
??подстрока
|
Вызов списка ключевых слов,
содержащих данную подстроку. В подстроке для замещения отсутствующих символов
допустимо использование символа *.
|
(Esc-a-Esc)
|
Символ a.
|
(Esc-b-Esc)
|
Символ b.
|
(Esc-p-Esc)
|
Символ p.
|
Команда
|
Действие
|
Out[номер]
|
Обращение к выходной ячейке
с указанным номером.
|
%
|
Обращение к предыдущей
выходной ячейке
|
N[выражение,
целое число]
|
Преобразование выражения в
10-ичную дробь. Необязательный параметр - целое число - общее количество
знаков результата.
|
Clear
|
Очистка
переменных.
|
/.
|
Операция
подстановки.
|
Limit
|
Нахождение
предела.
|
Plot
|
Построение
графика.
|
Show
|
Отображает графики,
являющиеся аргументами, на одной координатной плоскости.
|
D
|
Дифференцирование.
|
Integrate
|
Интегрирование.
|
FindRoot
|
Нахождение корня
уравнения.
|
Solve
|
Нахождение всех
корней уравнения.
|
<<Statistics`Master
|
Вызов модуля
статистических расчетов.
|
PDF
|
Вычисление
плотности распределения.
|
CDF
|
Вычисление
функции распределения.
|
Mean
|
Вычисление
математического ожидания.
|
Quantile
|
Вычисление
квантиля распределения.
|
<<Algebra
`InequalitySolve`
|
Вызов модуля решения
алгебраических неравенств.
|
Пользовательский интерфейс программы Mathematica сначала кажется несколько
примитивным: инструментальная панель - это просто строка меню, а отдельное окно
документа выглядит как бы подвешенным. Кроме того, на инструментальной панели
отсутствуют кнопки для выполнения часто повторяемых операций, которые были в
предыдущей версии.
Однако впечатление примитивности интерфейса сразу же исчезает, когда
выясняется, что можно подключать настраиваемые кнопочные палитры, которых в
программе имеется больше десятка. С их помощью можно выполнять различные
функции, а часть кнопок соответствует специальным символам. Всего в программе
более 700 математических, языковых и других символов. При нажатии на кнопки с
символом последний переносится в рабочий документ на указанное курсором место.
Другие кнопки палитры соответствуют наименованиям ряда функций программы,
которые при выборе вводятся в командную строку. При нажатии кнопки
алгебраических преобразований предварительно выделенное алгебраическое
выражение трансформируется в соответствии с названием выбранной команды,
например упрощается командой simplify.
Программа позволяет применять различные стили для оформления документа на
экране и вывода его на печать, причем в новой версии стилей может быть
значительно больше, чем в предыдущей. Для их изменения предусмотрена
специальная палитра.
Программа дает возможность отображать математические символы с достаточно
высоким полиграфическим качеством в тексте на экране, в командах, а также при
выводе на печать . Увеличено количество опций. Возможно создание гипертекстовых
связей.
Рабочую тетрадь можно сохранять в HTML-формате, а также в формате полиграфического языка LaTex и некоторых других.
Усовершенствована и расширена система подсказок, имеется интерактивный
доступ к полному тексту электронной версии документации, которая состоит из
инструкции пользователя, справочника по стандартным дополнениям, учебника для
начинающих и демонстрационных файлов.
Меню окна справки очень хорошо продумано, что позволяет получить
информацию различными путями. Можно получить справку по интересующей теме или
функции, а также просмотреть текст всех документов, содержащих введенное
ключевое слово.
Умение проводить аналитические расчеты - одно из главных достоинств этой
программы, автоматизирующей математические расчеты. Mathematica умеет преобразовывать и упрощать
алгебраические выражения, дифференцировать и вычислять определенные и
неопределенные интегралы, вычислять конечные и бесконечные суммы и
произведения, решать алгебраические и дифференциальные уравнения и системы, а
также разлагать функции в ряды и находить пределы. Кроме того, Mathematica имеет стандартные дополнения для аналитических
расчетов, которые будут рассмотрены ниже.
Следует заметить, что возможности каждой новой версии программы
качественно возрастают. В версии 3.0 программы команда упрощения алгебраических
выражений Simplify дополнена значительно более мощной
командой FullSimplify, которая позволяет обрабатывать
математические выражения, включающие специальные функции.
Расширен спектр математических выражений, для которых аналитически
находятся неопределенные и определенные интегралы. Появилась также возможность
задавать область изменения параметров в подынтегральных выражениях, что
позволяет интегрировать многие выражения, которые в общем случае не имеют
первообразной. Значительно возросло число различных (конечных и бесконечных)
сумм и произведений, вычисляемых аналитически, а также аналитически решаемых
обыкновенных дифференциальных уравнений и уравнений в частных производных .
Из числа других улучшений можно выделить повышение скорости решения задач
линейной алгебры.
.2 Численные
методы
Для тех задач, которые невозможно решить аналитически, Mathematica предлагает большое количество
эффективных алгоритмов для проведения численных расчетов. Она позволяет
находить конечные и бесконечные суммы и произведения, вычислять интегралы,
решать алгебраические и дифференциальные уравнения и системы, задачи
оптимизации (линейного программирования, нахождения экстремумов функций), а
также задачи математической статистики.
При численном решении математических задач наряду с правильностью
алгоритмов расчета особую роль играет точность вычислений. В Mathematica 3.0 реализован адаптивный контроль
точности, основанный на выборе внутренних алгоритмов, позволяющих ее
максимизировать. В этой версии программы повышена эффективность одно и
многомерной интерполяции, оптимизированы алгоритмы численного решения
дифференциальных уравнений
Добавлены многократное численное интегрирование, а также численное
дифференцирование. Оптимизированы алгоритмы нахождения экстремумов. Осуществлен
независимый от конкретной компьютерной платформы механизм ввода и вывода
числовых данных без потери точности.
Мathematica 3.0 позволяет включать в расчеты все
известные элементарные функции, а также сотни специальных встроенных функций .
Разумеется, пользователь программы может вводить и свои функции как для
применения в течение одного сеанса работы так и для постоянного использования.
.3 Графика и
звук
Mathematica позволяет строить двух и трехмерные графики различных типов: в виде
точек и линии на плоскости, поверхностей, а также контурные, градиентные (dencity plot), параметрические. Имеется большое количество опций
оформления и настройки, например изменение подсветки, цвета, размеров и точки
наблюдения . Mathematica выполняет построение графика в три
этапа. На первом создается множество графических примитивов, на втором они
преобразуются в независимое от вычислительной платформы описание на языке PostScript, а на третьем это описание
переводится в графический формат для той системы, на которой установлена Mathematiса. Если первые два этапа
осуществляет ядро программы, то последний - интерфейсный процессор. Mathematica позволяет также строить серии
картинок, которые могут быть воспроизведены как анимация.
Программа содержит функции, позволяющие создавать и воспроизводить
различные звуки, а также воспринимает и может анализировать некоторые типы
стандартных звуковых файлов.
После выполнения команды в рабочей тетради появляется картинка,
представляющая собой график синусоид, входящих в аргумент команды, а звуковой
файл (так же как и файл анимации) запоминается в документе. Это позволяет сразу
после открытия документа воспроизвести их без повторного вычисления. В новой
версии 3.0 программы заметно улучшено текстовое оформление графиков. Теперь
заголовки и текст меток на графиках могут быть представлены с достаточно высоким
полиграфическим качеством (правильное изображение математических символов).
Возможно также включение в сам график форматированных текстовых строк. Ячейки
рабочего документа теперь автоматически конвертируются в EPS, TIFF, GIF и
другие графические форматы.
1.4
Программирование
Входной язык Mathematica
содержит большое количество конструкций, позволяющих для каждой конкретной
задачи выбрать оптимальный метод программирования. Помимо обычного процедурного
программирования с применением условных переходов и операторов цикла, имеется
еще несколько методов:
• основанный на операциях со списками, этот метод использует особенности
универсального объекта программы - списка выражений, с которыми можно
производить математические операции, как с алгебраическими выражениями, при
этом заданные операции выполняются всеми элементами списка,
• основанный на операциях над строками (string-based),
• функционального программирования (functional programming), позволяющий создавать сложные
функции и последовательности вложенных функций;
• на базе правил преобразования выражений (rule-based);
• объектно-ориентированный (object-oriented) .
В каждой конкретной программе пользователь может одновременно применять
несколько методов или даже все перечисленные.
1.5
Стандартные дополнения
Mathematica 3.0 содержит 11 стандартных дополнений, включающих
подпрограммы (пакеты), значительно расширяющие функциональные возможности
в таких областях, как алгебра, аналитические и численные расчеты, графика,
дискретная математика, теория чисел и статистика. Стандартные дополнения могут
загружаться по мере надобности. Для загрузки пакета используется
соответствующее название, включающее имя дополнения и имя пакета из данного
дополнения. Рассмотрим подробнее стандартные дополнения.
Алгебра.
В это дополнение входят пакеты, позволяющие задавать различные
алгебраические поля и оперировать в них, а также несколько пакетов, расширяющих
функциональность программы при оперировании с полиномами и нахождении их
корней. В новой версии оно пополнилось пакетами для решения некоторых типов
алгебраических неравенств и симметричных полиномов и, кроме того, добавлена
Гамильтонова алгебра кватернионов и элементы полей Пигуа.
Вычисления.
Это дополнение содержит пакеты, позволяющие расширять возможности
программы при вычислении интегралов, нахождении пределов, решении
дифференциальных уравнений и задач линейной алгебры в различных системах
координат, а также включает команды преобразования Фурье и Лапласа, обобщенные
функции, вариационные методы. В новой версии оно пополнилось пакетом для
нахождения полных интегралов и дифференциальных инвариантов нелинейных
уравнений в частных производных.
Дискретная математика.
Дополнение предлагает примерно 200 функций для проведения исследований в
области комбинаторики и теории графов; вычислительную геометрию, которая
содержит несколько геометрических функций для непараметрического анализа
данных; пакеты для оперирования с функциями от целых чисел, в частности для
решения рекуррентных уравнений, выполнения преобразований.
Графика.
Дополнение включает 21 пакет. Оно значительно расширяет возможности
программы при построении графиков и анимаций. Введены новые типы:
логарифмические графики, графики тел вращения, полярные, контурные, матричные
графики, трехмерные параметрические, двух- и трехмерные графики векторных
полей, графики неявнозаданных функций и др. Появилась возможность отображать
ортогональные проекции трехмерных графических объектов на координатные
плоскости . Добавлены также функции для графического представления комплексных
функций.
Геометрия.
Геометрическое дополнение содержит пакеты, включающие функции для задания
параметров правильных многоугольников и многогранников, а также функции,
обеспечивающие вращение на плоскости и в пространстве.
Линейная алгебра.
В это дополнение входят функции для создания ортогональных векторных
базисов, решения матричных уравнений, разложения матриц и выполнения других
операций с матрицами. Оно включает пакеты Cholcsky, GaussianElimmatlon, MatrixManipulation, Orthogonalizaltion, Tridiagonal.
Теория чисел.
Функции, относящиеся к теории чисел, широко представлены в ядре программы
Mathematica, например PrimePi, EulerPhi, MoebiusMu и DivisorSigma. Дополнение теории чисел расширяет
этот список функций. В нее включены пакеты для доказательства простоты чисел,
разложения целых чисел на множители. Имеются функции для аппроксимации
действительных чисел рациональными и полиномов с действительными корнями
полиномами с целыми коэффициентами. Пользуясь дополнениями, можно найти
разложение действительного числа в бесконечную дробь или произвольное
разложение действительного числа разбить на непериодическую и периодическую
части.
Поддерживаются также такие функции теории чисел, как Ramujan и Siegel.
В новой версии появились возможности для нахождения базисных элементов
для произвольных алгебраических расширений рациональных чисел.
Приближенные вычисления.
Это дополнение расширяет список встроенных функций программы Mathematica для приближенных численных расчетов.
Оно содержит средства подгонки функциями (полиномом, сплайнами,
тригонометрическими), численные версии некоторых аналитических функций ядра (ND, NLiunit, NResldue, NSencs), функции численного интегрирования
(CauchyPrincipalValue, Listintegrate, IntegrateInterpolationFunction), аппроксимации отношением полиномов,
поддержки численного решения дифференциальных уравнений (BesscIZeros, Butcher, Order-Star), а также альтернативный способ
нахождения корней (FindRout) с
использованием методов интервалов или интерполяции. В последнюю версию введены
пакеты для численного нахождения вычетов и разложений комплексных функций.
Статистика.
Это дополнение включает методы статистической обработки данных. В нем
содержатся функции известных непрерывных и дискретных статистических
распределений. В новую версию добавлены пакеты подгонки и сглаживания данных,
классической и робастной описательной статистики, линейной и нелинейной
регрессии с диагностикой.
Утилиты и разное.
Дополнение "утилиты" содержит команды для контроля времени
вычислений, оптимизации использования памяти и др. К "разному"
относятся те функции, которые трудно классифицировать, в частности функции,
расширяющие аудиовозможности системы, - модуляция звуковых волн и музыкальные
гаммы. В "разное" входят также календарные данные, физические постоянные,
единицы измерения физических величин, свойства химических элементов и, кроме
того, различные географические данные и даже функции для построения
географических карт. Пакеты и отдельные функции из них могут загружаться по
мере необходимости. Если же какой-либо пакет часто используется, то его можно
инициализировать при загрузке ядра программы. В новой версии доступна полная
документация по стандартным дополнениям в интерактивном режиме.
Профессиональные приложения.
Для программы Mathematica помимо
стандартных дополнений разработано большое количество профессиональных
приложений - пакетов расширяющих возможности программы в специальных областях.
Библиотека приложений в настоящее время содержит 23 различных пакета, из
которых 18 разработано корпорацией, а остальные - другими разработчиками.
Причем эта библиотека очень быстро пополняется.
Перечислим только некоторые из профессиональных приложений,
демонстрирующих их разнообразие: Structural Mechanics, Experimental Data Analyst, Time Series, Finance Essentials, Fuzzy logic и т.д.
Глава II. Освоение среды пакета Mathematica
.1 Решение
примеров с помощью программы Mathematica
На примерах применения нескольких функций Mathematica покажем, каким доступным и удобным
для пользователя является этот программный продукт.
Пример 1. Выполним пробное упражнение: вычислить сумму 59+73.
Напечатаем с помощью клавиатуры 59+73, затем нажмем Shift+Enter(или Insert);
загрузится ядро, и на экране появится ответ 132.Одновременно строка ввода и
вывода будут помечены, и все это будет выглядеть так:
In[1]:=59+73 (In- обозначает ввод)[1]=132(Out- вывод)
[1]-номер нашего обращения к системе.
Нумерация вводов и выводов позволяет удобно использовать полученные
результаты в дальнейших расчётах.
Пример2. Найти значение
In[2]:=N[Sqrt[17]]
Out[2]=4.12311
Sqrt-
употребляемое в Mathematica
обозначение квадратного корня. N
сообщает программе Mathematica, что
нам нужен числовой результат; по умолчанию Mathematica даёт его с шестью значащими цифрами.
In[3]:=N[Sqrt[17],16]
Out[3]=4.123105625617661
Отличие программы Mathematica от обычного калькулятора в том, что она может дать ответ с любым
количеством десятичных знаков. Здесь вычислен с 16 десятичными знаками.
Пример 3. Вычислить произведение 47*629.
In[4]:=47
629
Out[4]=29563
Вместо умножения Mathematica использует пробел или *.
Пример 4. Вычислить
In[4]:=571^3
Out[4]=186169411
Знак возведения в степень в программе Mathematica -это ^.
Пример 5. Разложить на простые множители число 333718.
In[5]:=FactorInteger[333718]
Out[5]={{2,1},{7,1},{11,2},{197,1}}
В каждой из пар, стоящих в фигурных скобках, на первом месте указан
простой множитель, а на втором - показатель степени, в которой этот множитель
входит в разложение. В данном примере ответ в обычной записи будет выглядеть
так:
2*7**197
Пример 6. Решить уравнение -5-10x+8=0
In[6]:=Solve[x^3-5x^2-10x+8==0,x]
Out[6]={{x->-2},{x->(7-}, {x->(7+}}
Solve-
оператор, служащий для решения алгебраических уравнений и систем уравнений. В
выводной строке даётся список корней уравнения.
Пример 7. Найти интеграл
In[7]:=x^2/(x-1)^5
Out[7]=
В строке In[8] записан вид
подынтегрального выражения, принятый в Mathematica.
In[8]:=Integrate[%,x]
Эта команда обозначает: проинтегрировать предыдущую функцию (%-означает
"предыдущее выражение")
Out[10]=
В выводной строке содержится выражение неопределенного интеграла;
постоянная интегрирования не ставится, но подразумевается.
Способность иметь дело с символьными формулами, а не только с числовыми
выражениями, является одной из наиболее сильных черт программы Mathematica. Появляется возможность использовать
эту программу при занятиях математикой, дифференциальным и интегральным
исчислением.
Mathematica делает многие алгебраические преобразования: раскрывает скобки в
алгебраических выражениях, разлагает на множители, упрощает выражения, решает
рациональные уравнения или системы уравнений. Она также может получать
алгебраические результаты для многих видов матричных операций.
Пример 8.In[11]:=7^25
Out[11]:=1341068619663964900807
Система Mathematica дает точный результат,
представленный в стандартном виде.
N[%]
,34106
Имеющаяся функция N
используется для получения приближенного результата. % ставится вместо
выражения введённого в предыдущей входной ячейке.
%//N
,34106
Это другая форма применения функции N; она равноценна предыдущей.
N[7^25,15]
,34106861966396
Числовой результат можно получить с любой степенью точности. В этом
примере вычислено с разрядностью 15 знаков.
Пример 9. Factor Integer [2350806750]
{{2,1},{3,2},{5,3},{17,1},{41,1},{1499,1}}
Число2350806750 разложено на простые множители; ответ .
Если нужно вычислить несколько арифметических выражений по шаблону, то
удобно использовать СПИСКИ. Список можно задать с клавиатуры, печатая его
элементы в фигурных скобках через запятую.
Пример 10. In[11]:=({3,4,5}+{2,1,8})*{7,2,4}
Out={35,10,52}
В этом примере вычислены такие выражения : (3+2)*7; (4+1)*2 и (5+8)*4.
Mathematica содержит очень обширный набор математических функций.
Аргументы всех функций в программе Mathematica заключаются в квадратные скобки.
Наименования встроенных функций в программе Mathematica начинаются с заглавных букв.
Круглые скобки используют для того чтобы указать группировку членов в
выражениях.
Пример 11.
In[12]:=
Log[3,6561]
Out[12]=8
Найдено значение 6561=8
Пример
12.
[13]:= N[Log[2Pi],30][13]=1.83787706640934548356065947281
Вычислено приближенное значение ln(2π) с точностью до 30 десятичных знаков.
Пример 13.
t=(x+1)^4-x^4-2 x-1
-2x-
Несмотря на то, что мы нажали Shift+Enter, Mathematica не стала выполнять никаких
математических действий, а лишь переставила члены, чтобы выражение приняло
стандартный для выходных ячеек вид.
Чтобы преобразовать выражение, содержащие переменные. Необходимо
использовать специальные функции Mathematica.
Expand[t]
x+6
С помощью функции Expand
раскрыты скобки в выражении t,
одновременно приведены подобные члены.
Factor[%]
x(1+x)(1+2x)
Предыдущее выражение разложено на множители при помощи функции Factor.
В программе Mathematica
предлагается альтернативная технология использования функций преобразования
математических выражений. Мы можем не набирать функцию Mathematica вручную с клавиатуры, а вместо этого
сделать следующее.
Подключите кнопочную палитру ALGEBRAICMANIPULATION. Затем, набрав выражение, выделите ячейку, в которой
оно находится, щелкнув левой кнопкой мыши по квадратной скобке этой ячейки
(скобка окрашивается в желтый цвет).Выделив ячейку .нажмите на кнопку с нужной
функцией на палитре. Выделенное выражение исчезает, а вместо него появляется
преобразованное выражение.
Пример 14
p=12 y^2+6xy-6xz-12yz+30y-30z
y+6xy+12-30z-6xz-12yz
FactorTerms[p]
(5y+xy+2-5z-xz-2yz)
[p,x]
(5+x+2y)(y-z)
В многочлене вынесен множитель не зависящий от x.
Collect[p,y]
+y(30+6x-12z)-30z-6xz
Многочлен представлен как сумма степеней переменного y, т.е. сгруппированы члены с одной и
то же степенью y.
Collect[p,{y,z}]
+y (30+6 x-12 z)+(-30-6 x) z
Сначала перечислены слагаемые, содержащие различные степени у, а затем
оставшиеся слагаемые сгруппированы по степеням z.
Эти функции имеют довольно много модификаций; с ними можно ознакомиться
используя Help.
Пример 15.
=Expand[(1+x-2y)^3+(1-z) (1+x+2y)^3]
Задан многочлен q,
причем в развернутом виде.
PolynominalQ[q,x]
False
Проведен тест: является ли q
многочленом относительно х?
Ответ: нет.
PolynominalQ[q,{x,y, z}]
True
Проведен тест: является ли q
многочленом от x,y, z?Ответ: да (истина)
Variables[q]
{x,y, z}
Дан список всех переменных многочлена q.
Length[q]
Определено число всех многочленов q.
Exponents[q,x]
Определена наивысшая степень переменной х в многочлене q.
Coefficient[q,x y^2]
-12z
Выписан множитель при в многочлене q.
Пример 16.
программа mathematica интерфейс информатика
f=x^6+2yx^4-4x^3-3x^2+8x-5
+8x-3
g=x^3+x^2-x+1
-x+
Введены многочлены f и g.
PolynominalQuotient[f,g,x]
-+-2y+x (2+2y)
Найдено частное от деления f на g.
PolynominalRemainder[f,g,x]
+x(-2-4y)+2y+(8+4y)
Найден остаток от деления f на g.
С помощью Mathematica можно
производить преобразования рациональных выражений.
Пример 17.
p=(x+y)^2/(x-y)+8x^3/(x+y)^2+(1-2y)^2
Введено рациональное выражение р.
ExpandNumerator[p]
-4y+4
Раскрыты скобки в числителях всех дробей( в том числе и у целой части).
ExpandDenominator[р]
+ +
Раскрыты скобки в знаменателях дробей.
Expand[p]
+
Раскрыты скобки в числителях, причём числители почленно поделены на
знаменатели.
ExpandAll[p]
+
Сделано то же, что в предыдущем примере, но раскрыты скобки в
знаменателях.
Пример 18.
In[19]:=Sqrt[-25]
Out[19]=5
I
Извлечение квадратного корня из отрицательного числа дает чисто мнимое
число. В данном случае = 5i .
Пример19.
In[22]:=Solve[2x^3-3x^2+6x+4==0,x]
Out[22]={{x ->-},{x->},{x->}}
Решено кубическое уравнение ; его точные корни даны в виде списка
правил подстановок.
Функция Solve служит для решения уравнений и
систем уравнений.
Пример 20.
[23]:=Solve[Abs[2-x]-Abs[5-2x]==0,x][23]={{x->-3},{x->}}
Пример
21.
[24]:=Solve[{2 x-y-z==4,3 x +4 y-2 z==11,3 x-2 y +4
z==11},{x,y,z}}[24]={{x->3},{y->1},{z->1}}
С помощью функции Solve
решена система уравнений:
Для решения систем линейных уравнений существует специальная функция LinearSolve[m,b], где m-матрица коэффициентов при
неизвестных в левой части системы, а b-список элементов столбца свободных членов в правой части.
m={{2,-1,-1},{3,4,-2},{3,-2,4}}
{{2,-1,-1},{3,4,-2},{3,-2,4}}
введена матрица коэффициентов при неизвестных.
b={4,11,11}
- введён столбец свободных членов.
LinearSolve[m,b]
{3,1,1} -получено решение системы.
Вычисление пределов, дифференцирование и интегрирование функций.
Для вычисления пределов последовательностей и функций служит функция Limit .
Limit[expr,x->]
Пример 22.
[25]:= Limit[(3 x^4-2)/Sqrt[x^8+3 x+4],x->Infinity][25]=3.
В этом примере взят предел =3
Операции дифференцирования осуществляют две функции: D(частного дифференцирования) и Dt(полного дифференцирования), имеющие
несколько различных форматов кодирования.
Пример
23.
[26]:=D[Sqrt[x],x] [26]= 1/.
Найдена производная .
Пример 24.
In[27]:=
Dt[x^2Cos[x],{x,3}]
Out[27]=-6 x Cos[x]-6 Sin[x]+Sin[x]
Вычислена третья производная функции cos x.
Пример 25.
In[28]:=
Out[28]=
-
Вычислен неопределенный интеграл
Наряду с этим способом набора входной ячейки можно применить функцию Integrate ( символьное интегрирование) и NIntegrate (численное интегрирование).
Списки являются эффективным средством работы с выражениями Mathematica в процессе численных и символьных
вычислений, также они необходимы для овладения языком программирования высокого
уровня.
Список (List) является выражением Mathematica, имеющим вид
List[или {
Где элементами могут быть любые выражения Mathematica, в том числе и списки. Примерами
списков являются матрицы.
Существуют четыре функции, порождающие списки: List, Range,
Table, Array.
Пример 26.
[29]:=Range[5]
Out[29]={1,
2, 3, 4, 5}- получен список первых пяти натуральных чисел.
In[30]:=Table[a,{5}]
Out[30]={a, a, a, a, a} -задан список пяти одинаковых элементов а.
In[31]:=Table[2^i, {I, 6}]
Out[31]={2,
4, 8, 16, 32, 64}-задан список первых шести натуральных степеней числа 2.
Арифметические операции над списками - покомпонентные
Пример 27.
In[32]:= {1,2,3}+{x,y,z}[32]={1+x, 2+y, 3+z}[33]:=
{1,2,3}x}[33]={x, 2x, 3x}[34]:= {1,2,3}{x,y,z}[34]={x,2y, 3z}
Пример 28.
In[35]:={1,2,3} * {x,y,z}[35}=x+2y+3z[36]:= {{a,b},{c,d}}*
{x,y}[36]={ax+by, cx+dy}
Список {{a, b}, {c, d}} представляет
собой матрицу и может быть визуализирован в привычной форме с использованием палетки (Palette): чтобы вывести список в матричной
форме, можно использовать команду MatrixForm
.2 Графические функции
Графика, как важнейшее средство визуализации вычислений, всегда была
козырной картой системы Mathematica и во многом способствовала ее высокой репутации как мирового лидера
среди систем компьютерной математики. Обширные графические возможности
достигаются при небольшом числе встроенных функций графики за счет их
модификации с помощью опций и директив. Благодаря этому Mathematica позволяет строить практически любые
виды графиков. Для просмотра и изменения опций графика можно (выделив ячейку с
графиком) воспользоваться описанным ранее инспектором опций, в котором есть
соответствующий раздел. Однако в этом уроке мы инспектором опций пользоваться
не будем - все необходимые опции будут вводиться в соответствующие функции так,
как это принято делать при программировании задач графики.
Двумерная графика
Графическая функция Plot
Концептуально графики в системе Mathematica являются графическими объектами, которые создаются
(возвращаются) соответствующими графическими функциями. Их немного, около
десятка, и они охватывают построение практически всех типов математических
графиков. Как уже отмечалось, достигается это за счет применения опций и
директив.
Поскольку графики являются объектами, то они могут быть значениями
переменных. Поэтому
Mathematica допускает следующие конструкции:
· Plot[Sin[x],{x,0,20}] - построение графика синусоиды;
· g:=Plot [Sin [x], {х, 0, 20} ] - задание объекта - графика синусоиды - с
отложенным выводом;
· g=Plot [Sin [x], {х, 0, 20} ] - задание объекта - графика синусоиды - с
немедленным выводом.
Начнем рассмотрение графических возможностей системы с построения
простейших графиков функций одной переменной вида у =f(x) или просто f(x). График таких функций строится на плоскости, то есть в
двумерном пространстве. При этом используется прямоугольная (декартова) система
координат. График представляет собой геометрическое положение точек (х, у) при
изменении независимой переменной (абсциссы) в заданных пределах.
Для построения двумерных графиков функций вида f(x) используется
встроенная в ядро функция Plot:
· Plot [f, {x, xmin, xmax}]
- возвращает объект, представляющий собой график функции f аргумента х в интервале от xmin до xmax;
· Plot[{f1, f2,...}, {x, xmin, xmax}]- возвращает объект в виде графиков
ряда функций fi.
Функция Plot используется для построения одной
или нескольких линий, дающих графическое представление для указанных функций f, f1, f2 и
т. д. На рис. 2.1 показано построение графика функции sin(x)/x без использования каких-либо опций
(точнее, с набором опций по умолчанию).
Рис.2.1. Построение двумерного графика
Тут виден как раз тот случай, когда масштаб графика по вертикали выбран
системой неудачно - часть графика сверху просто отсекается. В большинстве же
случаев применение функции Plot
позволяет получить вполне "удобоваримый" график.
Опции функции Plot
По мере усложнения задач, решаемых пользователем, его рано или поздно
перестанут устраивать графики, получаемые при автоматическом выборе их стиля и
иных параметров. Для точной настройки графиков Mathematica использует специальные опции
графических функций Для вывода их списка надо использовать команду Options [Plot].
Опции внутри.графических функций задаются своим именем name и значением value в виде name
-> value
Наиболее распространённые символьные значения опций:
· Automatic - используется
автоматический выбор;
· None - опция не используется;
· All - используется в любом случае;
· True - используется;
· False - не используется.
Многие опции могут иметь числовые значения. В сомнительных случаях
рекомендуется уточнять форму записи опций и их значений по оперативной
справочной системе. Рассмотрим примеры применения опций двумерной графики. Мы
уже отметили неудачный выбор масштаба в случае, представленном на рис. 2.1.
Очевидно, этот недостаток графика легко исправить, введя коррекцию масштаба по
оси у. Это и сделано в примере, показанном на рис. 2.2. Для изменения масштаба
использована опция PlotRange->{
-.25,1.2}. Нетрудно догадаться, что эта опция задает пределы отображения
графика по вертикали от -0.25 до 1.2.
Рис. 2.2. График функции sin(x)/x с масштабом, дающим его отображение в полном виде.
По умолчанию система строит графики, не указывая надписей ни по осям
координат (кроме букв х и г/), ни в верхней части графика. Такая надпись на
графике по центру сверху называется титульной. Рисунок 2.3 показывает
построение графика с надписями у координатных осей. Для создания таких надписей
используется опция Axes Label. После нее указывается список,
содержащий две надписи - одну для оси х, вторую - для оси у. Надписи
указываются в кавычках. Таким образом, задание опции выглядит следующим
образом: AxesLabel-> {"X value","f(x)}.
Рис. 2.3. График с надписями по координатным осям
С помощью опции Axes
со значением None можно убрать с графика отображение
осей. Вид получающегося при этом графика показан на рис. 2.4. При его
построении, кроме удаления осей, использована опция PlotLabel для вывода указанной в качестве ее
значения титульной надписи.
Рис. 2.4. График без координатных осей, но с титульной надписью
Часто возникает необходимость построения на одном рисунке нескольких
графиков одной и той же функции, но при разных значениях какого-либо параметра
- например, порядка специальных математических функций. В этом случае они могут
быть заданы в табличной форме. Рисунок 2.5 дает пример построения графиков функций
Бесселя.
Рисунок 2.5 иллюстрирует недостаток одновременного представления
нескольких графиков, создаваемого по умолчанию, - все графики построены
одинаковыми линиями, и не сразу ясно, какой график к какой функции относится.
Рисунок 2.6 показывает возможности управления стилем линий (густотой черного
цвета) графиков с помощью опции PlotStyle. Если желательно выделение линий разными цветами, удобно использовать в
качестве значения опции PlotStyle список вида {Hue [cl] , Hue [с2] ,...}, где параметры c1, с2, ... выбираются от 0 до 1 и задают цвет соответствующей
кривой.
Рис. 2.5. Семейство функций Бесселя на одном графике
Риc. 2.6. Построение графиков линиями
разного стиля
Применение других опций позволяет задавать массу свойств графиков,
например цвет линий и фона, вывод различных надписей и т. д.
Директивы двумерной графики
Еще одним важным средством настройки графиков являются графические
директивы. Синтаксис их подобен синтаксису функций. Однако директивы не
возвращают объектов, а лишь влияют на их характеристики. Используются следующие
основные директивы двумерной графики:
· AbsoluteDashing [ {dl, d2,...}]- задает
построение последующих линией пунктиром со смежными (последовательными)
сегментами, имеющими абсолютные длины dl, d2, ... (повторяемые циклически). Значения
длины di задаются в пикселях;
· AbsolutePointSize [d] - задает построение последующих точек графика в виде
кружков с диаметром d (в пикселях);
· AbsoluteThickness [d] - задает абсолютное значение толщины (в пикселях) для
последующих рисуемых линий;
· Dashing [{rl, r2,...}] - задает построение
последующих линий пунктиром с последовательными сегментами длиной rl, г2, ..., повторяемыми циклически,
причем ri задается как доля полной ширины
графика;
· PointSize [d] - задает вывод последующих точек графика в виде кружков с
относительным диаметром d,
заданным как доля общей ширины графика;
· Thickness [r] - устанавливает для всех последующих линий толщину г,
заданную как доля полной ширины графика.
Рисунок 2.7 показывает построение графика функции Бесселя в виде
пунктирной линии. Она задается с помощью графической директивы Dashing.
Риc. 2.7. Построение графика функции
Бесселя с применением графической директивы Dashing.
Построение графика по точкам - функция List Plot
Часто возникает необходимость построения графика по точкам. Это
обеспечивает встроенная в ядро графическая функция ListPlot:
· ListPlot [ {yl, у2,...}]- выводит график списка величин. Координаты х принимают
значения 1, 2, ...;
· ListPlot [{{x1, y1},
{х2, у2 },...}]-выводит график списка величин с указанными х- иy-координатами.
В простейшем случае (рис. 2.8) эта функция сама задает значения
координаты х= 0, 1, 2, 3, ... и строит на графике точки с координатами (х, у),
выбирая у последовательно из списка координат.
Рис. 2.8. Построение графика по точкам
Получение информации о графических объектах
Порой некоторые детали построения графиков оказываются для пользователя
неожиданными и не вполне понятными. Причина этого кроется во множестве опций,
которые могут использоваться в графиках, причем в самых различных сочетаниях.
Поэтому полезно знать, как можно получить информацию о свойствах графических
объектов. Порой небольшая модификация опций (например, замена цвета линий или
фона) делает график полностью удовлетворяющим требованиям пользователя. Информацию об опциях
графического объекта g дают следующие функции:
· FullAxes [g] - возвращает список опций координатных осей;
· Options [g] -
возвращает упрощенный список опций;
· FullOptions [g] - возвращает полный список опций;
· InputForm[g] - возвращает информацию о графике (включая таблицу точек).
Анализ графиков с применением этих функций может оказаться весьма
полезным при построении и редактировании сложных графиков.
Функции FullOptions и Options можно также использовать в следующем виде:
· Options [g, option] - возвращает значение указанной
опции option;
· FullOptions [g, option] -
возвращает значение указанной опции option.
В этом случае можно получить информацию по отдельной опции.
Перестроение и комбинирование графиков
При построении графиков часто требуется изменение их вида и тех или иных
параметров и опций. Этого можно достичь повторением вычислений, но при этом
скорость работы с системой заметно снижается. Для ее повышения удобно
использовать специальные функции перестроения и вывода графиков, учитывающие,
что узловые точки уже рассчитаны и большая часть опций уже задана. В этом случае удобно
использовать следующую функцию-директиву:
· Show [plot] - построение графика;
· Show [plot, option -> value] - построение графика с заданной опцией;
· Show[plotl,
plot2,...] - построение нескольких
графиков с наложением их друг на друга.
Директива Show полезна также
и в том случае, когда желательно, не трогая исходные графики, просмотреть их
при иных параметрах. Соответствующие опции, меняющие параметры графиков, можно
включить в состав директивы Show.
Другое полезное применение директивы - объединение на одном графике нескольких
графиков различных функций или объединение экспериментальных точек и графика
теоретической зависимости. Для этого также удобна функция Display-Together.
Рисунок 2.9 показывает создание двух графических объектов g1 и g2 с отложенным выводом, а затем построение графиков функций и
применение директивы Show
для создания объединенного графика. В этом случае директива Show вначале строит исходные графики
отдельно, а затем создает объединенный график. В приведенных ниже примерах
оставлен только объединенный график, другие удалены командой меню Edit > Clear.
Разумеется, при использовании директивы Show надо побеспокоиться о выравнивании масштабов графиков,
налагаемых друг на друга. Полезно особо обратить внимание на возможность
присваивания графиков функций переменным (в нашем примере - g1 и g2) в качестве значений. Такие переменные становятся
графическими объектами, используемыми директивой Show для вывода на экран дисплея.
Рис. 2.9. Построение двух графических объектов и их объединение
Директива Show часто
применяется, когда надо построить на одном графике кривую некоторой функции и
представляющие ее узловые точки (например, при построении кривых регрессии в
облаке точек исходных данных).
Примитивы двумерной графики
Примитивами двумерной графики называют дополнительные указания, вводимые
в функцию Graphics [primitives, options], которая позволяет выводить различные примитивные
фигуры без задания математических выражений, описывающих эти фигуры. Примитивы
могут выполнять и иные действия. Они заметно увеличивают число типов графиков,
которые способна строить система Mathematica. Имеются примитивы для построения окружностей, эллипсов, кругов, овалов,
линий и полигонов, прямоугольников и текстов.
Рисунок 2.10 показывает применение функции Graphics для построения одновременно трех
графических объектов: отрезка прямой, заданного координатами его концевых
точек, окружности с центром (0, 0) и радиусом 0.8 и текстовой надписи
"Привет!". Каждый объект задан своим примитивом. Из-за искажения
масштаба дисплеем компьютера окружность выглядит как эллипс.
Рис. 2.10. Построение трех графических объектов с помощью примитивов
двумерной графики
На другом рисунке (рис. 2.11) представлено построение пятиугольника,
заданного координатами его вершин.
Приведенные примеры поясняют технику применения графических примитивов.
Но они, разумеется, не исчерпывают всех возможностей этого метода построения
геометрических фигур и объектов. Все указанные примитивы используются при
построении как двумерных, так и трехмерных графиков.
Рис. 2.11. Построение пятиугольника.
Графики функций, заданных в параметрической форме
Построение графиков в полярной системе координат возможно двумя
способами. Первый способ основан на использовании обычной декартовой системы
координат. Координаты каждой точки при этом задаются в параметрическом виде: x = f x (t) и у
= f y (t), где независимая переменная t меняется от минимального значения £
min до максимального t mах с шагом dt. Особенно удобно применение таких функций для построения
замкнутых линий, таких как окружности, эллипсы, циклоиды и т. д. Например,
окружность радиусом R может быть
задана в следующей параметрической форме: х = R cos(t) и у
= R sin(t),
если t меняется от 0 до 2п. В общем случае
радиус также может быть функцией параметра t.
Для построения параметрически заданных функций используются следующие
графические средства:
· ParametricPlot [ {fx, fy}, {t, tmin, tmax}
]-строит параметрический график с координатами f х и f у
(соответствующими х и у), получаемыми как функции от t;
· ParametricPlot [{{fx, fy}, {gx, gy},...}, {t, tmin, tmax}] -строит графики нескольких параметрических кривых.
Функции f x, f у и т. д. могут
быть как непосредственно вписаны в список параметров, так и определены как
функции пользователя.
Рисунок 8.12 показывает построение параметрически заданной фигуры Лиссажу.
Она задается функциями синуса и косинуса с постоянным параметром R и аргументами, кратными t. Эти фигуры наблюдаются на экране
электронного осциллографа, когда на его входы X и Y
подаются синусоидальные сигналы с кратными частотами.
Рис. 2.12. Построение фигуры Лиссажу
На одном графике можно строить две и более фигур с заданными
параметрически уравнениями. На рис. 2.13 показан пример такого построения -
строятся две фигуры Лиссажу, причем одна из них является окружностью. Больше
двух фигур строить нерационально, так как на черно-белом графике их трудно
различить.
Теперь рассмотрим второй способ построения графиков в полярной системе
координат (рис. 2.14). Здесь каждая точка является концом радиус-вектора R(t), причем угол t
меняется от 0 до 2я. На рис. 2.14 функция R(t) задана как
функция пользователя R[t_] с использованием образца t_ для задания локальной переменной t в теле функции.
Изменение параметра R
позволяет заметно увеличить число отображаемых функций - фактически, их
бесконечно много. Помимо описанной фигуры на рис. 2.14 дополнительно построена
линия окружности единичного радиуса. Чтобы она имела правильные пропорции на
экране, задана опция AspectRatio->l.
Рис. 2.13. Построение на одном графике двух фигур Лиссажу
Рис. 2.14. Построение графика функции в полярной системе координат
Трехмерная графика
Трехмерная графика, называемая также ЗD-графикой, представляет в аксонометрической проекции объемное
изображение поверхностей или фигур, которые описываются либо функциями двух
переменных, либо параметрически заданными координатами объектов. В данном
разделе описаны многие способы построения трехмерных графиков, начиная от
простых контурных графиков и кончая графиками поверхностей и фигур с
функциональной окраской.
Построение контурных графиков
Контурные графики, или графики линий равных высот, используются для
отображения поверхностей на плоскости. Они удобны для выявления всех
экстремумов функций в пределах области графика. Такие графики являются линиями
пересечения поверхности с секущими горизонтальными плоскостями, расположенными
параллельно друг под другом. Они часто используются в картографии. Основными
функциями и директивами для построения контурных графиков являются следующие:
· ContourPlot[f,{x, xmin, xmax}, {у, ymin, ymax}] - порождает контурный график f как функции от х и у;
· ContourGraphics [array] - представляет контурный график массива array;
· ListContourPlot[array] - формирует контурный график из массива величин
высот.
Этих функций достаточно для построения практически любых монохромных
графиков такого типа.
Для управления возможностями графической функции ContourPlot используются опции, полный список
которых выводит команда Options
[ContourGraphics ]. Помимо уже рассмотренных ранее опций
используются следующие:
· ColorFunction - задает окраску областей между
линиями;
· Contours - задает число контурных линий;
· ContourLines - задает прорисовку явных (explicit) контурных линий;
· ContourShading - задает затенение областей между
контурными линиями;
· ContourSmoothing - задает сглаживание контурных
линий;
· ContourStyle - задает стиль рисуемых линий для
контурных графиков;
· MeshRange - задает области изменения х- и y-координат.
Рисунок 2.15 показывает построение контурного графика с окраской
промежуточных областей между линиями. Окраска обеспечивается опцией ColorFunction-> Hue. Опция ContourSmoothing -> True
задает сглаживание контурных линий.
Рис. 2.15. Контурный график поверхности sin(x у) с
закраской областей между линиями равного уровня оттенками серого цвета
Следующий пример (рис. 2.16) иллюстрирует эффективность применения опции ContourShading. Если задать ее значение равным False, то заполнение пространства между
линиями будет отсутствовать. Таким образом, в данном случае строятся только
линии равного уровня.
Рис. 2.16. Контурный график, представленный только линиями равного уровня
Иногда график оказывается более наглядным, если убрать построение
контурных линий, но оставить закраску областей между линиями. Такой вариант
графика более предпочтителен, если нужно наблюдать качественную картину. Для
построения такого графика надо использовать опцию ContourLine->False (рис. 2.17).
Рис. 2.17. Контурный график без пиний равного уровня
В данном случае используется вариант монохромной окраски областей между
линиями (PostScript). Он может оказаться предпочтителен,
например, если предполагается печать графика монохромным принтером.
Построение графиков плотности
Функцией двух переменных f(x, у) может описываться плотность
некоторой среды. Для построения графиков плотности используются следующие графические
функции:
· DensityGraphics [array] - является представлением графика плотности;
· DensityPlot[f, {х, xmin, xmax}, {у, ymin, ymax}]
- строит график плотности f как
функции от х и у;
· ListDensityPlot [array] - формирует график плотности из массива величин
высот.
С этими функциями используется множество (в основном уже рассмотренных)
опций. Их перечень можно получить с помощью функции Options.
Внешне график плотности похож на контурный график. Однако для него
характерно выделение элементарных участков (с равной плотностью) в форме
квадратиков (рис. 2.18).
Рис. 2.18. График плотности
График плотности (рис. 2.18) также дан в режиме PostScript. Цветная функциональная раскраска
таких графиков тоже возможна (см. опции, указанные выше для контурных
графиков).
Построение графиков поверхностей - функция Plot 3D
Функция двух переменных z = f(x, у) образует в пространстве некоторую трехмерную поверхность
или фигуру. Для их построения приходится использовать координатную систему с
тремя осями координат: х, у и z.
Поскольку экран дисплея плоский, то на самом деле объемность фигур лишь
имитируется - используется хорошо известный способ наглядного представления
трехмерных фигур с помощью аксонометрической проекции. Вместо построения всех
точек фигуры обычно строится ее каркасная модель, содержащая линии разреза
фигуры по взаимно перпендикулярным плоскостям. В результате фигура
представляется в виде совокупности множества криволинейных четырехугольников.
Для придания фигуре большей естественности используются алгоритм удаления
невидимых линий каркаса и функциональная закраска четырехугольников с целью
имитации бокового освещения фигуры.
Для построения графиков трехмерных поверхностей используется основная
графическая функция Plot 3D:
· Plot3D[f, {x, xmin, xmax), {у, ymin, ymax}]
- строит трехмерный график функции f переменных х и у;
· Plot3D[{f, s}, {x, xmin, xmax}, {y, ymin, ymax}] - строит трехмерный график, в котором высоту
поверхности определяет параметр f, а
затенение - параметр s.
На рис. 2.19 показан пример построения поверхности, описываемой функцией
двух переменных cos(x у) при х и у, меняющихся от -3 до 3.
Поверхность строится в виде каркаса с прямоугольными ячейками с использованием
функциональной окраски. Все опции заданы по умолчанию.
Этот график будем считать исходным для демонстрации его модификаций,
получаемых путем изменения опций.
Рис. 2.19. Пример построения поверхности cos(xy)
функцией Plot3D с опциями по умолчанию
Опции и директивы трехмерной графики
Для модификации трехмерных графиков могут использоваться многочисленные
опции и директивы, список которых дан в приложении. Их применение позволяет
строить большое число графиков различных типов даже при задании одной и той же
поверхности. В качестве примера рассмотрим отдельные кадры документа,
демонстрирующего влияние опций на вид трехмерной математической поверхности. На
рис.2.20 показана исходная поверхность (см. рис.2.19), построенная с
применением опции PlotPoint->50.
Это означает, что поверхность по каждой оси делится на 50 частей (в исходном
графике по умолчанию используется деление на 10 частей). Масштаб по вертикали
задается автоматически, с тем чтобы все высоты поверхности не ограничивались.
На рис. 2.21 показана та же поверхность, полученная с применением опции PlotRange-> {0, 0.5}, срезающей верхнюю
часть поверхности (точки с ординатами выше 0.5). График поверхности при этом
существенно меняется (сравните с рис. 2.20).
Опция Boxed -> False удаляет ограничивающие рамки, образующие
"ящик", в который вписывается построенная трехмерная поверхность
(рис. 2.22). Остаются лишь координатные оси.
Рис. 2.20. Поверхность рис. 2.19 с большим числом ячеек
Рис. 2.21. Математическая поверхность с отсеченной верхней частью
Рис. 2.22. Построение трехмерной поверхности без ограничительного
"ящика"
Рис. 2.23. Математическая поверхность, построенная с учетом перспективы
Опция Viewpoint позволяет включить при построении
отображение перспективы и изменять углы, под которыми рассматривается фигура.
Рисунок 2.23 иллюстрирует применение этой опции.
Опция Mesh -> False позволяет удалить линии каркаса фигуры. Нередко это
придает фигуре более естественный вид (рис. 2.24) - обычно мы наблюдаем такие
фигуры без линий каркаса.
Рис. 2.24. Математическая поверхность с удаленными линиями каркаса
В ряде случаев, напротив, именно линии каркаса несут важную информацию.
Система строит каркас трехмерных поверхностей двумя способами - с
использованием и без использования алгоритма удаления невидимых линий. Рисунок
2.25 показывает результат построения при использовании алгоритма удаления
невидимых линий. Нетрудно заметить, что в этом случае поверхность выглядит
достаточно эстетично даже без применения функциональной закраски.
Рис.2.25. Построение каркаса математической поверхности с использованием
алгоритма удаления невидимых линий
На рис. 2.26 показано построение каркаса без удаления невидимых линий.
Такой вид математическая поверхность имеет, если представить ее построенной из
тонких проволочек, висящих в пространстве. Это дает дополнительную информацию о
пространственной фигуре, но эстетически она выглядит хуже, чем фигура,
построенная с применением алгоритма удаления невидимых линий каркаса.
Таким образом, как и ранее, применение опций позволяет легко управлять
характером и типом графиков, придавая им вид, удобный для заданного применения.
На рис. 2.27 показан пример построения трехмерного графика с применением
одновременно нескольких опций.
Риc. 2.26. Построение каркаса
математической поверхности без использования алгоритма удаления невидимых линий
Риc. 2.27. Пример построения трехмерного
графика с несколькими опциями
Приведенные примеры самым наглядным образом показывают, насколько легко
модифицируются графики с помощью различных опций.
Графическая функция ListPlot3D
Часто трехмерная поверхность задается массивом своих высот (аппликат).
Для построения графика в этом случае используется графическая функция ListPlotSD:
· ListPlot3D [array] - строит
трехмерный график поверхности, представленной массивом значений высот;
· ListPlot3D [array, shades] - строит график так, что каждый
элемент поверхности штрихуется (затеняется) согласно спецификации shades.
Plot Joined -
дополнительная опция для ListPlot, указывающая, следует ли соединять линией точки, нанесенные на график.
Пример применения функции ListPlotSD показан на рис.2.28. График построен по данным таблицы tS, формирующей значения аппликат
поверхности, которая описывается функцией cos(xy).
Рис. 2.28. Пример применения функции ListPlotSD
2.3 Календарно-тематический план по информатике для 10 класса
МОУ "Рыбно-Слободская средняя общеобразовательная школа № 2"
УТВЕРЖДАЮ СОГЛАСОВАНО РАССМОТРЕНО
Г.Зайнетдинова на заседании МО
Директор школы Зам. директора по УВР протокол № . ..от
". . ." . . 2010года " . . ." . ..2010 года " .
. ." .. . .2010года
КАЛЕНДАРНО-ТЕМАТИЧЕСКОЕ ПЛАНИРОВАНИЕ
по предмету
Инфоматика и
информационные технологии
на 2010-2011учебный год
Класс 10
Учитель Альмеева Гульсина Минвалиевна
Всего 68 часов; в неделю 2 часа
Плановых контрольных занятий 3 за год
Административных контрольных занятий 1 час за год
Планирование составлено на основе программы:
Н. Д. Угринович „Информатика и информационные технологии: примерное
поурочное планирование", Москва, Школьная пресса 2002 г.
Учебник
Н. Д. Угринович, „Информатика и информационные технологии 10-11
класс", Москва, Бином. Лаборатория Знаний 2003 г.
Дополнительная литература
Угринович Н.Д., Босова Л.Л., Михайлова Н.И. „Практикум по информатике и
информационным технологиям", учебное пособие для общеобразовательных
учреждений, Москва, Лаборатория Базовых Знаний, 2001 г.
Семакин И. Г., Хеннер Е. К. „Информатика. Задачник-практикум" том 1,
2, Москва, Лаборатория Базовых Знаний, 2001 г.
Календарно-тематическое планирование
Дата
|
Раздел
|
Умения
|
Тема учебного
занятия
|
Количество часов
|
|
Техника безопасности
правила поведения в кабинете ИВТ
|
|
Вводное занятие. Техника
безопасности и правила поведения в кабинете ИВТ.
|
1
|
|
Единицы
измерения информации
|
Решать задачи по
определению количества информации
|
Информатика,
информация, свойства информации
|
1
|
|
|
|
Единицы
измерения информации
|
1
|
|
|
|
ASCII-коды
|
1
|
|
|
|
Единицы измерения скорости
передачи или приёма информации
|
1
|
|
Магистрально-модульный
принцип устройства компьютера
|
Иметь представление о
внутреннем устройстве компьютера и назначении устройств компьютера
|
Состав
компьютера
|
1
|
|
|
|
Процессор, ОЗУ,
ПЗУ
|
1
|
|
|
|
FDD, HDD
|
1
|
|
|
|
CD-ROM, CD-R,
CD-RW
|
1
|
|
|
|
Магистрально-модульный
принцип устройства компьютера
|
1
|
|
|
|
Устройства ввода
информации
|
1
|
|
|
|
Устройства вывода
информации
|
1
|
|
Основы работы на
компьютере
|
Уметь правильно включать и
выключать компьютер. Уметь управлять манипулятором Мышь
|
Порядок включения
компьютера. Способы запуска программ на Рабочем столе. Порядок выключения компьютера
|
1
|
|
|
|
Работа с
программой „Мышь"
|
1
|
|
|
|
Работа с
программой „Мышь"
|
1
|
|
|
|
Работа с
программой „Шарики"
|
1
|
|
Клавиатура
|
Уметь вводить текстовую
информацию с клавиатуры
|
Группы клавиш.
Функциональные клавиши
|
1
|
|
|
|
Контрольные
клавиши
|
1
|
|
|
|
Контрольные клавиши.
Клавиши дополнительной клавиатуры
|
1
|
|
|
|
Работа с программой
„Клавиатурный тренажёр"
|
1
|
|
|
|
Работа с программой
„Клавиатурный тренажёр"
|
1
|
|
|
|
Контрольная
работа №1
|
1
|
|
Знакомство с операционной
системой Windows
|
Уметь изменять
размеры окон
|
Рабочий стол.
|
1
|
|
|
|
Управление
окнами
|
1
|
|
Калькулятор
|
Работать с
программой Калькулятор
|
Калькулятор.
|
1
|
|
Системы
компьютерной математики
|
Работать с
пакетами СКМ.
|
Первое знакомство с СКМ Mathematica
|
1
|
|
|
|
Меню СКМ
Mathematica
|
1
|
|
|
|
Практическая работа №1.Тема
"Решение примеров по математике"
|
1
|
|
|
|
Практическая работа №2.Тема
"Построение дву- и трехмерных графиков"
|
1
|
|
Операционная
система Windows
|
Знать начначение и функции
операционной системы
|
Операционная система.
Назначение. Функции. Резидентные и транзитные команды операционной системы
|
2
|
|
|
|
Различие
операционных систем
|
1
|
|
Операционная
система MS DOS
|
Уметь задавать имена в
операционной системе MS DOS.
Использовать резидентные и транзитные команды операционной системы MS DOS. Создавать каталоги и файлы, копировать,
перемещать, удалять файлы. Форматировать диски. Создавать системную дискету.
|
Файлы. Имя файла.
Расширение файла
|
2
|
|
|
|
Иерархическая
структура хранения файлов
|
2
|
|
|
|
Полное имя файла
|
1
|
|
|
|
CD
|
1
|
1
|
|
|
|
RD
|
1
|
|
|
|
DIR
|
1
|
|
|
|
Маска файлов.
Метасимволы
|
1
|
|
|
|
Маска файлов.
Метасимволы
|
1
|
|
|
|
TYPE
|
1
|
|
|
|
COPY
|
2
|
|
|
|
RENAME
|
1
|
|
|
|
ERASE
|
1
|
|
|
|
FORMAT
|
3
|
|
|
|
SYS
|
1
|
|
Norton Commander
|
Уметь выполнять основные
операции с файлами и каталогами с помощью программы-оболочки
|
Понятие
"программа-оболочка".
|
1
|
|
|
|
Просмотр содержимого
накопителей. Файлы и каталоги в NC. Дерево каталогов и его
просмотр.
|
1
|
|
|
|
Работа с файлами и
каталогами средствами NC: копирование, создание, удаление, перемещение. Использование команд меню и
функциональных клавиш.
|
2
|
|
|
|
Контрольная работа №2
|
1
|
|
Операционная
система Windows
|
Уметь настраивать Рабочий
стол, Панель управления. Выполнять основные операции с файлами и папками с
помощью программы Проводник
|
Объекты Рабочего стола.
Свойства Рабочего стола
|
1
|
|
|
|
Элементы
управления Рабочего стола
|
1
|
|
|
|
Приёмы управления.
Преретягивание, протягивание, специальное перетаскивание
|
1
|
|
|
|
Настройка Панели
управления
|
1
|
|
|
|
Проводник. Имена файлов и
папок в Windows
|
1
|
|
|
|
Особенности
корневой папки
|
1
|
|
|
|
Интерфейс
проводника. Навигация.
|
1
|
|
|
|
Структура окна
папки
|
1
|
|
|
|
Оформление окна
папки
|
1
|
|
|
|
Создание файла,
папки
|
1
|
|
|
|
Копирование, перемещение,
удаление файлов и папок
|
2
|
|
|
|
Копирование, перемещение,
удаление файлов и папок с помощью Буфера обмена
|
1
|
|
|
|
Контрольная
работа №3.
|
1
|
|
|
|
Итого
|
68
|
Заключение
В связи с повсеместным распространением компьютеров и появлением систем
компьютерной математики, в частности Mathematica, можно и нужно существенно изменить характер и уровень
преподавания школьных курсов физики и математики. В соответствии с целью и
задачами получены следующие результаты:
Mathematica делает изучение физики и математики более легким, поскольку избавляет
учащегося от массы рутинной вычислительной работы.
Mathematica делает изучение физики и математики более интересным, поскольку
позволяет рассмотреть множество интересных и ранее недоступных вопросов на
очень высоком и часто профессиональном уровне.
Mathematica интуитивно понятен, легко осваивается на практике и не требует для
изучения и применения чтения толстых книг, ведения конспектов и заучивания
сложных правил.
Mathematica соответствует психологии школьника в том смысле, что решение
интересующей проблемы можно получить в течение короткого периода времени, а не
тренировать у компьютера усидчивость.
Использование в преподавании Mathematica позволяет:
1
значительно
увеличить объём упражнений и индивидуальных заданий, необходимых для
приобретения глубоких и устойчивых знаний, умений и навыков;
2
экономить учебное
время, как для преподавателя, так и для студента.
3
существенно
повышает эффективность самостоятельной работы.
В процессе выполнения выпускной квалификационной работы я усвоила лишь
некоторые возможности программы Mathematica, но даже небольшой объем материала позволил мне убедиться в колоссальных
возможностях данной программы, которая позволяет выполнять сложные расчеты,
решать уравнения из всех областей математики и физики, строить дву- и
трехмерные изображения графиков (также создавать изображения трёхмерных
графических объектов, просто задавая их списками графических примитивов).
Система интерактивна, она гибка и универсальна, поэтому может быть использована
всеми желающими, как школьниками, так и преподавателями и другими специалистами
практикующими математические методы в своей работе. В данной работе показаны
основные возможности использовании системы Mathematica в процессе изучения математики
школьного курса. Мною разработано:
краткое описание теоретических и практических сведений для изучения
системы Mathematica
практические задания " Примеры заданий к элективному курсу по СКМ Mathematica" для 10 класса.
разработана лабораторная работа для учащихся 10 класса "Построение и
преобразования графиков".
разработаны решения примеров по разделам высшей математики для студентов
2 курса ССУЗов.
разработано календарно-тематическое планирование по предмету
"Информатика и информационные технологии" для 10 класса.
Настоящая разработка может служить одновременно руководством, учебным
пособием и справочником по Mathematica. Преподаватель, опираясь на предлагаемую методику обучения, может
достаточно просто модифицировать ее с учетом своих возможностей и реализовать
собственный маршрут изучения предлагаемых тем. На основании выше изложенного
считаем, что основная цель работы достигнута. И хотя ограничения на объём ВКР
не позволил изложить материал более подробно (полный охват указанных разделов
высшей математики привёл бы к значительному увеличению объёма работы), тем не
менее, мы надеемся, что работа представляет в целом достаточно полное пособие
для успешной работы преподавателя высшей математики в современном вузе.
Список литературы
. Т. В. Капустина Компьютерная система Mathematica 3.0 для пользователей. Справочное
пособие. -М.:СОЛОН-Р, 1999. -240с.:ил.
. Дьяконов В. П. Mathematica5.1/5.2/6.
Программирование и математические вычисления. -М.:ДМК-Пресс, 2008. -576с.:ил.
. Методы внедрения электронной системы Mathematica в процесс персонализированного
математического образования//Актуальные проблемы современной науки: Труды 1-го
Международного форума (6-й Международной конференции)молодых учёных и
студентов. Гуманитарные науки.Ч.35:Педагогика/Научн.ред.проф.А.С.Трунин и
др.-Самара: СГТУ,2005.-С.100-103.
. Ершова А..П. Концепция использования средств
вычислительной техники в сфере образования: Информатизация
образования.-Новосибирск, 1990.-58с.
. Внедрение электронной системы Mathematica в школьное профильное математическое
образование: Методические рекомендации/Авт.-сост.С.В.Кочеткова, -Ряз.гос.ун.
им. С.А.Есенина.-Рязань,2006.-22с.
. Электронная система Mathematica в алгебраическом образовании
школьников и студентов//Информатика и образование.-2006. №2.-С.58-64.Солонина
А.Г.
. Элективные курсы в профильном обучении:
Образовательная область "Информатика"/Министерство образования
РФ-Национальный фонд подготовки кадров.-М.:Вита -Пресс,2004.-112с. -ISBN 5-7755
. Прокопеня А.Н.,Чичурин А.В. Применение системы Mathematica к решению обыкновенных
диффренциальных уравнений: Учебное пособие.Мн.: БГУ, 1999.-265с.
Приложение 1
Примеры заданий к элективному курсу по СКМ "Mathematica" для 10 класса.
а) Задания по теме "Работа с выражениями"
)Вычислитe 2-10
с точностью 20 знаков после запятой.
) Упростите выражение .
3) Разложите на множители выражение
x6-18x5+135x4-540x3+ 1215x2-1458x+729.
) Найдите остаток от деления многочлена P1(x) на x-1.
б) Задания по теме "Создание графических изображений" Постройте
графики следующих функций, используя различные параметры, задающие цвет и тип
линий, добавьте подписи к рисункам и сохраните их в формате GIF:
а) б)
в) Задания по теме "Решение систем уравнений и неравенств"
) Решите
системы уравнений:
11а)
|
|
1б)
|
1б)
|
2) Решите
неравенства:
2а)
|
;
|
2б)
|
.
|
3) Найдите приближенно наименьший положительный корень уравнения
/x2=5 cos x.
) Найдите с точностью 12 знаков после запятой все корни уравнения
(1 - x)/(x4 + 1) = sin x, принадлежащие
отрезку [-1,4].
г) Задания по теме "Пределы и ряды"
Вычислите пределы: а) ; б) .
Найдите односторонний предел .
Исследуйте функции на непрерывность: а) ; б) .
д) Задание по теме "Дифференцирование и интегрирование"
) Найдите производные следующих функций: а) 31-2cos x; б) (sin x)cos x.
) Найдите первообразную функции sin(2x).
) Вычислите определенный интеграл от функции x2 по отрезку [0; 1].
е) Задания по теме "Операции с матрицами"
) Найдите произведение матриц A и B, где
, .
) Транспонируйте матрицу B и
найдите ее определитель.
) Решите систему уравнений матричным способом:
Итоговая контрольная работа по элективному курсу "Mathematica".
) Вычислите первую производную функции tg2(x4 - 2).
) Найдите предел при x
-> 0 функции (3x - sin x)/tg 2x.
) Найдите одну из первообразных функции cos2 x.
) Вычислите произведение матриц A.B и B.A, где
5) Найдите определители матриц C и D.
6) Для матрицы D
найдите обратную, после чего проверьте, что в результате их произведения
получается единичная матрица.
) Решите следующую систему уравнений матричным способом
Приложение 2
Лабораторная
работа №1 (3 часа)
Построение и
преобразование графиков
Цель: научится строить графики функций в пространстве и на плоскости,
заданных неявно, в параметрической форме, в полярных координатах. Ход работы:
Задание 1. Построение графиков функций на плоскости
Задание 2. Построение графиков функций в пространстве
Задание 3. Построение графиков функций, заданных неявно
Задание 4. Построение кривых, заданных в полярных координатах
Задание 5. Построение кривых, заданных параметрически
Задание 1. Построение графиков функций на плоскости
Для построения графиков функций y=f(x) используется функция Plot. Она задается в следующих формах:
Plot[f,{}] - строит график функции y=f(x) при х
изменяющемся в интервале от до ;
Plot[{},{}] - строит графики ряда функций
Например, построим график функции при х изменяющимся от -10 до 10.
Рисунок 1
a)
Построить графики следующих функций (интервал изменения х выбрать
самостоятельно):
y = tg x + ctg x; y = 2 cos 3x; y = .
) Построить графики в одной координатной плоскости. Сделать вывод об их
относительном расположении.
, ,= sin 2x, y = -3 sin 2x, y = sin x + cos x.
) По графику функции определить, является ли она четной или нечетной:.
Задание 2. Построение графиков функций в пространстве
Для построения графиков функций z=f(x;у) используется функция Plot3D. Она
задается в следующих формах:
Plot3D[f,{},{}] - строит график функции z=f(x;у) при х, изменяющемся в интервале
от до ;
Например, построим график функции при х, изменяющемся от -10 до 10, и у,
изменяющемся от -10 до 10.
Рисунок 2.
Построить график функций:
Задание 3. Построение графиков функций, заданных неявно
Для построения неявных функций f(x,y)=0 необходимо подгрузить пакет ImplicitPlot стандартного дополнения. Для этого
введите следующую команду и нажмите клавиши Shift+Enter:
<<Graphics`ImplicitPlot`
После подгрузки появится горизонтальная черта. Затем вводим нужную
команду. Построим, например, график функции петлевой параболы .
Рисунок 3.
Постройте графики функций, заданных неявно:
а) полукубическую параболу ;
b)
астроиду ;
с) декартов лист .
Чтобы построить на одном чертеже несколько графиков функций, заданных
неявно, используем функцию ImplicitPlot[{},{}], где - функции, заданные неявно.
Задание 4. Построение кривых, заданных в полярных координатах.
Для этого подгрузим пакет Graphics:
<<Graphics`Graphics`
Используем функцию PolarPlot[,{}]
Построим кардиоиду .
Рисунок 4.
а) Постройте следующие кривые, заданные в полярных координатах:
трехлепестковую розу
Для построения некоторых кривых, заданных в полярных координатах,
используем PolarPlot для нескольких функций:
PolarPlot[{},{}], где - функции, заданные в полярных
координатах.
b)
Постройте кривые, заданные в полярных координатах, как совокупность двух
функций: строфоиду
Задание 5. Построение кривых, заданных параметрически.
Для построения графиков функций на плоскости, заданных параметрически используется ParametricPlot[{},{}]. Функция ParametricPlot3D[{},{}] изображает поверхность в трехмерном пространстве, заданную
параметрически , , .
Приложение 3
Разработки
решения примеров по разделам высшей математики для студентов 2 курса ССУЗ
1. Линейная алгебра.
1.Определители.
Вычисление определителей.
1.1. Вычислить определитель матрицы четвертого порядка разложением по
1-ой строке.
Введем матрицу .
По формуле вычисления определителя разложением по строке вычислим
определитель матрицы , воспользовавшись функцией Minors.
Функция вычисляет определитель минора матрицы размера , получающегося вычеркиванием из - ой строки и -ого столбца.
Очистим переменную .
1.2. Вычислить определители матриц 2-го и 3-го порядков.
Вычислим определители матриц 2-го и 3-го порядков в общем виде.
2. Матрицы.
Действия с матрицами.
.1.Вычислить
матрицу , где и .
Введем матрицы и :
В программе Mathematica есть
несколько способов ввести матрицу. Первый способ: щелкните по выберите пункт и введите число строк и столбцов.
Второй способ: непосредственно ввести с клавиатуры. Матрицу введем первым способом, а матрицу - вторым:
Вычислим матрицу .
Команда выдает результат в матричной форме, точка между матрицами
означает матричное умножение, если эту точку убрать, Mathematica будет пытаться произвести
поэлементное умножение.
Хорошим тоном считается очищать значения
переменных, которые не нужны для дальнейших вычислений.
2.2.Умножение матрицы на единичную, скалярную и матрицы и .
Введем матрицу .
Введем матрицы единичную и скалярную с помощью встроенной функции IdentityMatrix.
Функция определяет единичную матрицу размера .
Умножение матрицы на единичную матрицу:
Умножение матрицы на число на скалярную матрицу дает один и тот же результат.
Таким образом, умножением матрицы на скалярную матрицу можно реализовать
операцию умножения матрицы на число.
Перестановка строк и столбцов матрицы осуществляется умножением на
матрицы специального вида. Покажем это на примере матрицы .
Определим матрицы и :
Перестановка двух строк матрицы .
Перестановка двух столбцов матрицы .
Очистим значения и .
3 .Методы
решения систем линейных алгебраических уравнений.
3.1. Решить систему линейных уравнений .
Перепишем систему в матричном виде . Введем матрицу и вектор .
Проверим, что матрица невырождена.
Из курса линейной алгебры известно, что решение ищется в виде .
В программе Mathematica есть
встроенная функция для решения матричных уравнений LinearSolve.
Очистим перменные и .
3.2. Найти по формулам Крамера решение системы линейных уравнений.
Введем матрицу и вектор правой части .
Вычислим определитель матрицы .
Определитель отличен от нуля, следовательно система имеет единственное
решение.
Вычислим по формулам Крамера это решение. Сформируем матрицы Крамера.
Заменим i-ый столбец матрицы di столбцом b.
Посмотрим, например, на получившуюся матрицу .
3.3. Решить систему линейных уравнений методом Гаусса.
Введем матрицу системы a и матрицу правой части b.
Загрузим пакет .
Символ , используемый в названии пакета, - это обратный апостроф, а
не просто апостроф.
Сформируем расширенную матрицу системы с помощью функции AppendRows.
Приведем эту матрицу к ступенчатому виду с помощью функции RowReduce.
Последний столбец получившейся матрицы - решение системы, выделим это
решение, использовав функцию TakeColumns.
2.Математический анализ.
Пример 1. Сходящаяся последовательность .
Задана последовательность . Доказать, что . Для этого необходимо найти номер , начиная с которого выполняется
неравенство .
Доказать, что
Введем последовательность
Докажем по определению, что предел этой последовательности при равен . Найдем такой номер , начиная с которого разность между
членами последовательности и 1 по модулю меньше . То есть .
Следовательно, при неравенство выполняется.
Нарисуем график с помощью функции Plot.
Можно непосредственно проверить с помощью встроенной функции Limit, что предел последовательности равен
.
Пример 2. Бесконечно большая последовательность.
Задана последовательность . Доказать, что . Для этого необходимо найти номер N(M), начиная с которого выполняется неравенство .
Доказать, что
Введем последовательность
Найдем такой номер , что для всех выполняется
Следовательно, при неравенство выполняется.
Нарисуем график с помощью функции Plot.
Можно непосредственно проверить с помощью встроенной функции Limit, что предел последовательности равен
.
Пример 3. Вычисление производных
Вычислить по определению производную функции
Введем функцию
Вычислим производную этой функции по определению в точке
Производная функции в точке существует и равна ,
Вычислим производную этой функции в произвольной точке
Вычислим производную при . Так как не определена в этой точке, вычислим предел
Пример 4. Построение секущей графика функции
Построить секущую графика функции через точки (0, -1) и (1, 0).
Введем функцию
Запишем уравнение секущей
Нарисуем графики функции и секущей
Пример 5. Построение касательной и нормали к графику функции
Построим касательную и нормаль к графику функции в точке (1, 0). Покажем, что
касательная является предельным положением секущей.
Построить касательную и нормаль к графику функции в точке
Введем функцию
Запишем уравнение касательной в точке
Построим график функции и касательной
Чтобы проиллюстрировать определение, что касательная является предельным
положением секущей, построим на одном графике касательную и секущие с условием,
что вторая точка, через которую проходит секущая, приближается к точке касания.
Запишем уравнение секущей, проходящей через точки и
Построим график секущих, для равных и ,
Запишем уравнение нормали в точке
Нарисуем график функции, касательной и нормали