Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування»




НазваниеКонспект лекцій з дисципліни «Комп’ютерна техніка І програмування»
страница4/17
Дата конвертации28.01.2013
Размер2.23 Mb.
ТипКонспект
1   2   3   4   5   6   7   8   9   ...   17

3. Сучасне програмування


3.1. Порівняльний аналіз основних сучасних СКМ (MAPLE, MATHCAD, MATHEMATICA, MATLAB, тощо).

3.2. Призначення та можливості СКМ MAPLE фірми Waterloo Maple, Inc. (Канада).

3.3 Інсталяція та апаратні вимоги. Інтерфейс системи MAPLE.

3.4. Формати математичних виразів та основи роботи в діалоговому режимі.

3.5. Робота з довідковою системою СКМ. Інформаційна підтримка СКМ MAPLE в Інтернеті.


3.1. Порівняльний аналіз основних сучасних СКМ

(MAPLE, MATHCAD, MATHEMATICA, MATLAB, тощо)


Сьогодні СКМ випускаються декількома крупними фірмами-виробниками, причому в різних форматах і на різний клас споживачів. До простих і відносно нескладних систем комп'ютерної математики, щоправда з дещо обмеженими можливостями, відносять системи DERIVE та різні версії системи MATHCAD. Система DERIVE вважається навчальною СКМ початкового рівня. Вона функціонує на основі мови штучного інтелекту (MU LISP) і є найменш вимогливою до апаратних можливостей ПК: це єдина система здатна працювати навіть на комп'ютерах раритетного класу IBM PC ХТ без жорсткого диску (вінчестеру). Проте за можливостями вона не може конкурувати з системами більш високого класу ані в числових розрахунках, ані в символьних перетвореннях, ані в графічній візуалізації результатів обчислень.

До середнього рівня СКМ відносять системи класу MATHCAD. Ця СКМ має висококласну систему числових обчислень, проте дещо обмежену систему символьних перетворень ( реалізовану на мові С ). Символьні перетворення в цій системі здійснює ядро іншої СКМ (MAPLE), придбане за ліцензією канадської фірми-розробника Waterloo Maple Inc. Достатньо сказати що з понад 3000 функцій ядра СКМ MAPLE лише декілька десятків основних функцій війшло в СКМ MATHCAD. Втім гарфічні можливості різних версій MATHCAD мало чим поступаються графіці більш складних СКМ.

Ядро системи Maple використовується і в іншій системі комп'ютерної математики високого рівня — MATLAB, додаючи її останнім версіям незвичайні для неї можливості символьної математики. MATLAB є добре апробована і надійна СКМ, розрахована на рішення найширшого круга математичних задач з представленням даних в універсальній (але не нав'язуваної користувачам) матричній формі, запропонована американською фірмою Math Works, Inc. Система MATLAB пропонується розробниками як продукт в першу чергу для застосувань в системі військово- промислового комплексу, в аерокосмічній галузі і автомобілебудуванні. Близько мільйона легально зареєстрованих користувачів вже застосовують цю систему. Її охоче використовують в своїх наукових проектах ведучі університети і наукові центри миру. Популярності системи сприяє її могутнє розширення Simulink, що надає зручні і прості засоби, у тому числі візуальне об’єктно-орієнтоване програмування, для моделювання лінійних і нелінійних динамічних систем, а також безліч інших пакетів розширення системи. Вважається, що це одна з кращих систем комп’ютерної математики, особливо в галузі числових розрахунків. До її недоліків відносять певну громіздкість та вимогливість до ресурсів ПК: прикладом, одна з версій — MATLAB 5.3.1 - займає на жорсткому диску 1500 Мбайт пам'яті.

