1.7 Інструментальні засоби моделювання.

 

1.7.1 Моделювання з використанням математичних пакетів

 

Сучасний процес математичного моделювання важко реалізувати без комп’ютерів або вбудованих контролерів. Для цього використовуються різноманітні інструментальні програмні засоби та середовища (MathCad, MatLab, Mathematіca, Maple, Derive, VisSim, Genius й інші), що суттєво спрощують моделювання. Сучасні математичні пакети можна використовувати і як звичайний калькулятор, і як засоби для спрощення виразів при розв’язанні будь-яких математичних задач, і як генератори графіки або навіть звука Стандартними стали також засоби взаємодії з Internet, шляхом генерації HTML-сторінок прямо в процесі обчислень.

Звичайно, кваліфікований користувач, який в достатній мірі володіє однією з мов програмування (C++, Java, Pascal, Fortran, Prolog та іншими), може самостійно створити окрему програму або комплекс програм, що дозволить реалізувати на ПК алгоритм його задачі. Проте, такий підхід потребує, як правило, великих працезатрат на програмування, від лагодження та тестування кожної програми. Тому, для скорочення часу програмування було створено згадані прикладні програмні пакети, області використання яких у значній мірі перекриваються. Для найбільш ефективного використання обчислювальної техніки необхідно правильно вибрати найкращий пакет програм на самій ранній стадії розв’язання прикладної задачі. Адже, реальна мета полягає в рішенні певної проблем, а обчислення – всього лише проміжний етап на шляху до цього рішення..

При дослідженні систем автоматичного регулювання, обчислювальних математичних задач, найбільш ефективним є використання програмної системи Matlab з широким класом предметно-орієнтованих бібліотек (toolbox) та інструментом візуального моделювання Simulink. У системі MatLab також існують широкі можливості для програмування. Її бібліотека C Math (компілятор MatLab) є об'єктною і містить понад 300 процедур обробки даних мовою C. Усередині пакета можна використовувати як процедури самої MatLab, так і стандартні процедури мови C, що робить цей інструмент наймогутнішою підмогою при розробці додатків (використовуючи компілятор C Math, можна вбудовувати будь-які процедури MatLab у готові додатки).

Для візуалізації моделювання система MatLab має бібліотеку Іmage Processіng Toolbox, що забезпечує широкий спектр функцій, що підтримують візуалізацію проведених обчислень безпосередньо із середовища MatLab, збільшення тв аналіз, а також можливість побудови алгоритмів обробки зображень. Систему MatLab можна використовувати для обробки зображень, сконструювавши власні алгоритми, які будуть працювати з масивами графіки як з матрицями даних. Оскільки мова MatLab оптимізована для роботи з матрицями, у результаті забезпечується простота використання, висока швидкість і економічність проведення операцій над зображеннями.

Серед інших бібліотек системи MatLab можна також відзначити System Іdentіfіcatіon Toolbox – набір інструментів для створення математичних моделей динамічних систем, заснованих на спостережуваних вхідні/вихідних даних. Особливістю цього інструменту є наявність гнучкого користувацького інтерфейсу, що дозволяє організувати дані й моделі. Бібліотека System Іdentіfіcatіon Toolbox підтримує як параметричні, так і непараметричні методи. Інтерфейс системи полегшує попередню обробку даних, роботу з ітеративним процесом створення моделей для одержання оцінок і виділення найбільш значимих даних. Що стосується математичних обчислень, то MatLab надає доступ до величезної кількості підпрограм, що містяться в бібліотеці NAG Foundatіon Lіbrary компанії Numerіcal Algorіthms Group Ltd (інструмент має сотні функцій з різних областей математики, і багато з цих програм були розроблені широко відомими у світі фахівцями). Це унікальна колекція реалізацій сучасних чисельних методів комп'ютерної математики, створених за останні три десятки років. Лише додану до системи велику кількість документації цілком можна розглядати як фундаментальний багатотомний електронний довідник по математичному забезпеченню. Сьогодні система MatLab широко використовується в техніці, науці та освіті, але все-таки вона більше підходить для аналізу даних і організації обчислень, ніж для чисто математичних викладень.

Для візуального моделювання та моделювання сумісно з реальною апаратурою більш зручним є програмний пакет VisSim.

Аналітичні перетворення дозволяють виконувати більшість математичних програмних продуктів MathCad, Mathematіca, Maple. З цих трьох поширених математичних пакетів, найбільш потужним є Maple. Maple надає зручне середовище для комп'ютерних експериментів. Пакет дозволяє створювати інтегровані середовища за участю інших систем і універсальних мов програмування високого рівня. Коли розрахунки зроблені й потрібно оформити результати, то можна використовувати засоби цього пакета для візуалізації даних і підготовки ілюстрацій для публікації.. Робота проходить интерактивно - користувач уводить команди й відразу бачить на екрані результат їхнього виконання. При цьому пакет Maple зовсім не схожий на традиційне середовище програмування, де потрібна тверда формалізація всіх змінних і дій з ними. Тут же автоматично забезпечується вибір типів змінних і перевіряється коректність виконання операцій, так що в загальному випадку не потрібно опису змінних і строгої формалізації запису. Ядро символьних обчислень Maple включено до складу цілого ряду систем комп'ютерної математики – від систем для широкого кола користувачів типу MathCad до однієї із кращих систем для чисельних розрахунків і моделювання MatLab.

На відміну від потужного та орієнтованого на високоефективні обчислення при аналізі даних пакета MatLab, програма MathCad – це, скоріше, редактор математичних текстів із широкими можливостями символьних обчислень і прекрасним інтерфейсом. MathCad не має мови програмування як такої, а можливості символьних обчислень запозичений з пакета Maple. Проте інтерфейс програми MathCad дуже простий, а можливості візуалізації широкі. Всі обчислення тут здійснюються на рівні візуального запису виразів у загальновживаній математичній формі. Пакет має гарні підказки, докладну документацію, цілий ряд додаткових модулів та вбудованих функцій. Однак поки математичні можливості MathCad уступають системам Maple, Mathematіca, MatLab. Не зважаючи на це, по програмі MathCad випущено багато книг і навчальних курсів. Сьогодні ця система стала буквально міжнародним стандартом для технічних обчислень. Розробники Mathcad зробили все можливе, щоб користувач, який не володіє спеціальними знаннями в програмуванні, міг реалізувати велику кількість обчислювальних методів та досягнути значного результату в області математичних розрахунків.

Звичайно, кожен з математичних пакетів має свої переваги та недоліки та є зручнішим для розв’язання конкретних завдань. В даній книзі більш детально зосереджено увагу на системах MatLab та MathCad, які орієнтовані на різні типи задач і дають можливість розв’язання різних за складністю завдань. Приклади розрахунків у пакетах MatLab та MathCad наведено у Додатках Б і В.