Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
інформатика_26,27,28,29,30.docx
Скачиваний:
11
Добавлен:
15.09.2019
Размер:
453.01 Кб
Скачать

28. Прикладне програмне забезпечення математичного призначення.

Комп’ютерна математика. Системи комп’ютерної математики (СКМ). Класифікація СКМ. Структура СКМ. Розв'язування математичних задач засобами СКМ. Програмування в CKM. Засоби візуалізації об'єктів в СКМ.

Комп’ютерна математика – сукупність теоретичних, алгоритмічних, апаратних та програмних засобів для ефективного розв’язування на комп’ютерах різних типів математичних задач з можливістю візуалізації всіх етапів процесу виконання обчислень.

Термін „комп’ютерна математика” є узагальненням кількох раніше введених термінів, таких як символьна математика, комп’ютерна алгебра, обчислювальна математика, конкретна математика, математичне моделювання та комп’ютерне моделювання. По суті, мова йде про автоматизацію розв’язування математичних задач (включаючи моделювання) з допомогою комп’ютера, тобто про комп’ютерну математику. При цьому використовується цілий ряд нових специфічних алгоритмів та методів розв’язування таких задач, які були породжені саме можливістю застосування сучасних комп’ютерів.

Засобами комп’ютерної математики стали системи комп’ютерної математики (СКМ). Використання СКМ значно полегшує розв’язування типових математичних задач, таких як обчислення значень функцій та побудова їх графіків, розв’язування рівнянь, нерівностей та їх систем, обчислення інтегралів, знаходження похідних функції тощо. При цьому у користувача немає потреби у різноманітних довідниках та математичних таблицях, і разом з тим з’являються можливості у короткі терміни розв’язувати значну кількість математичних задач, готувати електронні книги. Використання СКМ стимулює інтерес студентів одночасно і до математики, і до новітніх інформаційних технологій та програмування.

Застосування СКМ позбавляє від виконання рутинних обчислень, вивільняє час, обмірковування алгоритмів розв’язування задач, постановки задач і побудови відповідних математичних моделей, подання результатів у найбільш зручній формі. Вивільнений час можна використати для більш глибокого вивчення математичної сутності задач і методів їх розв’язання.

Умовно системи комп’ютерної математики можна поділити на такі:

  1. системи для чисельних розрахунків;

  2. табличні процесори;

  3. матричні системи;

  4. системи для статистичних розрахунків;

  5. системи для спеціальних розрахунків;

  6. системи для аналітичних розрахунків (комп’ютерної алгебри);

  7. універсальні системи.

На сьогодні розроблено значну кількість програмних засобів, що дозволяють розв’язувати за допомогою комп’ютера досить широке коло математичних задач різних рівнів складності. Це такі програмні засоби як DERIVE, EUREKA, GRAN1, GRAN2D, GRAN3D, Maple, MathCad, Mathematica, MathLab, Maxima, Numeri, Reduce, Statgraph тощо. Причому одні з цих програм розраховані на фахівців досить високої кваліфікації в галузі математики, інші – на учнів середніх навчальних закладів чи студентів вузів, які лише почали вивчати шкільний курс математики чи основи вищої математики.

Найбільш придатними для підтримки вивчення курсу математики в середніх навчальних закладах видаються програми DERIVE, EUREKA, GRAN1, GRAN2D, GRAN3D. Для їх використання не вимагаються надто потужні комп’ютери з великою швидкодією, значними обсягами

оперативних запам’ятовуючих пристроїв, високими вимогами до можливостей графічних побудов. При роботі з ними цілком успішно можуть бути використані будь-які IBM-сумісні комп’ютери з процесорами типів 86, 286 і вище, кольоровими моніторами і графічними адаптерами EGA і вище, ОЗП від 386 кБ і вище. Названі програми прості у користуванні, оснащені досить зручним інтерфей-сом, максимально наближеним до інтерфейсу найбільш поширених програм загального призна-чення, контекстно-чутливою допомогою. Від ко-ристувача не вимагається значного обсягу спеціальних знань з інформатики, основ обчислювальної техніки, програмування тощо, за винятком найпростіших понять, які цілком доступні для учнів.