Більшість перших CKM (Eureka, Mercury, Excel, Lotus-123, Mathcad для MS-DOS, PC MATLAB та ін.) призначалася для числових розрахунків. Вони як би перетворювали комп'ютер на великий програмований калькулятор, здатний швидко і автоматично (за введеною програмою) виконувати арифметичні і логічні операції над числами або масивами чисел. Їх результат завжди конкретний — це або число, або набір чисел, що представляють таблиці, матриці або точки графіків. Зрозуміло, комп'ютер дозволяє виконувати такі обчислення з недосяжною раніше швидкістю, педантичністю і навіть точністю, виводячи результати у вигляді добре оформлених таблиць або графіків.

Багато користувачів справедливо критикували числові математичні системи і програми реалізації числових методів за частинний характер одержуваних з їх допомогою результатів. Вони не давали можливості одержати загальні формули, що описують рішення задач. Як правило, з результатів чисельних обчислень неможливо було зробити які-небудь загальні теоретичні, а часом і практичні висновки. Тому, перш ніж уживати такі системи в реалізації серйозних наукових проектів, доводилося вдаватися до дорогої і недостатньо оперативної допомоги математиків-аналітиків. Саме вони вирішували потрібні задачі в аналітичному вигляді і пропонували більш менш прийнятні методи їх чисельного рішення на комп'ютерах. Символьні (чи інакше, аналітичні) операції — це якраз те, що кардинально відрізняє системи вищого класу MAPLE та MATHEMATICA (і подібні їм символьні математичні системи) від систем для виконання числових розрахунків. При символьних операціях, званих також аналітичними, завдання на обчислення складаються у вигляді символьних (формульных) виразів, і результати обчислень також виходять в символьному вигляді. Числові результати при цьому є окремими, частковими випадками символьних.

Вирази, представлені в символьному вигляді, відрізняються високим ступенем загальності. Наприклад, тотожність справедлива при будь-яких значеннях аргументу х. Якщо результат символьної операції рівний, наприклад, sin(1), то він і буде виведений як sin(1) — конкретне ж дійсне число, приблизно представляюче або апроксимуюче sin(1), обчислюватися не буде, бо має частковий характер. Числове значення sin(1) можна оцінити за допомогою окремої команди, як це показано на прикладі:

> restart: sin(1);



> sin(1)=evalf(%);



Спроба обчислити в загальному вигляді вираз за допомогою числових математичних систем або програм на звичайних мовах програмування до успіху не приведе. Замість очікуваного результату з'явиться повідомлення про помилку вигляду: «змінна х не визначена!». Комп'ютер чекатиме введення конкретного значення для х.Так буде незалежно від того, запрограмували ви обчислення на простенькому Бейсіку або на мові професіоналів-програмістів C++. Проте й після вводу конкретного значення змінної числова математична програма може вивести результат на кшталт 0.9999999999, або 1.00000000001 і лише Ваша інтуїція, або знання математики, мусить підказати, що насправді це одиниця. Лише системи символьної математики при обчисленнях дадуть довгоочікуване і абсолютно точне значення 1:

> simplify(sin(x)^2+cos(x)^2);



>plot([sin(x)^2,cos(x)^2,sin(x)^2+cos(x)^2],x=0..Pi,color=[black,blue,khaki], linestyle=[1,1,1],tickmarks=[3,3], labels=[`x`,`sin(x)^2,cos(x)^2`]);





Поки не варто звертати увагу на те, як одержані наведені вище результати — насправді це командні рядки реально працюючої системи MAPLE.

СКМ вищого класу, до яких відносять як MAPLE від Waterloo Maple Inc., так і MATHEMATICA від Wolfram Research Inc.(США) мають приблизно однакові можливості як в галузі символьних обчислень, так і в галузі числових розрахунків.Варто відзначити, що інтерфейс MAPLE більш інтуїтивно зрозумілий, ніж у більш строгій системі MATHEMATICA. Хоча MAPLE на перший погляд має дещо менш могутню графіку, але простота управління параметрами і легкість підготовки графічних процедур часто дозволяє візуалізувати рішення математичних задач з меншими зусиллями, ніж з використанням графіки MATHEMATICA. Обидві системи в останніх реалізаціях зробили якісний стрибок у напрямі ефективності рішення задач в числовому вигляді, зокрема за рахунок підвищення швидкості виконання матричних операцій. В цьому курсі ми вивчатиимемо переважно можливості СКМ MAPLE (версії 7,8 та 9.01)


