Современные информационные технологи/2Вычислительная техн. и програм.

Степова Т.О. , Юшко Д.П., Мерінов І.В.

ВИКОРИСТАННЯ ПАКЕТІВ ПРИКЛАДНИХ ПРОГРАМ В МОДЕЛЮВАННІ НА ЕОМ

Запропоновано характеристику пакетів прикладних програм для моделювання на ЕОМ з використанням прикладів чисельних методів, а також мов програмування, орієнтованих на використання як для суто обрахунків, так і для загального призначення.

Метою є короткий та зручний огляд можливостей середовищ MATLAB, MathCAD та мови Java на простих прикладах вирішення задач лінійної алгебри для покращення ефективності оволодіння практичними навичками студентами інженерних спеціальностей. Такий огляд дає можливість студенту самостійно оцінити комфортність середовищ та визначити в якому саме буде виконати автоматизацію розрахунків.

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

Орієнтування у таких пакетах прикладних програм, як MATLAB, MathCAD та NetBeans на даний час є досить актуальним, так як перераховані середовища найчастіше обираються в якості інструментів моделювання ситуацій на ЕОМ для вирішення різноманітних задач у галузях науки, пов’язаних з складними математичними розрахунками, необхідністю реалізації операцій над великою кількістю інформаційних даних, масивними числами, що потребують підвищеної точності представлення та великого об’єму пам’яті.

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

Для реалізації деяких операцій над матрицями  в середовищі NetBeans IDE на мові Java необхідно створити функцію, з описом трьох дій (додавання, віднімання матриць, множення матриці на коефіцієнт) з, як мінімум, двома циклами в кожному для перебору всіх елементів двомірних матриць; з визначенням об’єму пам’яті для масивів з початковими даними і масиву-відповіді, розміром, що залежить від типу операції (це має особливе значення для виконання множення матриць).

Також програма буде містити велику кількість проміжних змінних для індексації елементів і збереження розміру матриць; об’єктів для зчитування в масив введених з клавіатури або файлу даних і округлення відповіді. Швидкодія виконання програми тісно пов’язана з структурою програми.

Тобто, для вирішення цієї задачі лінійної алгебри, програміст повинен забезпечити коректне зчитування  початкових даних, запис відповідних елементів в масив, провести правильний аналіз команд отриманих з головної функцій, виконання необхідних операцій, запис результату та організувати вивід масиву відповіді на екран в правильному порядку.

В той час як для вирішення ідентичної проблеми в MATLAB на програмний код користувачу потрібно витратити дві стрічки для введення матриць з початковими умовами і одну на введення команди.

В MathCAD введення матриць супроводжується зазначенням кількості елементів в стрічці та стовпчику матриці. Результат арифметичних дій можна отримати відразу без присвоєння виразу окремій змінній.

Для NetBeans IDE вирішення задач супроводжується створенням великої кількості об’єктів для реалізації введення та виведення даних, округлення чисел, написано додатково функцію визначення та порівняння різниці масивів для методу Зейделя.

Для середовищ MATLAB і MathCAD такі незручності було уникнуто. Програмні коди в цих середовищах представляють майже повну копію коду для середовища NetBeans IDE, тільки без зазначення об’єму пам’яті, типу та ініціалізації змінних.

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

В MathCAD зручніший спосіб виклику функцій. Також візуально легше побачити межі блоку програми, які на Java представлені фігурними скобками, а в MATLAB окремим оператором end.

В MATLAB легше виконуються дії з масивами даних. 

Огляд можливостей середовищ з зазначенням деяких відмінностей в програмному коді, дають змогу  більш повно ознайомитись з усіма бібліотеками та інструментами середовищ MATLAB, MathCAD та мови Java.

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

Отже, для методичної допомоги в оцінці практичних аспектів застосування математичних пакетів, популярних в інженерних і наукових розрахунках, корисних для студентів, що навчаються на різних інженерних спеціальностях, було представлено можливості програмних засобів розробки математичного забезпечення середовищ MATLAB, MathCAD, NetBeans IDE.

Література:

1.            Кетков Ю. Л. MATLAB 7: Программирование, численные методы. – СПб.: БХВ-Петербург, 2005. – 752 с.

2.            Черняк А. А., Новиков В. А., Мельников О. И. и др. Математика для экономистов на базе MathCAD. – СПб.: БХВ-Петербург, 2003. – 496 с.

3.                 Kвєтний Р. Н. Методи комп’ютерних обчислень. Вінниця: ВНТУ, 2001. – 148 с.