29. Прикладне веб-орієнтоване програмне забезпечення математичного призначення. Системи комп’ютерної математики (СКМ). Веб-СКМ Sage. Інтерфейс. Введення виразів, виконання символьних перетворень, робота з графікою. Розв’язування математичних задач засобами веб-СКМ Sage.

Термін „комп’ютерна математика” є узагальненням кількох раніше введених термінів, таких як символьна математика, комп’ютерна алгебра, обчислювальна математика, конкретна математика, математичне моделювання та комп’ютерне моделювання. По суті, мова йде про автоматизацію розв’язування математичних задач (включаючи моделювання) з допомогою комп’ютера, тобто про комп’ютерну математику. При цьому використовується цілий ряд нових специфічних алгоритмів та методів розв’язування таких задач, які були породжені саме можливістю застосування сучасних комп’ютерів.

Засобами комп’ютерної математики стали системи комп’ютерної математики (СКМ). Використання СКМ значно полегшує розв’язування типових математичних задач, таких як обчислення значень функцій та побудова їх графіків, розв’язування рівнянь, нерівностей та їх систем, обчислення інтегралів, знаходження похідних функції тощо. При цьому у користувача немає потреби у різноманітних довідниках та математичних таблицях, і разом з тим з’являються можливості у короткі терміни розв’язувати значну кількість математичних задач, готувати електронні книги. Використання СКМ стимулює інтерес студентів одночасно і до математики, і до новітніх інформаційних технологій та програмування.

Застосування СКМ позбавляє від виконання рутинних обчислень, вивільняє час, обмірковування алгоритмів розв’язування задач, постановки задач і побудови відповідних математичних моделей, подання результатів у найбільш зручній формі. Вивільнений час можна використати для більш глибокого вивчення математичної сутності задач і методів їх розв’язання.

SAGE – це безкоштовне вільно поширюване Web-середовище математичних обчислень для виконання символьних, алгебраїчних та чисельних розрахунків (рис. 2). В SAGE є власне символьне ядро, проте вона виступає переважно як інтегратор різних систем з єдиним Web-інтерфейсом. Основними складовими SAGE є: – інтерфейси до різних СКМ, зокрема, Maple, Mathematica, Matlab, MuPAD та ін.;

– якісні пакети для алгебри та обчислень (Maxima), швидких високоточних обчислень (GMP), алгебраїчної геометрії (Singular), лінійної алгебри (Linbox), графіки (Gnuplot), теорії груп (GAP), теорії чисел (PARI), оптимізації (GSL) та ін. – мови програмування (Python, Lisp, Fortran, C/C++ та ін.). SAGE, як мережна СКМ, забезпечує проведення обчислень у середовищі Web-браузера, не вимагає установки обчислювального ядра СКМ на клієнтській машині, тим самим вирішується проблема інсталяційної бази та ліцензування програмного забезпечення, а для учнів та студентів створюються сприятливі умови для дистанційного навчання математичних дисциплін. Окрім зазначених переваг SAGE слід вказати наступні:

– невимогливість до апаратної складової обчислювальної системи; – індиферентність до використовуваного браузера;

– підтримка інтерфейсів як до вільно поширюваних, так і до комерційних систем комп’ютерної математики;

– подання математичних виразів природною мовою не вимагає встановлення спеціального

програмного забезпечення

– достатньо дозавантажити математичні шрифти; – наявність потужного інструментарію для побудови статичних та динамічних графічних зображень у Web (на площині та у просторі);

– можливість публікації робочих аркушів (worksheets) записника (notebook) у мережі Internet;

– підтримка технології Wiki;

– підтримка розподілених обчислень та спільних проектів.

SAGE має два інтерфейси – локальний інтерфейс командного рядка та Web-інтерфейс.