3.2. Призначення та можливості СКМ MAPLE фірми Waterloo Maple, Inc. (Канада)


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

Maple — типова інтегрована система. Вона об'єднує в собі: 

могутню мову програмування (вона ж мова для інтерактивного спілкування з системою); 

редактор для підготовки і редагування документів і програм; 

призначений для користувача сучасний багатовіконний інтерфейс з можливістю роботи в діалоговому режимі; 

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

ядро алгоритмів і правил перетворення математичних виразів; 

числовий і символьний процесори; 

систему діагностики; 

бібліотеки вбудованих і додаткових функцій; 

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

До всіх цих засобів є повний доступ прямо з програми.

Основою для роботи з символьними перетвореннями в Maple є ядро системи. Воно містить сотні базових функцій і алгоритмів символьних перетворень. В нових реалізаціях об'єм ядра сягає 6-7 Мбайт. Є також основна бібліотека операторів, команд і функцій. Багато вбудованих в неї функцій, як і функції ядра, можуть використовуватися без будь-якого оголошення, інші ж потребують оголошення. Крім того, є ряд пакетів(расkages), що підключаються. Додаткові функції з пакетів можуть застосовуватися після оголошення підключення пакету за допомогою команди with(name), де name — ім'я вживаного пакету. Загальне число функцій, з урахуванням вбудованих в ядро і розміщених в пакетах в системі Maple, вже перевищує 3000. Це означає, що більшість задач може розв'язуватися в режимі прямого діалогу з системою без використання будь-яких засобів програмування.

Перерахуємо основні можливості системи Maple

Інтерфейс: 

робота з багатьма вікнами; 

вивод графіків у окремих вікнах або у вікні документа; 

представлення вихідних і вхідних даних уприродному вигляді математичних формул; 

завдання текстових коментарів різними шрифтами; 

можливість використовування гіперпосилок і підготовки електронних документів; 

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

управління за допомогою миші. 

Символьні і чисельні обчислення: 

числова та аналітична інтеграція;   

диференціювання функцій;   

обчислення меж функцій;  

розкладання функцій в ряди; 

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

інтегральні перетворення Лапласа, Фур'є, тощо;  

дискретні Z-перетворення;  

пряме і зворотне швидкі перетворення Фур'є;   

робота з кусочно-заданими функціями. 

Робота з рівняннями в чисельному і символьному вигляді: 

рішення систем лінійних і нелінійних рівнянь;   

рішення систем диференціальних рівнянь; 

символьне обчислення рядів;  

робота з рекурентними функціями;  

рішення трансцендентних рівнянь;   

рішення систем з нерівностями.   

Робота з функціями: 

обчислення значень всіх елементарних функцій;  

обчислення значень більшості спеціальних математичних функцій;   

перерахунок координат точок поміж різними координатними системами; 

завдання функцій користувача.   

Лінійна алгебра: 

понад сто операції з векторами та матрицями;  

рішення систем лінійних рівнянь;   

формування спеціальних матриць та їх перетворення;   

обчислення власних значень і власних векторів матриць;  

підтримка швидких векторних і матричних алгоритмів пакету програм NAG.

Графічна візуалізація результатів обчислень: 

побудова графіків багатьох функцій;  

різні типи осей (з лінійним і логарифмічним масштабом);  

графіки функцій в декартовій і полярній системах координат;  

спеціальні види графіків (точкові масиви, векторні графіки, діаграми рівнів, та ін.);  

системи координат, визначені користувачем;  

графіки, що представляють рішення диференціальних рівнянь;  

графіки тривимірних поверхонь з функціональним зафарбуванням;  

побудова перетинаючихся у просторі геометричних об'єктів;  

завдання користувачем забарвлення графіків;

 імпорт графіків з інших пакетів і програмних систем;

