Статья «Изучаем математику с помощью языка программирования Maple. Методические рекомендации»
Информатика и математика
Скачать:
Предварительный просмотр:
Мараник Любовь Викторовна
Учитель математики и информатики
ГКОУ КО «СОШ при ИУ УИС»
(территориальное структурное
Подразделение в г.Мариинск)
.
Изучаем математику с помощью языка программирования Maple
Методические рекомендации
Развитие пространственных представлений школьников является одной из важных задач школьного курса геометрии. В процессе обучения возникает ряд проблемных ситуаций в области оперирования учениками пространственными представлениями, так как многие схематические изображения статического характера, используемые в геометрии, требуют в процессе их чтения оперирования сложными динамическими пространственными образами [12].
Компьютер может помочь обучающемуся сделать первый шаг, позволив увидеть процесс формирования искомого образа на экране.
Современная индустрия в области программного обеспечения персональных компьютеров предлагает широкий выбор программ для построения геометрических объектов и наглядного представления их специфических свойств. Одной из наиболее популярных программ такого рода является пакет компьютерной математики Maple.
Он обладает большими возможностями программирования графики, вплоть до создания анимационных графических клипов. [5]
Основные возможности Maple
Среди особенностей Maple следует, прежде всего, отметить его возможности в области символьных вычислений и преобразований. С помощью символьного процессора пакета Maple можно получать решения математических задач в общем, т. е. символьном виде. Это означает, что на запрос пользователя пакета найти неизвестное из уравнения компьютер выдаст ответ . Такая форма ответа невозможна при использовании языков программирования, традиционно изучаемых в рамках школьного курса, без дополнительных усилий.
Система Maple способна выполнять быстро и численные расчеты. Кроме того, Maple обладает превосходными графическими возможностями, что позволяет использовать этот пакет в качестве средства графической визуализации при моделировании сложных физических объектов, систем и устройств и создании анимированной графики (например, трехмерных изображений фигур, их движений).
Maple является сложной интегрированной системой. Пакет включает в себя ядро алгоритмов и правил преобразования математических выражений, задействованных при работе численного и символьного процессоров. Это ядро состоит из процедур, написанных на языке Си, содержит сотни базовых функций и алгоритмов символьных преобразований и выполняет большинство базисных операций.
В состав пакета входит библиотека встроенных и дополнительных функций. Она содержит также ряд подключаемых специализированных пакетов. Язык, используемый для общения ученика с библиотекой, называют Maple – языком, который, являясь языком для интерактивного общения с системой, представляет собой мощный язык программирования.
Результативным может стать использование редактора, входящего в состав пакета, для подготовки и редактирования документов и программ. Редактор удобен для создания электронных версий учебных пособий в силу возможности структурирования текста, а также снабжения его графическими иллюстрациями и анимационными клипами, сделанными средствами Maple.
В пакет встроена мощная справочная система с многочисленными примерами. Maple – это пользовательский пакет. Это значит, что система Maple способна решить огромное число математических задач вообще без какого-либо программирования в общепринятом смысле этого понятия.
Maple имеет входной язык, ориентированный на решение именно математических задач. Этот язык служит для задания входных данных для последующей их обработки. Достаточно лишь описать алгоритм решения задачи и разбить его на отдельные вопросы.
Но следует отметить, что алгоритмы многих типовых задач различных разделов математики уже реализованы в виде функций и команд системы. Приступая к работе с пакетом Maple, мы должны понимать, что, прежде чем применять свои познания в области программирования, необходимо внимательно изучить справочный материал по пакету. Это значительно упростит работу, так как по большинству разделов математики уже созданы специализированные программы, позволяющие решать достаточно сложные математические задачи простым вызовом команды из библиотеки.
Если вы не нашли необходимого эквивалента для алгоритма своей задачи среди уже готовых команд и хотите автоматизировать свое общение с программой, вы можете использовать язык процедурного программирования – Maple – язык. Этот язык имеет вполне традиционные средства структурирования программ: операторы цикла, условия и др., команды управления внешними устройствами, функции, процедуры и т. д. Он включает в себя все команды и функции входного языка, ему доступны все специальные операторы и функции.
Система Maple в настоящее время имеет несколько версий, и поэтому необходимо быть внимательным к номеру релиза, так как иногда изменения на уровне Maple – языка бывают существенными [11].
Графические возможности Maple
Изучение поведения функций и построение их графиков является важным разделом математики. Свободное владение техникой построения графиков часто помогает решать многие задачи и порой является единственным средством их решения. Кроме того, умение строить графики функций.
Опыт работы показывает, что материал, связанный с построением графиков функций, в средней школе изучается недостаточно полно с точки зрения требований, предъявляемых на вступительных экзаменах в различных высших учебных заведениях. Поэтому задачи на построение графиков нередко вызывают затруднения у поступающих.
В Maple могут быть реализованы многочисленные варианты математических графиков. Строятся как графики простых функций в декартовой системе координат, так и графики, показывающие реалистические образы сложных, пересекающихся в пространстве фигур с их функциональной окраской. Графические функции заданы таким образом, что обеспечивают построение типовых графиков без какой – либо особой подготовки. Для этого необходимо лишь указать функцию, график которой строится, и пределы изменения независимых переменных. Однако с помощью дополнительных необязательных параметров можно существенно изменить вид графиков – например, настроить стиль и цвет линий, вывести титульную надпись, изменить вид координатных осей и т. д.
В само ядро Maple встроено ограниченное число графических команд. Прежде всего, это команды plot и plot3d, используемые для построения двумерных и трехмерных графиков соответственно. Эти команды позволяют строить графики наиболее распространенных типов.
В зависимости от представления входных параметров команда plot позволяет строить графики функций одной переменной, параметрически заданных функций, набора точек и т. д. Например, для построения графика функций одной переменной, заданных явно, команда plot имеет вид:
plot ({func1, func2, …}, x = a .. b, y = c .. d,
где
- func1, func2, … - выражения, зависящие от переменной x,
- a .. b – интервал изменения (отрезок на оси абсцисс),
- c .. d – выводимый интервал по оси ординат,
В трехмерном случае существует многофункциональная команда:
plot3d {ex1,ex2,…},var1=a..b, var2=c..d,
С помощью дополнительных необязательных параметров
Приведем перечень некоторых из этих параметров:
- title = “Name” – заголовок рисунка;
- axes = val – тип выводимых осей координат.
Величина val может принимать одно из значений:
- NORMAL – обычные оси координат,
- BOXED – график заключается в рамку с нанесенной шкалой,
- FRAME – оси с центром в левом нижнем углу рисунка,
- NONE – вывод без нанесения осей.
Scaling = val – тип масштаба рисунка. Величина val может принимать одно из значений:
- CONSTRAINED – график с одинаковым масштабом по осям;
- UNCONSTRAINED – график масштабируется по размеру окна.
Style = POINT / LINE / PATCH – вывод точками, линиями или поверхностями.
Color = colorvalue – цвет вывода.
Thickness = n – толщина линии, где n = 1, 2, 3, … .
Linestyle = n – тип выводимой линии (непрерывная, пунктирная, штрихпунктирная и др.), по умолчанию – непрерывная при n = 1.
Для построения Maple – предложений нужны знак равенства (=) при формировании уравнений и знак присвоения (:=) при задании значений переменных.
Значительно расширяет графические возможности системы Maple использование пакетов plots и plottools. Эти пакеты должны быть загружены командами with(plots) и with(plottools) соответственно [11].
Рассмотрим основные математические процедуры и функции, используемые в Maple (таблица 1) [9].
Таблица 1
Функция | Описание |
arccos (x) | Арккосинус |
arcsin (x) | Арксинус |
arctan (x) | Арктангенс |
arccot (x) | Арккотангенс |
sin (x) | Синус |
cos (x) | Косинус |
tan (x) | Тангенс |
cot (x) | Котангенс |
Функция | Описание |
ln (x) | Натуральный логарифм |
log [b] (x) | Логарифм x по основанию b |
log 10 (x) | Десятичный логарифм |
exp (x) | Экспоненциальная функция |
sqrt (x) | Корень квадратный из x |
Опишем параметры, которые допускаются использовать при отображении двумерных графических структур (таблица 2) [9].
Таблица 2
Параметр | Описание |
adaptive | При отображении графика функции на интервале, этот интервал разбивается сначала на определенное число подынтервалов (их количество определяется параметром numpoints), а по соответствующим точкам создается эскиз графика. Если необходимо, при активизированном параметре adaptive (значение true по умолчанию) такие подынтервалы разбиваются еще на подынтервалы, которые снова разбиваются на подынтервалы и т. д. По умолчанию так делается до шести раз. Чтобы отключить этот режим, параметру adaptive следует присвоить значение false. Если этому параметру в качестве значения присвоить целое неотрицательное число, то это число будет определять максимальное значение циклов разбивки на подынтервалы. |
axes | Этим параметром определяется тип координатных осей графика. Допускаются такие значения: FRAME (рамка – точка пересечения осей в левом нижнем углу рисунка), BOXED (обрамление – график отображается в рамке с осями по левой вертикальной и нижней граням), NORMAL (обычные, пересекающиеся в начале координат оси) и NONE (никакие – координатные оси не отображаются). |
axesfont | Параметр определяет шрифт для отображения надписей координатной шкалы. В качестве значения можно присваивать список с указанием типа шрифта (TIMES, COURIER, HELVETICA и SYMBOL), стиля шрифта (например, BOLD (жирный), ITALIC (курсив) или BOLDITALIC (жирный курсив)), а также размера. Этот параметр во многом сходен с параметром font. |
color | Цвет линии для отображения графика функции. В Maple для данного параметра допускается использование таких значений цветов: aquamarine (зеленовато - голубой), black (черный), blue (синий), navy (темно - синий), coral (светло - красный), cyan (голубой), brown (коричневый), gold (ярко - желтый), green (зеленый), gray (серый), grey (серый), khaki (хаки), magenta (пурпурный), maroon (красно - коричневый), orange (оранжевый), pink (розовый), plum (темно - фиолетовый), red (красный), sienna (охра), tan (желто - коричневый), turquoise (бирюзовый), violet (фиолетовый), wheat (бледно - желтый), white (белый) и yellow (желтый). |
coords | Параметр задает систему координат, в которой отображается график. Декартова система координат (cartesian). |
discont | Если значение параметра равно true, то перед отображением графика будет вызвана функция discont(), выполняющая проверку на предмет наличия точек разрыва. После этого ось абсцисс разбивается на промежутки, где отображается функция непрерывна. По умолчанию значение параметра равно false, т. е. режим отключен. |
filled | Если задать значение этого параметра равным true, то область между графиком функции и осью абсцисс будет выделена цветом, соответствующим цвету линии графика. Значение по умолчанию – false. |
font | Параметр определяет шрифт для отображения текстовых надписей на графике. Значением параметра является список с типом, стилем и размером шрифта. Как и для параметра axesfont, тип шрифта один из следующих: TIMES, COURIER, HELVETICA и SYMBOL. Стиль шрифта зависит от его типа. Например, для шрифта TIMES допустимы стили ROMAN (прямой), BOLD (жирный), ITALIC (курсив) или BOLDITALIC (жирный курсив). Для шрифтов HELVETICA и COURIER стиль можно вообще не указывать или указать в качестве стиля один из следующих: BOLD, OBLIQUE (наклонный) или BOLDOBLIQUE (жирный наклонный). Для шрифта SYMBOL стиль не указывается. Размер шрифта указывается в пунктах (point). |
labels | Параметр предназначен для того, чтобы задавать надписи для осей координат. В качестве значения параметра указывается список из двух строк: первая является надписью для оси абсцисс, вторая – для оси ординат. Если значение для параметра не указано, то по умолчанию у осей координат отображаются названия переменных. |
labeldirections | Здесь можно задать ориентацию надписей у координатных осей. Значением параметра является список с двумя элементами, каждый из которых может принимать значение либо HORIZONTAL (по горизонтали), либо VERTICAL (по вертикали). По умолчанию обе надписи ориентируются по горизонтали. |
labelfont | Параметр определения шрифта надписей у координатных осей. Допустимые значения те же, что и у параметров font и axesfont. |
legend | Легенда графика. Если графиков несколько, значением параметра есть список, элементы которого – строки, являющиеся легендами этих графиков. |
linestyle | Стиль линии. Значением может быть число в диапазоне от 1 до 4 или, что одно и то же, одно из перечисленных названий: SOLID (сплошная), DOT (пунктирная), DASH (штрихованная), DASHDOT (штрихпунктирная). |
numpoints | Минимальное число базовых точек для построения графика (по умолчанию это значение равно 50). Если разброс значений отображаемой функции в базовых точках достаточно велик, используемый для отображения графиков алгоритм (регулируется параметром adaptive) подразумевает разбиение базовых интервалов на подынтервалы, так что в действительности число базовых точек больше минимального значения. |
resolution | Разрешение устройства отображения графики по горизонтали в пикселях (по умолчанию равно 200). Это значение используется вычислительным ядром для определения, когда следует завершать выполнение алгоритма отображения графика. |
sample | Определяет список подпараметров, которые используются для предварительного определения типа кривой. Параметр играет особенно существенную роль при отключенном параметре adaptive. |
scaling | Задает масштаб отображения графика. Возможны два значения: CONSTRAINED (единый) и UNCONSTRAINED (различный). В первом случае (CONSTRAINED) масштабы по оси абсцисс и ординат одинаковы. Во втором случае (UNCONSTRAINED) рисунок масштабируется таким образом, что длины координатных осей равны линейным размерам области вывода рисунка. Значением по умолчанию является UNCONSTRAINED. |
style | Параметр стиля линии. Допускаются значения LINE (линия), POINT (точка), PATCH (заливка) или PATCHNOGRID (заливка без отображения границ). По умолчанию используется значение LINE, что соответствует отображению графика функции посредством линии, соединяющей базовые точки. Значение POINT свидетельствует об отображении только базовых точек. Значения PATCH и PATCHNOGRID имеет смысл использовать, только если график содержит замкнутые многоугольники. В этом случае многоугольники заполняются цветом, указанным в качестве значения параметра color. Разница между PATCH и PATCHNOGRID состоит в том, что в последнем случае граница многоугольника не отображается. |
symbol | Тип символов для отображения базовых точек. Возможные значения таковы: BOX (квадрат), CROSS (крест), CIRCLE (круг), POINT (точка) или DIAMOND (ромб). Параметр имеет смысл использовать, если значение параметра style равно POINT. |
symbolsize | Размер символов отображения базовых точек. Этот параметр не влияет на размер точек (если symbol = POINT). По умолчанию размер символов равен 10 пунктам. |
thickness | Параметр задает толщину линии отображения графика. Возможные значения: 0 – 3. Значением по умолчанию является 0. |
tickmarks | Значением параметра является список, элементы которого (целые неотрицательные числа) определяют минимальное число отображаемых на графике отметок на осях. Первый элемент – для оси абсцисс, второй – для оси ординат. Если нужно задать такой элемент только для оси абсцисс (ординат), используют параметр xtickmarks (ytickmarks). |
title | Заголовок рисунка. Значением параметра является строка символов. По умолчанию заголовок не отображается. Если нужно вывести многострочный заголовок, для перехода на новую строку используют сочетание символов “\ n”. |
titlefont | Шрифт заголовка рисунка. Определяется точно так же, как и параметр font. |
view | Значением параметра является список, элементами которого являются два диапазона: первый определяет область (минимальное и максимальное значения) по оси абсцисс, в пределах которой отображается график функции, второй – то же, но для оси ординат. По умолчанию отображается весь график. |
xtickmarks | Параметр определяет минимальное число отображаемых меток по оси абсцисс. Значением может быть число или список. Если значение – список, то элементы этого списка определяют надписи у меток. В качестве элементов списка можно использовать равенства. Тогда левая часть равенства определяет координаты выделенных точек, а правая (в обратных кавычках) – отображаемый при этом текст. |
ytickmarks | То же, что и параметр xtickmarks, но только для оси ординат. |
Представим параметры, определяющие вид трехмерных графических объектов (таблица 3) [9].
Таблица 3
Параметр | Описание |
ambientlight | Значением параметра является список [r, g, b], элементы которого задают интенсивность красного (r), зеленого (g) и синего (b) цветов. Величины r, g, и b должны быть числами в диапазоне от 0 до 1. |
axes | Тип координатных осей. Возможные значения – BOXED, NORMAL, FRAME и NONE. Последнее является значением по умолчанию. Значения параметра имеют тот же смысл, что и соответствующие значения для двумерных графиков, но только теперь речь идет не о двух, а о трех координатных осях. |
axesfont | Шрифт для меток вдоль координатных осей. |
color | Параметр установки цвета. Его значения такие же, как и в случае двухмерной графики. Допускается использование в качестве названия параметра слова colour. |
contours | Параметр задает количество контуров, которое по умолчанию равно 10. |
coords | Параметр задает тип координатной системы. По умолчанию используется, декартова система координат. |
filled | Параметр может принимать значения true и false. Если значение параметра равно true, область под поверхностью будет заполнена, в противном случае – нет. Значением по умолчанию является false. |
font | Параметр установки шрифта. Как и для двухмерной графики, значением параметра является список с указанием типа шрифта, стиля и размера символов. Возможными типами являются TIMES, COURIER, HELVETICA и SYMBOL. Для шрифта TIMES в качестве стиля можно указывать ROMAN (обычный), BOLD (полужирный), ITALIC (курсив) или BOLDITALIC (полужирный курсив). Для шрифтов HELVETICA и COURIER стиль можно не указывать или указать BOLD, OBLIQUE (наклонный) или BOLDOBLIQUE (полужирный наклонный). Для шрифта SYMBOL стиль не указывается. |
grid | Значением параметра является список из двух элементов, которые определяют число базовых точек по каждой из горизонтальных координатных осей, по которым отображается поверхность. |
gridstyle | Параметр может принимать значение rectangular (сетка поверхности состоит из прямоугольных ячеек) или triangular (сетка поверхности состоит из треугольных ячеек). |
labeldirections | Параметр задает ориентацию надписей у координатных осей. Значением параметра является список из трех элементов. Каждый элемент, соответствующий координатной оси, может принимать значение HORIZONTAL (по горизонтали, используется по умолчанию) или VERTICAL (по вертикали). |
labelfont | Шрифт для меток у координатных осей. |
labels | Список из трех элементов, задающий отображаемые вдоль координатных осей надписи. |
light | Эффект подсвечивания. Значением параметра является список из пяти значений. |
lightmodel | Параметр задает одну из стандартных моделей подсветки поверхности. Допускаются такие значения: none (не используется ни одна из моделей), light1, light2, light3 и light4. |
linestyle | Тип линии. Возможны такие значения: SOLID (сплошная), DOT (пунктирная), DASH (штрихованная), DASHDOT (штрихпунктирная). Можно также указать число в диапазоне от 1 до 4. |
numpoints | Минимальное число точек (по умолчанию 625), на основе которых вычисляется вид поверхности. |
orientation | Параметр задает направление просмотра трехмерного графика. Значением является список из двух элементов, определяющих направление. |
projection | Значением параметра является число в диапазоне от 0 до 1, определяющее ракурс, в котором просматривается поверхность. Значением могут быть также FISHEYE (выгнутый), NORMAL (нормальный) и ORTHOGONAL (ортогональный), что соответствует значениям 0; 0.5; 1. |
scaling | Способ масштабирования. Значения такие же, как и в случае двухмерных графиков: UNCONSTRAINED или CONSTRAINED. |
shading | Параметр определяет способ раскраски поверхности. Возможные значения таковы: XYZ, XY, Z, ZGRAYSCALE, ZHUE и NONE. |
style | Параметр определяет способ отображения поверхности. Значениями параметра могут быть: POINT (точка), HIDDEN (скрытый), PATCH (фрагментарный, используется по умолчанию), WIREFRAME (сетка), CONTOUR (профиль), PATCHNOGRID (фрагментарный без базовых линий), PATCHCONTOUR (фрагментарный с профильными линиями) или LINE (линия). |
symbol | Тип символов для отображения поверхности: BOX (квадрат), CROSS (крест), CIRCLE (окружность), POINT (точка) или DIAMOND (ромб). |
symbolsize | Размер символа (по умолчанию 10). |
thickness | Толщина линий. Значение – целое число от 0 (значение по умолчанию) до 3. |
tickmarks | Список из трех элементов, определяющих минимально необходимое число отметок вдоль координатных осей. |
title | Заголовок графика. |
titlefont | Шрифт для отображения заголовка. |
view | Параметр определяет область отображения графика. Значением может быть либо диапазон, либо список из трех диапазонов. В первом случае определяется минимальное и максимальное значения вдоль вертикальной оси, во втором – аналогичные значения для каждой из трех осей. |
Покажем графические примитивы, каждый из которых обеспечивается соответствующей графической процедурой и определяет следующий базовый графический объект (таблица 4) [3].
Таблица 4
Процедура | Создает и выводит графический объект соответственно для: |
circle | окружности с заданными центром и радиусом. |
cone | конуса с заданным центром и растром (углом дуги). |
cuboid | куба с заданной диагональю. |
curve | кривой, соединяющей заданные точки пространства. |
cylinder | цилиндра с заданными определяющими параметрами. |
disk | круга с заданными центром и радиусом. |
dodecahedron | додекаэдра с заданными определяющими параметрами. |
ellipse | эллипса с заданными определяющими параметрами; filled – опция определяет режим закраски области эллипса. |
ellipticArc | дуги эллипса с заданными определяющими параметрами; filled – опция определяет режим закраски области дуги эллипса. |
hemisphere | полусферы с заданными центром и радиусом; capped – опция определяет режим закраски внутренней поверхности полусферы. |
hexahedron | гексаэдра с заданными определяющими параметрами. |
hyperbola | гиперболу с заданными определяющими параметрами. |
icosahedron | икосаэдра с заданными определяющими параметрами. |
line | отрезка, прямой между двумя заданными точками. |
octahedron | октаэдра с заданными определяющими параметрами. |
pieslice | сектора с заданными центром, радиусом и растром. |
Процедура | Создает и выводит графический объект соответственно для: |
point | точки с заданными координатами. |
polygon | ломаной линии, соединяющей заданные точки пространства. |
rectangle | прямоугольника с заданными определяющими параметрами. |
sphere | сферы с заданными центром и радиусом. |
tetrahedron | тетраэдра с заданными определяющими параметрами. |
Пример 1
Рассмотрим команду display, используемую при построении графиков для списка графических объектов. В предлагаемом примере эта команда выводит на экран дисплея графики косинуса (F) и тангенса (G) одновременно (рисунок 1):
with(plots):
F:=plot(cos(x),x=-Pi..Pi, y=-Pi..Pi, style=LINE):
G:=plot(tan(x),x=-Pi..Pi, y=-Pi..Pi, style=POINT):
display({F,G},axes=BOXED, scaling=CONSTRAINED, title=“Косинус и тангенс”);
Рис.1
Пример 2
Если требуется последовательный вывод графиков на экран (один за другим), то в опции этой команды надо вести insequence = true (рисунок 2 и 3):
with(plots):
F:=plot(cos(x),x=-Pi..Pi, y=-Pi..Pi, style=LINE):
G:=plot(tan(x),x=-Pi..Pi, y=-Pi..Pi, style=POINT):
display({F, G}, insequence = true, axes = BOXED, scaling = CONSTRAINED, title = “Косинус и тангенс”);
Рис.2
Рис.3
Этот прием можно использовать для анимации графических изображений, создавая последовательность графических объектов и выводя их последовательно на экран с помощью команды display.
Пакет графики plottoоls служит для создания графических примитивов, используемых для построения отрезков, дуг, конусов, цилиндров, кубов и т. д.
Пример 3
Покажем, как выглядит программа на Maple – языке для получения графических изображений отрезка, квадрата и куба при использовании команд данного пакета:
restart: with(plots): with(plottools):
A: = curve ([[0, 0, 0], [10, 10, 10]], color = green):
B: = polygon ([[0, 0, 0], [10, 0, 0], [10, 10, 0], [0, 10, 0]], color = blue):
C: = cuboid ([0, 0, 0], [5, 5, 5], color = red):
display({A, B, C}, axes = BOXED, scaling = CONSTRAINED);
Переменной A присваивается значение графической функции curve – отрезок, один из концов которого совпадает с началом координат, а другой находится в точке с координатами (10, 10, 10), переменной B – графическое изображение квадрата, вершины которого расположены в точках с координатами (0, 0, 0), (10, 0, 0), (10, 10, 0), (0, 10, 0), а значение переменной C есть изображение куба, диагональ которого соединяет точки с координатами (0, 0, 0) и (5, 5, 5). Команда display выводит все три фигуры на экран одновременно (рисунок 4) [11].
Рис.4
2.2. Работа с анимационными возможностями Maple
Анимация двумерных графиков
Визуализация графических построений и результатов моделирования различных объектов и явлений существенно повышается при использовании средств “оживления” (анимации) изображений. Пакет plots имеет две функции для создания анимированных графиков.
Первая из этих функций служит для создания анимации графиков, представляющих функцию одной переменной F(x): animatecurve (F, r, …).
Эта функция позволяет наблюдать медленное построение графика. При вызове данной функции вначале строится пустой шаблон графика. Если активизировать шаблон мышью, то в строке главного меню появляется меню Animation, которое содержит команды управления анимацией. Такое же подменю появляется и в контекстном меню. Указанное подменю содержит следующие команды анимации [3]:
- Play – запуск построения графика;
- Next – выполнение следующего шага анимации;
- Backward / Forward – переключение направления анимации (назад / вперед);
- Faster – ускорение анимации;
- Slower – замедление анимации;
- Continiuus / Singlecycle – цикличность анимации.
При циклической анимации число циклов задается параметром frames = n.
Пример 4
Построить график функции , где (рисунок 5).
Программа – визуализация
with (plots):
animatecurve (Sin(x) / x, x = -4 * Pi .. 4 * Pi, frames = 50);
Рис.5
Проигрыватель анимированной графики
При включенном выводе панели формирования во время анимации она приобретает вид панели проигрывателя клипов. Эта панель имеет кнопки управления с обозначениями:
- Поле координат перемещающейся точки графика.
- Остановка анимации.
- Пуск анимации.
- Переход к следующему кадру (фрейму).
- Установка направления анимации от конца к начало.
- Установка направления анимации из начала в конец (по умолчанию).
- Уменьшение времени шага анимации.
- Увеличение времени шага анимации.
- Установка одиночного цикла анимации.
- Установка серии циклов анимации.
Итак, кнопки проигрывателя, по существу, повторяют команды подменю управления анимацией.
Нажав кнопку пуска (с треугольником, острием обращенным вправо).
Другие кнопки управляют характером анимации.
Проигрыватель дает удобные средства для демонстрации анимации, например, во время занятий со школьниками [3].
Анимация с помощью параметра insequence
Еще один способ получения анимационных рисунков – создание ряда графических объектов p1, p2, p3 и т. д. и их последовательный вывод с помощью функций display или display3d:
display (p1, p2, p3 … insequence = true)
display3d (p1, p2, p3 … insequence = true)
Здесь основным моментом является применение параметра insequence = true. Именно он обеспечивает вывод одного за другим серии графических объектов p1, p2, p3 и т. д. При этом объекты появляются по одному и каждый предшествующий объект стирается перед появлением нового объекта.
Наблюдение кадров анимации поверхности
Наблюдение за развитием поверхности производит на учеников большое впечатление. Оно позволяет понять детали создания сложных трехмерных графиков и наглядно представить их математическую сущность.
Как и для случая анимации двумерного графика, большой интерес представляет построение всех фаз анимации на одном рисунке [3].
Пример 5
Покажем 8 фаз анимации трехмерной поверхности , представленной функцией трех переменных t, x и y. При этом изменение первой переменной создает фазы анимации поверхности (рисунок 6).
Программа – визуализация
with (plots):
g3: = animate3d (Cos (t * x * y / 3), x = -Pi .. Pi, y = -Pi .. Pi, t = 0 .. 2, color = Sin (x)): display (g3);
Рис.6
Применение анимации дает повышенную степень визуализации решений ряда задач, связанных с построением двумерных и трехмерных графиков. Отметим, что построение анимированных графиков требует дополнительных и достаточно существенных затрат оперативной памяти. Поэтому злоупотреблять числом стоп – кадров таких графиков не стоит.
В качестве наглядного примера графических и анимационных возможностей пакета Maple приведем комментарии по использованию Maple – программы.
При проведении урока учителю потребуются подсказки – визуализации к задачам, в которых рассматривается вращение фигуры вокруг указанной оси и предлагается обучающимся мысленно сформировать образ новой фигуры, получаемой при таком вращении.
Для визуализации решений задач нами создана программа на Maple – языке. В данной программе мы использовали конструкции условного оператора и оператора цикла.
Условный оператор в Maple начинается со слова if и обязательно должен заканчиваться словами end if:
if bool then expr1 else expr2 end if;
Эта конструкция дает возможность в зависимости от значения логического условия bool выполнять выражение expr1, когда bool = true (истина) или выражение expr2, когда bool = false (истина).
Оператор цикла, используемый в программе, записывается следующим образом:
for var from vall by val2 to val3 do expr end do;
Тело цикла expr выполняется при каждом значении параметра цикла var, который изменяется от val2 до тех пор, пока не станет больше val3. При val2 = 1 оператор цикла допускает сокращенную форму:
for var from val1 to val3 do expr end do.
Программа – визуализация (*)
restart: with (plottoоls): with (plots):
N: = 7:
SPISOK1: = [seq (FIG[m], m = 1 .. 8)]:
FIG[1]: = curve ([[1, 0, 0], [0, 0, 0]], color = green, thickness = 3):
FIG[2]: = curve ([[1, 1, 0], [0, 0, 0]], color = green, thickness = 3):
FIG[3]: = curve ([[-2, 1, 0], [1, -1, 0]], color = green, thickness = 3):
FIG[4]: = curve ([[1, -1, 0], [1, 1, 0]], color = green, thickness = 3):
FIG[5]: = polygon ([[0, 0, 0], [10, 0, 0], [10, 10, 0], [0, 10, 0]], color = green, thickness = 1):
FIG[6]: = curve ([[1, 1, 0], [0, 1, 0]], color = blue, thickness = 3):
FIG[7]: = cuboid ([0, 0, 0], [1, 1, 1]):
FIG[8]: = FIG[7]:
for m from 1 to 8 do if m = n then FIGURA: = SPISOK1[m] end if: end do:
SPISOK2: = [seq(AXES[z], z = 1 .. 8)]:
AXES[1]: = [[0, -2, 0], [0, 2, 0]]:
AXES[2]: = AXES[1]:
AXES[3]: = AXES[1]:
AXES[4]: = AXES[1]:
AXES[5]: = [[0, -10, 0], [20, 10, 0]]:
AXES[6]: = [[0, 0, 0], [1, 1, 1]]:
AXES[7]: = [[-0.5, -0.5, -0.5], [1.5, 1.5, 1.5]]:
AXES[8]: = [[1, 1, 0], [0, 1, 1]]:
for z from 1 to 8 do if z = n then rot: = SPISOK2[z] end if: end do:
axes: = curve (rot, color = red, thickness = 3):
f: = display ([axes, FIGURA]):
RTS : = seq (rotate(f, k*0.25*Pi, rot), k = 0 .. 40):
RRT : = seq (display(seq(rotate(f, i*0.12*Pi, rot), i = 0 .. j)), j = 0 .. 40):
display (RTS, RRT, insequence = true, scaling = CONSTRAINED, style = PATCH);
Для работы с расширенными графическими функциями Maple данная программа подгружает пакеты plots и plottools. Далее формируются два списка. Элементами списка SPISOK1 являются восемь фигур (по количеству рассматриваемых в ходе урока задач). Элементы списка SPISOK2 – это пары точек, с помощью которых задаются оси вращения для каждой задачи.
Переменной n присваивается значение в интервале от 1 до 8, соответствующее номеру задачи. С помощью этой переменной из указанных списков выбираем фигуру FIGURA и пару точек rot для задания оси. Функция curves и пара точек rot позволяют построить изображение оси вращения, а результат присваивается переменной axes.
Вводим переменную f и присваиваем ей в качестве значения результат вывода на экран фигуры FIGURA и оси axes одновременно.
Затем создается последовательность из статистических изображений, получаемых при вращении фигуры f вокруг оси axes на угол k*0.25*Pi, k = 0 .. 40. Эта последовательность присваивается переменной RTS.
Графическое решение задачи (переменная RRT) является последовательностью изображений, каждое из которых представляет собой набор фигур, получаемых при вращении фигуры FIGURA на углы i*0.12*Pi, i = 0 .. j, где j – номер изображения в последовательности (j = 0 .. 40).
На заключительном этапе работы программы с помощью команды display последовательность элементов RTS и RRT выводится на экран последовательно, в силу использования опции insequence = true. Смена изображений пакетом Maple проводится так, что возникает впечатление проигрывания анимационного клипа. Начальная фигура, получаемая при выводе на экран изображений последовательности RTS, вращается вокруг оси, а затем при выводе элементов последовательности RRT формируется образ искомой фигуры. Образ фигуры будет тем точнее, чем меньше угол вращения и больше элементов в последовательности RRT.Одним из средств, позволяющих повысить усвоение материала при изучении функций, поверхностей может выступать математический пакет Maple. Быстрое получение результата, повышение интереса, наглядность, доступность, связь с большинством других программ, широкий спектр возможностей решений задач из различных разделов математики, возможность программирования, возможность получения поэтапного решения задачи и т. д. – это те преимущества, которые определяют популярность данного пакета [2].
Изучение процесса интеграции, проходившее во время написания данной работы, привело к выводу, что единого понимания пути этого явления нет. Существует много мнений, точек зрения на данное явление. Большую трудность представляет включение интегрированных уроков в школьную программу.
Основной формой организации процесса интеграции предметов в школе является интегрированный урок, особенностью которого выступает то, что его могут вести два или три, а может быть и больше педагогов.
Ожидаемые результаты:
- повышение интереса к предмету;
- улучшение качества знаний обучающихся по предмету;
- формирование умения использовать Maple как источник информации.
Использование Maple – оптимизация работы преподавателя, т. е. облегчение его функций:
- Контроль. Учитель освобождается от рутинной работы по опросу учеников. Кроме того, положение педагога становится более привлекательным, т. к. функции контроля передаются пакету Maple, а это способствует бесконфликтному общению.
- Обратная связь. Применение Maple позволяет оценивать каждый этап работы ученика: Maple исправляет ошибки, при необходимости комментирует, предоставляя нужную информацию. Тем самым обучающийся получает возможность вовремя исправлять свои ошибки.
Использование Maple позволяет разнообразить формы подачи информации:
- информационные файлы, содержащие текстовую, графическую информацию;
- файлы примеров, демонстраций;
- графическое представление информации в виде рисунков, чертежей;
- анимация рисунков или показ видеофрагментов.
В результате уроки математики с применением Maple повысили:
- развитие пространственного воображения;
- логическое мышление;
- компьютерную грамотность.
Таким образом, подводя итог, хочется сказать, что задуматься над тем, что интеграция предметов в современной школе – реальная потребность времени, необходимо всем тем, кто занимается вопросами педагогического образования. Так как основные задачи модернизации российского образования – повышение его доступности, качества и эффективности. Это предполагает не только масштабные структурные, институциональные, организационно-экономические изменения, но в первую очередь – значительное обновление содержания образования, прежде всего общего образования, приведение его в соответствие с требованиями времени и задачами развития страны. Главным условием решения этой задачи является введение государственного стандарта общего образования [13].
Список литературы
- Абинова, Н. М. Интеграция в образовании [Электронный ресурс] / Н. М. Абинова // www. ido. tsu. ru.
- Абрамов, Е. В. Использование математических пакетов при изучении функций в школьном курсе математики [Электронный ресурс] / Е. В. Абрамов // www. naukapro. ru.
- Аладьев, В. З. Системы компьютерной алгебры: Maple: Искусство программирования [Текст] / В. З. Аладьев. - М.: Лаборатория Базовых Знаний, 2006. – С. 141 – 143.
- Алексашина, И. Интегрированный подход в естественнонаучном образовании [Текст] / И. Алексашина // Народное образование. – 2001. - № 1. – С. 161 – 165.
- Алексеев, Е. Р., Чеснокова, О. В. Решение задач вычислительной математики в пакетах Mathcad12, Matlab7, Maple9 [Текст]: самоучитель / Е. Р. Алексеев, О. В. Чеснокова. – М.: НТ Пресс, 2006. – С. 466 – 468.
- Белянкова, Н. М. Интегрированный подход в обучении младших школьников [Текст]: пособие для учителя / Н. М. Белянкова. - М.: Просвещение, 2008. – С. 4 – 9.
- Боголепова, Г. В., Дахин, А. Н. Межпредметная интеграция химии и логики [Текст] / Г. В. Боголепова, А. Н. Дахин // Школьные технологии. – 1999. - № 1. – С. 150 – 153.
- Борисенко, Н. А. Возможности интеграции [Текст] / Н. А. Борисенко // Школа. – 2001. - № 2. – С.38 – 41.
- Васильев, А. Н. Maple8 [Текст]: самоучитель / А. Н. Васильев. – М.: Издательский дом Вильямс, 2003. – С. 336 – 344.
- Воронкова, О. Б. Информатика [Текст]: методическая копилка преподавателя / О. Б. Воронкова. – Ростов – на - Дону: Издательство Феникс, 2008. – С. 7 – 10.
- Горохов, Д. Н., Разумова, О. В. Развитие пространственного мышления школьников графическими средствами пакета Maple [Текст] / Д. Н. Горохов, О. В. Разумова // Информатика и образование. – 2007. - № 8. – С. 75 – 79.
- Гусева, В. А. Методика обучения геометрии [Текст]: учебное пособие / В. А. Гусева. – М.: Академия, 2004. – 50 с.
- Днепров, Э. Д., Аркадьев, А. Г. Сборник нормативных документов. Информатика и ИКТ [Текст] / Э. Д. Днепров, А. Г. Аркадьев. . – 2-е изд., стереотип. – М.: Дрофа, 2008. – 103 с.
- Елсуков, А. Н., Шульга, К. В. Социологический словарь [Текст] / А. Н. Елсуков, К. В. Шульга. – 2-е изд. Минск: Университетское, 1991. – 528 с.
- Кондаков, Н. И. Логический словарь – справочник [Текст] / Н. И. Кондаков. – М.: Наука, 1975. – 595 с.
- Копылова, Л. Ю. Интеграция уроков информатики в средней школе как средство повышения качества образования [Электронный ресурс] / Л. Ю. Копылова // www. festival. 1september. ru.
- Кульневич, С. В., Лакоценина, Т. П. Современный урок. Часть I [Текст]: научно – практич. пособие для учителей, методистов, руководителей образовательных учреждений, студентов пед. учеб. заведений, слушателей ИПК / С. В. Кульневич, Т. П. Лакоценина. – Ростов – на – Дону: Издательство Учитель, 2006. – 281 с.
- Лакоценина, Т. П. Современный урок. Часть 6: Интегрированные уроки [Текст]: научно – практич. пособие для учителей, методистов, руководителей образовательных учреждений, студентов пед. учеб. заведений, слушателей ИПК / Т. П. Лакоценина. – Ростов – на – Дону: Издательство Учитель, 2008. – 253 с.
- Лапчик, М. П. Информатическая математика или математическая информатика [Текст] / М. П. Лапчик // Информатика и образование. – 2008. - № 7. – С. 3 – 7.
- Лапчик, М. П., Семакин, И. Г., Хеннер, Е. К. Методика преподавания информатики [Текст]: учеб. пособие для студ. пед. вузов / М. П. Лапчик, И. Г. Семакин, Е. К. Хеннер.- М.: Издательский центр Академия, 2007. – 624 с.
- Петров, А. В., Гурьев, А. И. О соотношении понятий “Интеграция” и “Межпредметные связи” [Текст] / А. В. Петров, А. И. Гурьев // Наука и школа. – 2002. - № 2. – С. 56 – 58.
- Подласый, И. П. Педагогика начальной школы [Текст]: учеб. для студ. пед. училищ и колледжей / И. П. Подласый.- М.: Гуманитар. изд. центр ВЛАДОС, 2004. – 399 с.
- Субботина, Л. А. Словарь иностранных слов для школьников [Текст] / Л. А. Субботина. – Екатеринбург: У - Фактория, 2007. – 488 с.
- Угринович, Н. Д. Информатика и информационные технологии [Текст]: учеб. пособие для 10-11 классов / Н. Д. Угринович. – М.: БИНОМ Лаборатория знаний, 2007. – 511 с.
- Шипицына, Л. Интегрированное обучение: за и против [Текст] / Л. Шипицына // Народное образование. – 1998. - № 6. – С. 154 – 156.
- Ятайкина, А. А. Об интегрированном подходе в обучении [Текст] / А. А. Ятайкина // Школьные технологии. – 2001. - № 6. – С. 10 – 13.