Материалы

Программные инструментальные средства для решения систем нелинейных дифференциальных уравнений методом гармонического баланса


Блок оценки точности решения дает возможность пользователю оценить точность полученного решения. В донном блоке реализуются другие методы решения дифференциальных уравнений, так же осуществляется графический вывод решений. Данный блок осуществляет сравнение решения полученного методом гармонического баланса и классическими численными методами такими как метод Рунге-Кутте который является методом четвертого порядка точности.

 

Входные данные вводятся в строковом виде. Для обработки данных были введены следующие блоки

Лексический анализатор. Преобразует входные данные для передачи синтаксическому анализатору. Отвечает за лексическую правильность входных данных.

Синтаксический анализатор. Проверяет синтаксическую правильность входных данных.

Генератор кода. Блок отвечает за генерацию исполняемого кода по входным данным и его компиляцию.

Интерпретатор. Блок, реализующий методы работы с входными данными и возможности без генерации кода выполнять вычисления.

 

Так как время работы программного продукта должно сводится к минимуму, а при большом количестве переменны в системе (1) и учете большого количества гармоник блок метода гармонического баланса значительно замедляется. Для решения этой проблемы было решено распараллелить вычисления при помощи сети, что и реализовано в блоке сетевого взаимодействия.

 

Метод гармонического баланса. Блок отвечает за получение решения и всех функций, связанных с реализацией метода гармонического баланса.

 

Как видно из архитектуры системы и назначения функциональных блоков логика работы системы представляется следующим образом: пользователь вводит математическую модель системы, для которой он хочет найти решения. Задает начальные параметры системы. Введенные данные проверяются на наличие лексических и синтаксических ошибок, если шибок нет, то данные передаются для обработки в блок генерации кода или интерпретатору.

Если данные в блок генерации кода, то по этим данным генерируется исходный код и производится его компиляция в результате чего получается динамически присоединяемая библиотека которая подключается к блоку метода гармонического баланса. И по этим данным производится поиск решения системы дифференциальных уравнений. Что дает значительный прирост скорости работы системы.

Если данные предаются интерпретатору, то все вычисления в блоке метода гармонического баланса производятся через него. Использование интерпретатора позволяет системе стать независимой от используемой операционной системы.

Так же возможно повысить быстродействие системы при использовании компьютерной сети. При этом обработка данных в блоке гармонического баланса производится параллельно на всех клиентах подключенных в данный момент.

 

В результате проведенной работы были разработаны программные инструментальные средства делающие метод гармонического баланса общедоступным методом.

 

1 2 3
Общее время работы: 9.4599723815918 мс
Использование памяти: 656 КБ