анімація графіків;  

створення і програвання анімаційних файлів.

Програмування: 

вбудована мова процедурного програмування;  

простий і типовий синтаксис мови програмування;  

обширний набір типів даних;  

типи даних, що задаються користувачем;  

засоби відладки програм;  

бібліотеки функцій;

завдання зовнішніх функцій і процедур;

підтримка мов програмування С та Fortran;  

можливість запису формул у форматі LaTeX.

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


3.3. Інсталяція та апаратні вимоги СКМ MAPLE. Інтерфейс системи MAPLE


Зокрема одна з останніх версій системи - Maple 7- вимагає:   процесор — Pentium 150 Мгц і вище; оперативна пам'ять — не менше 16 Мбайт (рекомендується 32 Мбайта і вище);   місце на жорсткому диску — близько 80 Мбайт (120 Мбайт для мережевої версії). Новіші версії - Maple 8, або Maple 9 - потребують дещо більше ресурсів, оосбливо це стосується розмірів оперативнї пам'яті.

Запуск Maple 7 проводиться, як звичайно, з меню Пуск. Знайшовши строчку Maple 7, необхідно відкрити підміню і клацнути на команді Maple 7. Можливий також запуск за допомогою ярлика, вміщеного на робочий стіл. У будь-якому випадку, спочатку на деякий час з'являється вікно-заставка. Після цього з'являється робоче вікно системи, зображене на рис. 3.1.





Рис.3.1. Вікно системи Maple 7.


Як і в усіх програмах, під операційну систему Windows інтерфейс Maple 7 має ряд характерних елементів, помітних на рис. 3.1 і перерахованих нижче: 

рядок заголовка з кнопками управління вікном (зверху); 

рядок головного меню; 

головна панель інструментів; 

контекстна панель інструментів, вид якої залежить від режиму роботи з Maple 7; 

вікно введення і редагування документів (один документ під назвою Untitled(1)-[Server 1] відкритий в цьому вікні разом з документом довідкової системи під назвою Introduction);

рядок стану (в самому низу вікна).

Призначений для користувача інтерфейс Maple 7 дозволяє готувати документи, що містять одночасно текстові коментарі, команди вхідної мови (з можливим перетворенням їх у природну математичну форму), результати обчислень у вигляді звичайних математичних формул і графічні дані. Це забезпечує зрозуміле представлення початкових даних і результатів обчислень, а також зручність їх повторного використання. В основі інтерфейсу Maple 7 лежить графічний багатовіконний інтерфейс операційної системи Windows. Управління системою Maple 7 можливе за допомогою головного меню, панелей інструментів і палітр, а також «гарячих» клавіш. Підтримуються також більша частина можливостей миші, властивих прикладним програмам під Windows.

Меню системи Maple 7. Найповніші можливості управління системою надає головне меню системи Maple 7. Воно, як завжди, розташовано безпосередньо під рядком заголовка. Меню надає доступ до основних операцій і параметрів призначеного для користувача інтерфейсу системи. Нижче даний перелік меню, доступних за наявності відкритого документа: 

File — робота з файлами і друком документів; 

Edit — команди редагування документа і операції з буфером обміну; 

View — управління видом призначеного для користувача інтерфейсу; 

Insert — операції вставки; 

Format — операції завдання форматів; 

Spreadsheet — операції завдання таблиць; 

Options — завдання та зміна параметрів; 

Window — управління вікнами; 

Help — робота з довідковою системою.

Головне меню Maple 7 є контекстно-залежним. Це означає, що його вигляд може мінятися залежно від поточного стану (контексту) системи. Наприклад, якщо всі документи закриті, то головне меню містить тільки три заголовки меню: File, Options і Help. При цьому місце для вікон документів порожнє і забарвлене в сірий колір. Вид меню також міняється залежно від того, які об'єкти в документі виділені. Більш детально роботу з меню системи Maple 7 ми розглянемо пізніше.

