Maple 9.5/10 в математике, физике и образовании - Владимир Дьяконов
Шрифт:
Интервал:
Закладка:
> msolve(2^i=3,19);
{i = 13 + 18 _ZI~}> msolve(8^j=2,х,17);
{j = 3 + 8х}На этом мы завершаем рассмотрение функций системы Maple 9.5 для решения уравнений, неравенств и систем с ними.
4.9. Применение пакета расширения student
4.9.1. Функции пакета student
Пакет student — это, несомненно, один из пакетов, наиболее привлекательных для студентов и аспирантов. В нем собраны наиболее распространенные и нужные функции, которые студенты университетов и иных вузов обычно используют на практических занятиях, при подготовке курсовых и дипломных проектов. Пакет вызывается командой:
> with(student);
Ниже представлено назначение функций этого пакета, включая некоторые функции из его более ранних версий:
D — дифференциальный оператор;
Diff — инертная форма функции вычисления производной;
Doubleint — инертная форма функции вычисления двойного интеграла;
Int — инертная форма функции интегрирования int;
Limit — инертная форма функции вычисления предела limit;
Lineint — инертная форма функции вычисления линейного интеграла lineint;
Point — тестирование объекта на соответствие типу точки (point);
Product — инертная форма функции вычисления произведения членов последовательности;
Sum — инертная форма функции вычисления суммы членов последовательности;
Tripleint — инертная форма функции вычисления тройного интеграла;
changevar — замена переменной;
combine — объединение подобных членов;
completesquare — вычисление полного квадрата (многочлена);
distance — вычисление расстояния между точками;
equate — создание системы уравнений из списков, таблицы, массивов;
extrema — вычисление экстремума выражения;
integrand — вывод подынтегрального выражения из под знака инертного интеграла;
intercept — нахождение точки пересечения двух кривых;
intparts — интегрирование по частям;
isolate — выделение подвыражения;
leftbox — графическая иллюстрация интегрирования методом левых прямоугольников;
leftsum — числовое приближение к интегралу левыми прямоугольниками;
makeproc — преобразование выражения в процедуру Maple;
maximize — вычисление максимума функции;
middlebox — графическая иллюстрация интегрирования метолом центральных прямоугольников;
middlesum — числовое приближение к интегралу центральными прямоугольниками;
midpoint — вычисление средней точки сегмента линии;
minimize — вычисление минимума функции;
powsubs — подстановка для множителей выражения;
rightbox — графическая иллюстрация интегрирования методом правых прямоугольников;
rightsum — числовое приближение к интегралу правыми прямоугольниками;
showtangent — график функции и касательной линии;
simpson — числовое приближение к интегралу по методу Симпсона;
slope — вычисление и построение касательной к заданной точке функции;
trapezoid — числовое приближение к интегралу методом трапеций;
value — вычисляет инертные функции.
В Maple 8/9 число функций этого пакета было несколько сокращено в сравнении с Maple 7, так что надо быть внимательным при его использовании в практических вычислениях — некоторые документы с функциями этого пакета, подготовленные в среде Maple 7, могут не работать в среде Maple 8/9/9.5.
4.9.2. Функции интегрирования пакета student
В ядре и в пакетах расширения Maple 8/9/9.5 можно найти множество специальных функций для вычисления интегралов различного типа. Например, в пакете student имеются следующие функции:
Int(expr,x) — инертная форма вычисления неопределенного интеграла;
Doubleint(expr,x,у,Domain) — вычисление двойного интеграла по переменным х и у по области Domain;
Tripleint(expr,x,y,z) — вычисление тройного интеграла;
intparts(f,u) — интегрирование по частям.
Ниже дан пример применения функции Tripleint пакета student:
> Tripleint(f(х,у,z),х,у,z);
∫∫∫(x,y,z)dxdydz> Tripleint(х*у*z^2,x=0..2,y=0..3,z=0..5);
> evalf(%);
375.0000000> int(int(int(x*y*z^2,x=0..2),y=0..3),z=0..5);
3754.9.3. Иллюстративная графика пакета student
Пакет student имеет три графические функции для иллюстрации интегрирования методом прямоугольников:
leftbox(f(x), x=a..b, о) или leftbox(f(x), x=a..b, n, 'shading'=<color>, о);
rightbox(f(x), x=a..b, о) или rightbox(f(x), x=a..b, n, o);
middlebox(f(x), x=a..b, о) или middlebox(f(x), x=a..b, n, o);
Здесь f(x) — функция переменной x, x — переменная интегрирования, a — левая граница области интегрирования, b — правая граница области интегрирования, n — число показанных прямоугольников, color — цвет прямоугольников, о — параметры (см. ?plot,options).
В этих функциях прямоугольники строятся соответственно слева, справа и посередине относительно узловых точек функции f(х), график которой также строится. Кроме того, имеется функция для построения касательной к заданной точке х=а для линии, представляющей f(x):
showtangent(f(х), х=а)
Рисунок 4.36 показывает все эти возможности пакета student. Четыре отмеченных вида графиков здесь построены в отдельных окнах.
Рис. 4.36. Примеры иллюстративной графики пакета student
Графические средства пакета student ограничены. Но они предоставляют как раз те возможности, которые отсутствуют в основных средствах построения графиков. В Maple 9/9.5 функции пакета резко расширены и мы вернемся к их рассмотрению в Главе 9.
4.9.4. Визуализация методов численного интегрирования
Пакет Student обеспечивает визуализацию ряда методов численного интегрирования: методов прямоугольников с различным расположением их, метода трапеций и метода парабол (Симпсона). Это возможно в символьном виде, например (файл intvis):
> with(student): middlesum(x*exp(-x), x=a..b);
Ниже представлено несколько примеров такой визуализации (для метода прямоугольников со средним расположением их, метода трапеций и метода Симпсона):
> with(student): middlesum(х*exp(-x), x=0..4);
> trapezoid(х*ехр(-х), x=0..4);
> simpson(x*sin(-х), х=1..4);
> evalf(%)
-1.5719966508305В последнем примере показано вычисление по представлению методом Симпсона.
4.10. Работа с алгебраическими кривыми
4.10.1. Пакет для работа с алгебраическими кривыми algcurves
Для работы с алгебраическими кривыми служит пакет расширения algcurves. Он загружается командами:
> restart;with(algcurves);
Ввиду важности функций пакета приведем полную форму записи и назначение наиболее важных функций этого пакета:
Weierstrassform(f,x,y,x0,y0,opt) — вычисление нормальной формы для эллиптических или гиперболических алгебраических кривых;
differentials(f, x, у, opt) — голоморфные дифференциалы алгебраических кривых;
genus(f,x,y,opt) — подлинность алгебраической кривой;
homogeneous(f,x,y,z) — создание полинома двух переменных, гомогенного в трех переменных;
homology(f, х, у) — находит канонический гомологический базис по алгоритму Треткоффа;
integral_basis(f, х, у, S) — интегральный базис алгебраического поля функции;
is_hyperelliptic(f, х, у) — тестирует кривую на ее принадлежность к гиперболической;
j_nvariant(f,x,y) — j-инвариант алгебраической кривой;
monodromy(f, х, у, opt) — вычисляет монодромию алгебраической кривой;
parametrization(f,x,y,t) — находит параметризацию для кривой с родом (даваемым функцией genuc), равным 0;
periodmatrix(f, х, у, opt) — вычисляет периодическую матрицу кривой;
plot_knot(f,x,y,opt) — строит узел — несамопересекающуюся замкнутую кривую в трехмерном евклидовом пространстве;
puiseux(f,x=p,y,n,T) — определяет Пуизе-расширение алгебраической функции (может иметь и более простые формы записи);
singularities(f,x,y) — анализирует кривую на сингулярность.
4.10.2. Примеры работы с алгебраическими кривыми
Приведем также примеры применения функций пакета Algcurves (файл algcurve):
> Weierstrassform((y^2-1)^2+x*(x^2+1)^2, x,y,x0,y0);
> f:=у^3+х^3*у^3+х^4;
f := y3 + y3x3 + x4> differentials(f, х, у);
> differentials(f,x,у,skip_dx);
[x², yx, yx²]> nops(%);
3> genus(f, x, y);
3> homogeneous(f, x, y, z);
x4z2 +y3x3 +у3x3> g := y^3-х*y^2+2*2^(1/2)*y^2+х^2-2*2^(1/2)*х+2+y^6;
g := y3 - xy2 + 2√2 у2 + x2- 2√2x + 2 + y6> integral_basis(g,x,y);
> is_hyperelliptic(f, x, y);
false> f1:=у^2+х^5+1:is_hyperelliptic(f1, x, y);
true> j_invariant(g,x,y);