Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lab_work_7_Maple

.doc
Скачиваний:
2
Добавлен:
15.07.2019
Размер:
114.69 Кб
Скачать

ЛАБОРАТОРНА РОБОТА № 7

Тема: Застосування пакета Maple у математичному аналізі й теорії чисел.

Питання

  1. Побудова графіків функцій.

  2. Обчислення меж

  3. Обчислення сум і добутків

  4. Розкладання на множники, побудова простих чисел, знаходження НЗД, НЗК.

Теоретичні відомості.

Побудова графіків функцій

Для побудови графіків використовується функція plot. Її синтаксис: plot(f(x),x=a..b), де f(x) - вираз, що задає функцію, x - аргумент функції, a і b - границі інтервалу області визначення функції. Замість x можна використовувати будь-яку змінну. У наступному прикладі будується графік функції sin(x) на відрізку [-Pi,Pi].

> plot(sin(x),x=-Pi..Pi);

> plot(1/x,x=-3..3,-10..10);

У цьому прикладі будується графік функції 1/x, при цьому на осі OX відображається відрізок [-3,3], на осі OY - [-10,10].

На одному малюнку можуть бути зображені графіки декількох функцій, для цього замість функції необхідно задати список функцій: перелічивши їх у квадратних дужках через кому. Приклад побудови графіків x2 і x3 на одному малюнку:

> plot([x^2,x^3],x=-2..2);

Функцію можна задавати параметрично, для цього перший аргумент повинен бути списком виду [x(t),y(t),t=a..b]. Приклад параметричного завдання кола:

> plot([cos(t),sin(t),t=0..2*Pi]);

Для побудови функції в полярних координатах необхідно задати функцію параметрично у вигляді [r(t), phi(t), t], де t - параметр, r(t) - відстань до початку координат, phi(t) - полярний кут. Також необхідно додати параметр coords=polar у виклику функції plot. Приклад побудови одного витка спіралі Архімеда в полярних координатах:

> plot([t,t,t=0..Pi],coords=polar);

Крім цього функція plot дозволяє розфарбовувати різні графіки в різні кольори, змінювати кількість крапок, що розраховуються, по яких будується графік і т.д.

Тривимірні графіки функцій двох змінних будуються за допомогою функції plot3d. Її синтаксис: plot3d(f(x,y),x=a..b,y=c..d). Приклад побудови графіка функції x*sin(y):

> plot3d(x*sin(y),x=-2..2,y=-Pi..Pi);

На панелі інструментів є ряд кнопок, що дозволяють обертати побудований графік у просторі, змінювати масштаби по осях координат і перемикати режими відображення осей.

Якщо необхідно задати інтервал, що буде відображатися на осі OZ, необхідно задати ще один параметр view=e..f (у відмінності від плоских графіків необхідно написати слово view).

Основні параметри команди plot:

1) title=”text”, де text-заголовок малюнка (текст можна залишати без лапок, якщо він містить тільки латинські букви без пробілів).

2) coords=polar - установка полярних координат (за замовчуванням установлені декартові).

3) axes - установка типу координатних осей: axes=NORMAL - звичайні осі; axes=BOXED - графік у рамці зі шкалою; axes=FRAME - осі із центром у лівому нижньому куті малюнка; axes=NONE - без осей.

4) scaling - установка масштабу малюнка: scaling=CONSTRAINED - однаковий масштаб по осях; scaling=UNCONSTRAINED - графік масштабується по розмірах вікна.

5) style=LINE(POINT) – графік малюється лініями (або крапками).

6) numpoints=n - число точок графіка (за замовчуванням n=49).

7) сolor - установка кольору лінії: англійська назва кольору, наприклад, yellow - жовтий і т.д.

8) xtickmarks=nx і ytickmarks=ny - число міток по осі Оx і осі Оy, відповідно.

9) thickness=n, де n=1,2,3... - товщина лінії (за замовчуванням n=1).

10) linestyle=n - тип лінії: безперервна, пунктирна й т.д. (n=1 - безперервна, установлена за замовчуванням).

11) symbol=s - тип символу, яким позначають крапки: BOX, CROSS, CIRCLE, POINT, DIAMOND.

12) font=[f,style,size] - установка типу шрифту для тексту: f задає назву шрифтів: TIMES, COURIER, HELVETICA, SYMBOL; style задає стиль шрифту: BOLD, ITALIC, UNDERLINE; size - розмір шрифту в pt.

13) labels=[tx,ty] - напис по осях координат: tx - по осі Оx і ty - по осі Оy.

14) discont=true - вказівка для побудови нескінченних розривів.

Обчислення меж

Межа обчислюється за допомогою функції limit. Її синтаксис: limit(f(x),x=a), де f(x) - функція, межа якої необхідно обчислити, a - крапка, у якій обчислюється межа:

> limit(sin(x)/x,x=0);

1

Як крапка можуть фігурувати константи infinity і -infinity:

> limit( (1+1/n)^n, n=infinity);

e

Якщо потрібно обчислити ліву або праву межу в крапці, для цього необхідно додати ще один параметр left або right відповідно.

Обчислення сум і добутків

Для обчислення сум використовується функція sum. Її синтаксис: sum(f(k),k=a..b), де k - змінна, по якій здійснюється підсумовування, f(k) – доданки, які підсумовуються і залежать від k, a і b - межі підсумовування. Наприклад, сума перших 100 натуральних чисел дорівнює 5050:

> sum(k,k=1..100);

5050