Палітри введення математичних символів. Корисно відразу звернути увагу на можливість модифікації інтерфейсу системи Maple 7 за допомогою команд меню View. В цьому меню можна побачити список палітр - Palettes, призначених для введення математичних знаків. Встановивши прапорці відповідних палітр, можна вивести їх на екран і перемістити ( звичайно мишкою) в будь-яке місце. Призначення знаків в палітрах очевидне з їх назв: SYMBOL — введення окремих символів (грецьких букв і деяких математичних знаків); EXPRESSION — введення шаблонів математичних операторів і операцій;   MATRIX — введення шаблонів матриць різних розмірів; VECTOR — введення шаблонів векторів різних розмірів і типів (вектори-стовпці або вектори-рядки). Слід зазначити, що не завжди введений на палітрі символ буквально повторює представлений на кнопці. Наприклад, замість символу "" може бути введено слово "alpha". Так відбувається, якщо встановлений діючий за умовчанням Maple-режим представлення символів. Палітра введення векторів запроваджена в Maple 7 вперше, що зробило роботу з векторами більш зручною.

Спливаючі підказки. Ще один важливий і корисний елемент інтерфейсу — спливаючі підказки. Вони з'являються, якщо навести курсор миші на той або інший елемент інтерфейсу. На мал. 2.1 показана одна із спливаючих підказок. Підказки мають вигляд білої хмарки, яка витікає з вказаного елемента інтерфейсу. Особливо зручні підказки для пояснення призначення кнопок палітр і панелей інструментів. Надалі ми неодноразово наводитимемо приклади спливаючих підказок при роботі з інтерфейсом.
1   2   3   4   5   6   7   8   9   ...   17

Похожие:

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconКонспект лекцій з дисципліни «теплоенергетика» для студентів за фахом мч, мс, лв, омт денної та заочної форм навчання
Конспект лекцій з дисципліни “Теплоенергетика ” для студентів неенергетичного профілю за фахом мч,МС,ЛВ,омт / Укл. О. Д. Горбунов....

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconВаріативна складова вивчення курсу Інформатика в 2012/2013 навчальному році
«Про навчальні плани загальноосвітніх навчальних закладів на 2012/2013 навчальний рік», у гімназіях, ліцеях, колегіумах години відведені...

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconКниги подаровані Б. Скорупською науковій бібліотеці Національного університету „Острозька академія” 004. Комп’ютерна наука І технологія. Застосування комп’ютера
Книги подаровані Б. Скорупською науковій бібліотеці Національного університету „Острозька академія”

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconГоловним завданням комплексного іспиту за фахом підготовки є перевірка якості професійної підготовки бакалаврів. Одночасно він є свідченням готовності І
Вона сприяє виявленню здібностей комп’ютерного мислення, творчого підходу бакалаврів до розв'язання проблеми підготовки висококваліфікованого...

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconОпис навчальної дисципліни
Робоча програма навчальної дисципліни «Виконання покарань щодо неповнолітніх та жінок» для слухачів за напрямом підготовки бакалавр,...

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconСхема розташування університету
Галузь знань 0510 – Метрологія, вимірювальна техніка та інформаційно- вимірювальні технології

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconРобоча програма навчальної дисципліни
Робоча програма нормативної навчальної дисципліни «Фольклор» для студентів за напрямом підготовки 020303 «Філологія», спеціальністю...

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconРобоча програма навчальної дисципліни
Робоча програма нормативної навчальної дисципліни «Історія англійської літератури хх століття» для студентів за напрямом підготовки...

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconКурс лекцій з інформатики Зміст Інформатика як наука
Тематичне оцінювання по темі: “Вступ. Інформація та інформаційні технології”

Конспект лекцій з дисципліни «Комп’ютерна техніка І програмування» iconА. В. Фоменко Основи web програмування
Могильний Г. А.– кандидат технічних наук, доцент, завідувач кафедри інформаційних технологій та систем Луганського національного...

Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib2.znate.ru 2012
обратиться к администрации
Библиотека
Главная страница