Web-інтерфейс SAGE отримав назву блокнотного (notebook), тому що він являє собою комп’ютерну модель записника, який математики традиційно використовують для виконання математичних розрахунків.

Для організації роботи у локальній мережі достатньо встановити SAGE на будь-якому комп’ютері.

Введення виразів, виконання символьних перетворень, робота з графікою.

Вирази SAGE – це комбінації чисел, змінних, арифметичних операторів (“+”, “–”, “*”, “/”, “%”, “^”, “**”), операторів порівняння (“==”,“<>”, “!=”, “<”, “>”, “<=”, “>=”), логічних операторів (“not”, “and”, “or”),дужок (“(”, “)”) і функцій

Основні математичні функції

Команда Функція Опис дії функції

abs(x) |x| модуль числа (абсолютне значення)

sqrt(x) x квадратний корінь

exp(x) ex експонента

ln(x) ln x натуральний логарифм

log(x,b) logb x логарифм за основою b

factorial(n) n! факторіал числа n (n!=1·2·3·...·n)

sin(x) sin x синус

cos(x) cos x косинус

tan(x) tg x тангенс

cot(x) ctg x котангенс

asin(x) arcsin x арксинус

acos(x) arccos x арккосинус

atan(x) arctg x арктангенс

acot(x) arcctg x арккотангенс

sinh(x) sh x синус гіперболічний

cosh(x) ch x косинус гіперболічний

tanh(x) th x тангенс гіперболічний

coth(x) cth x котангенс гіперболічний

Над виразами в середовищі SAGE можна виконати операції спрощення, розкриття дужок та розкладання на множники.

Операцію спрощення (без розкриття дужок) виконує функція simplify.

Приклад 1. Спростити вираз: 3x2 + 5x + 17x – x2.

sage: simplify(3*x^2+5*x +17*x-x^2)

2*x^2 + 22*x

Приклад 2.4. Розкрити дужки у виразі: 3x(x – 6) – (2x2 – 14).

sage: a=3*x*(x-6)-(2*x^2-14); a

3*x*(x-6)-(2*x^2-14)

sage: expand(a)

x^2-18*x+14

ПОБУДОВА ГРАФІЧНИХ ЗОБРАЖЕНЬ

Засобами mathplotlib в SAGE можна побудувати:

– графічні примітиви (точка, стрілка, лінія, коло, круг, заповнений

(зафарбований) многокутник, сфера);

– графіки функціональних залежностей, заданих аналітично, пара-

метрично та у полярних координатах;

– правильні многогранники;

– поверхні, задані аналітично та параметрично,

а також додавати підписи до графічних об’єктів.

Побудова графічних примітивів на площині

Графічний примітив точка на площині визначають функції point

або points. Зазначені функції не просто задають, а й будують примітив,

використовуючи параметри системи координат за замовчуванням.

Приклад 3.1. Побудувати точку на площині.

sage: point((-1,2))

або

sage: show(point((-1,2)))

або

sage: a=point((-1,2)); a

або

sage: a=point((-1,2)); show(a)

або

sage: a=point((-1,2)); a.show()

Зазначені функції можуть бути використані і для побудови множи-

ни точок, заданих відповідним чином.

Побудова графіків функціональних залежностей

Для побудови графіків функціональних залежностей SAGE має такі

функції:

plot – для функціональних залежностей, заданих аналітично у де-

картових координатах;

parametric_plot – для функціональних залежностей, заданих пара-

метрично у декартових координатах;

polar_plot – для функціональних залежностей, заданих у полярних

координатах.

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

функцій для побудови різноманітних графіків.

Приклад 3.12. Побудувати синусоїду на двох періодах.

sage: plot(sin(x),(-2*pi,2*pi),rgbcolor='black')

Окрім того, SAGE має ряд специфічних функцій для графічного ві-

дображення числових даних та побудови графіків:

bar_chart – для побудови стовпчикової діаграми;

contour_plot – для побудови контурних ліній функції від двох

змінних;

plot_vector_field – для побудови векторного поля для двох функ-

ції від двох змінних та інші.