При завданні параметрів можна використовувати константу infinity, тоді буде обчислена сума нескінченного ряду. Наприклад, обчислимо суму нескінченної геометричної прогресії зі знаменником q:

> sum(q^k,k=0..infinity);

-1/( q-1)

Обчислимо значення дзета-функції Римана від 2 (це сума ряду 1/1+1/22+1/32+... ):

> sum( 1/k^2, k=1..infinity);

Pi2/6

Для обчислення кінцевих або нескінченних добутків використовується функція product з аналогічним синтаксисом:

> product(i,i=1..6);

720

> product( (1+1/i^2), i=1..infinity);

sinh(Pi)/Pi

В останньому прикладі фігурує спеціальна математична функція "гіперболічний синус" (sinh). Це аналог синуса, що заданий не на одиничній окружності, а на гіперболі. При необхідності, можна обчислити значення чисельно:

> evalf(%);

3.676077910

Обчислення НЗД, НЗК

Для знаходження найбільшого загального дільника двох чисел використовується функція igcd, для знаходження найменшого загального кратного – функція ilcm. Приклад:

> igcd(57,179);

1

Розширений алгоритм Евкліда використовується для знаходження по даним n і m таких чисел u і v, що un+vm=d, де d - найбільший загальний дільник m і n. Для цього використовується функція igcdex(n,m,'u','v'), де m, n - вихідні числа, u і v - змінні, котрим будуть привласнене значення. Приклад

> igcdex(57,179,'u','v');

1

> u; v;

22

-7

> 57*u+179*v;

1

Перевірка на простоту, розкладання на множники, побудовв простих чисел

Для перевірки числа на простоту використовується функція isprime, що повертає true, якщо число просте й false – якщо складене. Для розкладання числа на множники використовуються функції ifactor і ifactors. Перша функція повертає результат у вигляді добутку ступенів простих чисел, друга - у вигляді списку простих чисел і їхніх ступенів. Всі ці функції працюють значно ефективніше простого підбора дільників, перевірка на простоту здійснюється швидше повного розкладання на множники.

Для побудови простих чисел використовуються функції prevprime, nextprime, ithprime. Функція prevprime(n) повертає найбільше просте число, що менше n, функція nextprime(n) повертає найменше просте число, що більше n. Функція ithprime(n) повертає n-е простої число.

Для знаходження випадкового простого числа варто використовувати ці функції разом з функцією rand(), що повертає псевдовипадкове 12-значне натуральне число. Для ініціалізації генератора псевдовипадкових чисел необхідно використовувати функцію randomize().

> isprime(7!);

false

> ifactor(7!);

(2)4(3)2(5)(7)

> ifactors(7!);

[1, [[2, 4], [3, 2], [5, 1], [7, 1]]]

> nexprime(7!);

5051

> isprime(%);

true

> nextprime(rand());

427419669163

Спеціальні функції

Функція divisors(n) повертає список всіх натуральних дільників даного цілого числа.

Функия tau(n) ( тау-функція) повертає кількість дільників числа n.

Функия sigma(n) (сігма-функція) повертає суму дільників числа n.

Функція sigma[k](n) повертає суму k-х ступенів дільників числа n.

Функція pi(n) (пі-функція) повертає кількість простих чисел, що не перевершують n.

Функція phi(n) ( фі-функція Эйлера) повертає кількість чисел, менших n і взаємно простих з n.

Вправи для самостійної роботи

  1. Розкладіть на множники число 1010+1.

  2. Перевірте, чи є число 10100+1 простим.

  3. Знайдіть найбільший загальний дільник чисел 1010+1 і 1018+1.

  4. Знайдіть 100-е по рахунку просте число.

  5. Знайдіть найближчі зверху й знизу прості числа до 10100.

  6. Знайдіть суму перших 100 чисел виду k2

  7. Обчислити ліву й праву межу в точці x=0 для функції abs(x)/x.

8*. Для відрізку побудуйте графіки функцій , , , .

  1. Побудувати декартів графік функції:

Варіант

Функція

Варіант

Функція

1

x2-x∙cos(10-x)

8

x2-sin3(x)

2

3x∙sin2(x)

9

2x3-x2∙sin(x)

3

x∙(cos(x)-sin2(x))

10

3x∙cos(x)

4

x2∙sin(x)

11

cos3(x)-sin(x)

5

2x-cos(x)∙sin3(x)

12

x∙sin(x2-10)

6

cos3(4x2-15)

13

sin2(x3-5) x

7

(x2-7)∙(cos3(x)+sin2(x))

14

x3∙cos(x) - x4∙sin(x)

  1. Побудувати графік поверхні функції:

Варіанти

  1. ; 8.

  2. ; 9.

  3. ; 10.

  4. 11.

  5. ; 12.

  6. 13.

  7. 14.

  1. Виконати побудову двох поверхонь і в межах . Установити змінний колір поверхонь як функцію .

  2. Виконати побудову двох поверхонь і . Установити змінний колір поверхонь як функцію .

Контрольні питання.

  1. За допомогою яких команд можна знайти найбільший загальний дільник чисел.

  2. Опишіть схему знаходження простих чисел.

  3. За допомогою яких команд будуються графіки на площині й у просторі? Які аргументи мають ці команди?

  4. Як називається пакет додаткових графічних команд?

  5. За допомогою якої команди можна побудувати графік неявної функції? Опишіть її параметри.

  6. Для чого призначена команда display?

  7. Яка команда дозволяє побудувати двовимірну область, задану системою нерівностей?

  8. За допомогою якої команди можна побудувати графік просторовій кривій?

  9. Які можливості надають команди animate і animate3d?

4

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]