Невязка функции. Используемые методы. Задача для решения методом взвешенных невязок




Кафедра Юнеско по НИТ, Рейн Т.С. Введение Функция аппроксимируются набором функций: Где - неизвестные параметры - линейно-независимые функции, принадлежащие к полной последовательности (3) Рассмотрим функцию ошибки (невязку): (4) При этом будем полагать, что: - набор весовых функций (5)




Кафедра Юнеско по НИТ, Рейн Т.С. Метод коллокаций. Пример Рассмотрим следующее уравнение второго порядка на промежутке: с граничными условиями: Возьмем аппроксимирующую функцию в виде выражения удовлетворяющего граничным условиям при любых: (6) (7) (8) при Точное решение (проверка): В качестве точек коллокаций выберем








Кафедра Юнеско по НИТ, Рейн Т.С. Метод коллокаций и метод наименьших квадратов Распространим метод коллокаций на случай, когда число точек превышает число неизвестных. При этом неизвестные параметры определяются при минимизации в среднеквадратичном смысле. оценивается в точках (), а функция может быть записана в виде: Минимизируем (16), для -ого уравнения получим: (15) (16) (17)


Кафедра Юнеско по НИТ, Рейн Т.С. Пример Рассмотрим следующее уравнение второго порядка на промежутке: с граничными условиями: и аппроксимирующей функцией в виде выражения удовлетворяющего граничным условиям при любых: при Точное решение (проверка): Подсчитаем невязку в трех точках:


Кафедра Юнеско по НИТ, Рейн Т.С. Метод моментов Для заданной системы уравнений: В качестве весовых функций можно использовать любой набор линейно независимых функций из полной последовательности, например: При этом обеспечивается обращение в нуль моментов невязки более высокого порядка: (18) (17) (19)


Кафедра Юнеско по НИТ, Рейн Т.С. Пример Рассмотрим следующее уравнение второго порядка на промежутке: с граничными условиями: и аппроксимирующей функцией в виде выражения удовлетворяющего граничным условиям при любых: при Точное решение (проверка): Функция ошибки ортогонализируется по отношению к и:

Методы излагаются на основе результатов, представленных в учебных пособиях Зенкевича, Моргана и Румянцева .

Методы взвешенных невязок

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

Пусть имеется дифференциальное уравнение и граничное условие к нему:

Здесь L?дифференциальный оператор; x i ? пространственные координаты; V и S ? объем и внешняя граница исследуемой области; u 0 - точное решение.

при этом коэффициенты? неизвестные величины, подлежащие определению с помощью некоторой математической процедуры.

В методах невязки эта процедура состоит из двух последовательных этапов. На первом этапе подстановкой приближенного решения (3) в уравнение (1) находится функция ошибка, или невязка, которая характеризует степень отличия от точного решения:

В итоге получается алгебраическое уравнение, содержащее текущие координаты и М по-прежнему неизвестных коэффициентов.

На втором этапе на функцию невязки (4) накладываются требования, которые минимизируют или саму невязку (метод коллокаций), или взвешенную невязку (метод наименьших квадратов и метод Галеркина).

В методе коллокаций полагают, что дифференциальное уравнение удовлетворяется только в некоторых выбранных (произвольно) точках? точках коллокаций, количество которых равно числу неизвестных коэффициентов. В этих М точках невязка должна равняться нулю, что приводит к системе М алгебраических уравнений для М коэффициентов:

В методах взвешенной невязки сначала формируют взвешенную невязку путем ее умножения на некоторые весовые функции, а затем минимизируют ее в среднем:

В методе наименьших квадратов? методе Рэлея-Ритца? в качестве весовой функции выбирается сама ошибка, т.е. , и требуется, чтобы полученная таким способом величина (функционал) была минимальна:

Для этого должно выполняться условие:

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

В методе Галеркина в качестве весовых функций берутся сами функции, называемые базисными, и требуется их ортогональность невязке:

Если? линейный оператор, то система (9) переходит в систему алгебраических уравнений относительно коэффициентов.

Основная концепция метода конечных элементов

Главная трудность при непосредственном применении классических методов взвешенных невязок связана с выбором базисных функций для области определения в целом. Эти функции должны не только удовлетворять граничным условиям, но и достаточно полно описывать геометрию и другие характеристики задачи. Все эти условия обычно трудно выполнить, особенно для объектов (конструкций) сложной геометрии при наличии сложного теплообмена, и поэтому возможности методов в их классическом смысле весьма ограничены.

С появлением быстродействующих ЭВМ получила развитие идея локализации аппроксимирующих функций в малых областях (подобластях), называемых конечными элементами

Важной особенностью МКЭ является то, что первоначально при локальной аппроксимации функции на конечных элементах, их можно рассматривать независимо друг от друга. Это значит, что каждый элемент можно считать изолированным от всей совокупности и аппроксимировать функцию на этом элементе с помощью ее значений в его узлах независимо от того, какое место займет рассматриваемый элемент в связанной модели, и от поведения функции на других конечных элементах. С математической точки зрения это означает следующее. Для каждого элемента записывается локальная (элементная) аппроксимирующая функция:

где? число узлов, принадлежащих -му элементу; ? значения искомой функции в его узлах; ? базисная функция; ? объем элемента.

Поскольку каждый элемент рассматривается отдельно, то его свойства изучаются независимо от других элементов, т.е. дифференциальное уравнение с соответствующими граничными условиями решается для каждого -го элемента, например, методом Галеркина:

Полученные на основании (2.2) матрицы для отдельных элементов, которые содержат в качестве неизвестной узловые значения функции, формируют в глобальные матрицы для всей области определения. Разрешая полученную таким образом систему алгебраических уравнений, определяют значения искомой функции в узлах, что позволяет найти приближенное решение задачи для всей области в целом:

где - число элементов, совокупность которых аппроксимирует область в целом.

Реализация в рамках МКЭ представления области определения совокупностью конечных элементов обусловливает следующие важные преимущества МКЭ, обеспечивая его широкое применение для решения задач теории поля:

* локальная аппроксимация на каждом элементе единственным образом определяется значениями искомой функции в узловых точках;

* обеспечивается широкая вариация задания граничных условий на отдельных участках границы (внешней и внутренней) области;

* криволинейные участки границ области могут быть аппроксимированы прямыми линиями;

* размеры и геометрическая форма элементов могут быть разными;

* взаимные соединения элементов не обязательно должны следовать какой-либо регулярной структуре;

* свойства материала каждого элемента могут быть индивидуальными и, к тому же, анизотропными;

* обеспечивается возможность повышения точности решения задачи путем увеличения количества элементов, ограничиваемого лишь мощностью используемой ЭВМ;

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

В соответствии с концепцией МКЭ основными этапами его применения к решению краевых задач теории поля являются следующие:

* построение сетки из конечных элементов, взаимосвязанных в узловых точках.

При этом границы внешних элементов аппроксимируют границу области в целом;

* получение базисных функций элементов;

* построение матричного представления для каждого элемента на основании;

* объединение всех элементов в ансамбль путем матричных преобразований;

* задание краевых условий для элементов;

* решение результирующей системы уравнений: обыкновенных дифференциальных первого порядка (нестационарный процесс) или алгебраических (стационарный процесс);

* вывод и оценка результатов; расчет любой другой функции, зависящей от значений в узлах найденного решения задачи.

Первый этап конечно-элементной процедуры - декомпозиция исследуемого объекта (конструкции или ее частей) на конечные элементы, взаимосвязанные в узловых точках, - включает в себя следующие операции:

* выбор типов элементов, совокупность которых аппроксимирует объект;

* задание размеров и, тем самым, количества элементов;

* нумерацию элементов и узлов, и индексацию последних.

Кафедра физхимии ЮФУ (РГУ)

ЧИСЛЕННЫЕ МЕТОДЫ И ПРОГРАММИРОВАНИЕ

Материалы к лекционному курсу

Системы линейных уравнений

Системы n линейных уравнений с n неизвестными x 1 , x 2 , ..., x n в общем случае принято записывать следующим образом:

где а ij и b i – произвольные константы. Число n неизвестных называется порядком системы.

Решением уравнения является такая совокупность значений переменных х 1 , х 2 ,…, х n , которая одновременно обращает все уравнения системы в тождество.

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

Эквивалентной (и весьма удобной!!!) записью системы линейных уравнений является матричная запись

или сокращенно ,

в чем легко убедится, если воспользоваться правилами перемножения матриц: элемент, стоящий на пересечении i -й строки и j -го столбца матрицы-результата есть скалярное произведение i -й вектор-строки первой матрицы и j -го вектор-столбца второй матрицы.

Коэффициенты при неизвестных образуют квадратную матрицу размером n x n , (A) , переменные и свободные члены уравнений – векторы-столбцы длиной n (Х) и (В) , соответственно.

Решение системы уравнений есть вектор (X *) , который обращает это матричное уравнение в тождество.

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

Оценить близость какого-либо вектора (Х) i к решению системы уравнений можно оценив близость вектора невязок, вычисляемого приведенным ниже образом, к нулевому вектору:

Для выражения меры близости в виде числа используется какая-либо норма вектора, например, Евклидова норма или длина вектора в n -мерном пространстве (другое определение – это корень квадратный из скалярного произведения вектора на себя):

Иногда используются другие векторные нормы: норма-максимум (равна наибольшей по абсолютной величине компоненте вектора)

или норма-сумма (равна сумме абсолютных величин компонентов вектора)

Обусловленность линейных алгебраических систем

Численное решение систем алгебраических уравнений является часто решаемой в рамках математического моделирования задачей. При этом как размерность задачи, так и характер матриц может существенно меняться. Вычисления, проводимые с определенной точностью, так же оказывают влияние на результат решения линейных систем. Кроме того, сами коэффициенты системы – матрица (А) и свободные члены – (В) могут быть представлены с определенной погрешностью.

Приведем такой пример:

Система уравнений

Имеет, как нетрудно убедиться подстановкой, единственное решение x = 1, y = 1.

Предположим, что при подготовке системы к решению, правая часть первого уравнения была определена с небольшой абсолютной погрешностью в +0.01, то есть, правая часть первого из уравнений вместо 11 была взята равной 11,01.

Единственным решение этой системы уравнений уже будет вектор x=11,01 y=0.

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

Рассмотрим в общем виде систему линейных уравнений, в которой вектор свободных членов (В) представлен с некоторой абсолютной погрешностью (ΔВ) .

Если вектор (X) является точным решением уравнения с "точным" вектором ) .

то при наличии погрешности в правой части (ΔВ) решение системы уравнений будет отличаться от (X) на некоторый вектор (ΔX) , что можно записать следующим образом:

Раскроем скобки в правой части

И учтем точное уравнение

, умножая обе части равенства на матрицу, обратную матрице коэффициентов

Получим

т.е. абсолютная погрешность (ΔX) вычисления вектора решения (X) равна произведению матрицы, обратной матрице коэффициентов системы уравнений, на вектор абсолютной погрешности (ΔВ) .

Если перейти от матриц и векторов к соответствующим нормам, то получим, что норма вектора (ΔX) будет меньше либо равна произведению норм обратной матрицы и нормы вектора погрешности

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

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

Перемножим отдельно левые и правые части неравенств, что, очевидно, не изменит знак неравенства и разделим обе части на и, окончательно получим:

Величина называется числом (мерой) обусловленности матрицы А . От этой величины зависит степень влияния погрешности коэффициентов системы уравнений на погрешность полученного решения. Если это число невелико, то относительная погрешность решения будет не сильно отличаться от относительной погрешности коэффициентов. Чем больше число обусловленности тем больше будет влияние погрешности коэффициентов на погрешность решения.

Аналогичный анализ можно провести и для случая наличия погрешности задания матрицы коэффициентов системы (ΔA) . И в этом случае, так же, возникает число обусловленности.

Для рассмотренного числового примера

и

Если взять, например, матричную норму-максимум,

, то получим

для матрицы (А) норму 1011, а для матрицы, обратной (А) - (А) -1 – 1101. Таким образом, число обусловленности оказывается равным более 1000000!

Прямые (точные) методы

Метод Гаусса и Гаусса-Жордана

Алгоритм решения заключается в приведении расширенной матрицы системы уравнений к треугольному виду (метод Гаусса) или псевдодиагональному виду (метод Гаусса-Жордана).

Метод Крамера

В данном методе (при не равенстве нулю определителя, составленного из коэффициентов системы) значения переменных определяются следующим образом

I = 1, 2, …, n

Здесь в знаменателе стоит определитель матрицы коэффициентов системы. В числителе – определитель матрицы, полученной из матрицы коэффициентов путем замены i -го столбца на вектор-столбец свободных членов системы.

Для системы, записанной в общем виде:

Метод обращения матрицы

Решение системы уравнений, записанной в матричной форме, легко найти, если воспользоваться определением обратной матрицы:

(A)(A) -1 = (A) -1 (A) = (1) ,

где (1) – единичная диагональная матрица.

Действительно,

Умножим слева обе части уравнения на обратную матрицу коэффициентов системы (A) -1

Таким образом, для решения системы, необходимо обратить матрицу коэффициентов системы и умножить полученный результат на вектор-столбец свободных членов .

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

Приближенные (итерационные) методы

Метод простых итераций, метод Зейделя

Данные методы рассмотрены на примере систем нелинейных уравнений .

Метод минимальных невязок

Для решения линейных систем уравнений можно применять и различные методы поиска экстремумов. Проблема решения системы уравнений заменяется эквивалентной задачей нахождения экстремума функции n переменных.

Большая группа методов приближенного решения дифференциальных

уравнений базируется на математической формулировке, связанной с

интегральным представлением взвешенной невязки. Эту группу методов называют методами взвешенных невязок .

Пусть имеется дифференциальное уравнение и граничное условие к нему:

Здесь L −дифференциальный оператор; x i − пространственные координаты; V и S − объем и внешняя граница исследуемой области; u 0 – точное решение.

при этом коэффициенты − неизвестные величины, подлежащие определению с помощью некоторой математической процедуры.

В методах невязки эта процедура состоит из двух последовательных этапов. На первом этапе подстановкой приближенного решения (2.1.3) в уравнение (2.1.1) находится функция ошибка , или невязка , которая характеризует степень отличия от точного решения :

В итоге получается алгебраическое уравнение, содержащее текущие координаты и М по-прежнему неизвестных коэффициентов .

На втором этапе на функцию невязки (2.1.4) накладываются требования, которые минимизируют или саму невязку (метод коллокаций), или взвешенную невязку (метод наименьших квадратов и метод Галеркина).

В методе коллокаций полагают, что дифференциальное уравнение удовлетворяется только в некоторых выбранных (произвольно) точках − точках коллокаций , количество которых равно числу неизвестных коэффициентов . В этих М точках невязка должна равняться нулю, что приводит к системе М алгебраических уравнений для М коэффициентов :

В методах взвешенной невязки сначала формируют взвешенную невязку путем ее умножения на некоторые весовые функции , а затем минимизируют ее в среднем:

В методе наименьших квадратов − методе Рэлея-Ритца − в качестве весовой функции выбирается сама ошибка, т.е. , и требуется, чтобы полученная таким способом величина (функционал) была минимальна:

Для этого должно выполняться условие:

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

В методе Галеркина в качестве весовых функций берутся сами функции, называемые базисными , и требуется их ортогональность невязке :

Если − линейный оператор, то система (2.1.9) переходит в систему алгебраических уравнений относительно коэффициентов .

Рассмотрим метод Галеркина на конкретном примере . Дано уравнение на промежутке :


Сопоставление приближенных результатов, полученных различными методами, с точным решением дано в таблице 1.

Ю.Я. ЛЕДЯНКИН

МЕТОДЫ ВЗВЕШЕННЫХ НЕВЯЗОК, КОЛЛОКАЦИЙ, МОМЕНТОВ. СПОСОБ ПАРАЛЛЕЛЬНОЙ РЕАЛИЗАЦИИ В ЕДИНОМ ВЫЧИСЛИТЕЛЬНОМ ПОТОКЕ РЕШЕНИЯ ЗАДАЧ МАТЕМАТИЧЕСКОЙ ФИЗИКИ

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

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

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

Ключевые слова: параллельные вычисления, единый вычислительный поток, сложные структуры данных, задачи математической физики, метод конечных элементов.

Abstract. The idea of a parallel implementation of the methods of weighted residuals, collocations, moments in a single computational flow of solutions to the problems in mathematical physics with data processing in a form of complex structures based on processor elements including scalar multiplier is developed. The proposed method is described and reviewed on the specific test examples. It will be useful for mathematicians and developers of methods and structures of specially designed processors for solutions to the problems in mathematical physics and other problems.

Keywords: parallel computing, single computational flow, compound data structures, problems in mathematical physics, finite elements method.

1. Вступление

Применению метода конечных элементов (МКЭ) для моделирования и решения задач математической физики (МФ) способствовали успехи по внедрению вычислительных методов и, в частности, методов взвешенных невязок (МВН). Название МВН охватывает целый класс дискретных методов аппроксимации дифференциальных и интегральных уравнений, описываемых аналитически. Основной целью их применения является дискретизация аналитического уравнения и сведение его к системе алгебраических уравнений, вычисление коэффициентов которых (путем решения системы) и дает приближенное, но с высокой степенью точности, решение. При этом используются известные аналитические весовые функции, часто называемые пробными. Взамен аналитических функций могут быть применены и дискретные функции. Выбор различных весовых функций обуславливает и метод взвешенных невязок, то есть точность, сходимость и степень сложности.

Переход к новым технологиям обработки информации предполагает и новый подход к описанию и способам реализации МВН. Следует рассмотреть основные МВН, к которым, кроме базовой постановки, относятся методы наименьших квадратов (МНК), моментов (ММ), коллокаций (МК), Галеркина (МГ), и др., описанные в . Из первой главы ее взяты подход к решению задач МВН, а также примеры для оценки получаемых результатов и сравнения их с результатами, полученными авторами в .

© Ледянкин Ю.Я., 2012

ISSN 1028-9763. Математичні машини і системи, 2012, № 2

Цель автора - разработка МВН для параллельной реализации при решении задач математической физики методом конечных элементов (МКЭ) с обработкой данных на уровне сложных структур в идеологии единого вычислительного потока .

Реализации целей, изложенных выше, и посвящена данная работа (а вернее, цикл

2. Основа методов взвешенных невязок

На последовательности функций вида

01 (х),Ф2(x),...,Фп (x) (1)

скалярное произведение < Ф, ф > вида

< Ф1, Ф2>= J Ф1 (x) * Ф2 (x) dx (2)

для системы пробных (базисных) функций Ф. с коэффициентами ai

а Ф, + а2 Ф2+...+ап Фп = 0 (3)

возможно

li u - ^а * ф. li < e. (4)

Если определить оператор L () как действие, которое при применении его к данной функции и приводит к появлению некоторой другой функции p

то для линейного оператора L , положительно определенного для всех x , может быть составлено скалярное произведение оператора L(u) и другой функции v:

< L(u), v >=< и, L* (v) + J dS, (6)

где S - ограничивающая поверхность;

F , G - дифференциальные операторы, форма которых определяется при интегрировании по частям;

L - оператор, сопряженный к оператору L (если L* = L , то L самосопряженный);

F (v) - содержит члены с v, появляющиеся на 1 -й стадии интегрирования по частям;

G (u) - аналогично, но содержит члены с u ;

F (v) - определяет главные граничные условия (ГУ);

G (u) - определяет несущественные или естественные ГУ.

Если для L* = L, F(u) на S 1, G (u) - задан S2 и S1 + S2 = S < L(u), а также

u >.. > 0 для всех нетривиальных u (которые удовлетворяют однородным ГУ), то работает

метод взвешенных невязок.

Можно установить численные процедуры приближенного решения системы дифференциальных (интегральных) уравнений вида

L(u) = p, x e V с ГУ; (7)

F(u) = g, x e S, (8)

где £ - внешняя граница области;

и - точное решение, которое аппроксимируют набором функций фк ():

и = X ак фк; (9)

ак - неизвестные параметры;

фк - линейно независимые функции.

После подстановки (9) в (7) получают функцию ошибки е (невязку):

е =Ь(и) - р = 0. (10)

При точном решении е = 0, поэтому стремятся, чтобы ошибка была равна 0 в среднем, полагая равными нулю интегралы, взятые от невязки с некоторыми весовыми функциями

< е, w >= 0, I = 1,2,...,N, (11)

где w 1 - набор весовых функций.

Тогда, если параметры ак в (9) постоянны, то дифференциальное уравнение (7) приводится к системе алгебраических уравнений. Количество независимых соотношений задается количеством неизвестных коэффициентов ак и функций w¡.

3. Сущность предлагаемого подхода с РПМ

Предлагаемый способ использования МВН ориентирован на реализацию единого технологического потока (ЕТП) по обработке сложных структур данных (ССД) при решении класса задач МФ и др. в параллельных структурах, процессорные элементы (ПЭ) которых содержат скалярный умножитель (СУ). Использование РМП позволяет записать полиномы в матричном виде, удобном для обработки с помощью СУ.

Сущность подхода состоит в использовании однотипных математических выражений при загрузке исходных данных, расчете коэффициентов конечных элементов и глобальной матрицы жесткости с вектором нагрузок, получении псевдорешения с последующей обработкой результатов вычислений в виде полиномов. С этой целью их записывают в виде РМП. Это обеспечивает сохранение однотипности структуры спецпроцессора (СП) и, в итоге, его технологичность при изготовлении, стоимость и пр. А в процессе решения такое устройство обеспечивает сверхвысокую производительность за счет параллельной обработки ССД, а также исключает простой матричного устройства и т. д.

Для решения поставленной задачи необходимо сделать следующее:

1. Описать в матричном виде пробные функции (сплайны) и определить операции над сплайнами, представленными в виде РМП.

2. Дифференцировать и интегрировать полиномы в матричном или векторном виде.

3. Перемножать и суммировать вышеуказанные матрицы и векторы до или после выполнения операций дифференцирования или интегрирования.

4. Выполнять операции по пп. 2, 3 аналитически и в численном виде.

5. Вычислять полученные выражения.

Записываем полиномы / (X) и /2 (X) в виде РМП:

и произведение у полиномов

7=/(Х)=/ (X) / (Х)=Уо+Уі Х1 + У2 Х2+^=

Ао Ьо +(а Ьо+а о Ь)+(а о Ь2 + ах ^ + ^2 Ь0)+...

в матричной форме

(аоЬо) (а, Ьо + аоЬ1) (аоЬ1 + а1Ь1 + а1Ьо)--1 X0

У = / (X) *[Ф 1] * [Ф 2 ] = (аоЬо) (а1Ьо + аоЬ1)--- Xі- (15)

_ (аоЬо)--- ] X2

Основным недостатком матричного представления и выполнения над ними операций типа умножения, сложения и др. в матричной форме является избыточность как в представлении, так и при выполнении процедур над ними. Так, при умножении матриц Атт и X тт надо выполнить т3 операций, а для выполнения матричного умножения надо

иметь т2 СУ. Поэтому для сокращения расхода оборудования и сокращения времени выполнения операций умножения предлагается взамен матричного представления полинома X использовать векторное. Это сократит в т раз количество СУ, а операций потребуется

Замечание. В показана возможность сокращения числа операций до т. Умножение матриц, представленных в виде РМП, выполняется как произведение векторов той же размерности.

Процедуру умножения векторов / (X) в СУ (записанных с помощью РМП в матричном виде [Ф]), можно заменить на процедуру умножения матрицы на вектор. Для выполнения её как операции умножения матрицы на вектор в (15) надо заменить представление функции /X на транспонированное /1 (X) (в матричном виде [Ф1] на [Ф1]Т):

/Т (X) *[Ф 1] Т = а1 ао

а в (13) представить в виде /2(X") (в матричном виде [Ф 2 ]) как вектор столбца:

Представляя всегда первый полином (множимое) в виде /1Т (X), а второй полином (множитель) в виде столбца /2*(Х), определим произведение двух полиномов в общем виде:

7=/(X) * /2 (X)-* /Т (X) * Ш=[Ф 1]т * [Ф 2 ]

и в матричном виде:

a0 b ■ (a0b0) >0"

g= aj a0 * b = (aA + a0b1) = g =[Ф *]* f *(X),

1 о Ö sT 2 a2 і А _ _(a2b0 + a1b1 + a0b2)1 _ g _

[ f:(X)]Г =.

Постановка задачи

Применительно к одному из МВН - методу коллокаций - покажем возможность использования РМП, описанного выше.

Метод коллокаций

Рассмотрим на примере из решение уравнения вида

L(u) - p = д2 и / д x2 + и + x = 0 (20)

на промежутке 0 < x < 1 с ГУ, и = 0 при x = 0, и = 0 при x = 1. (21)

Значения дифференциального уравнения удовлетворяются в нескольких точках коллокации.

Выбирается аппроксимация в виде выражения

и = x(1-x)(a1 + a2 x +...),

которое удовлетворяет ГУ при любых а..

Оставляя в аппроксимирующем уравнении (22) только 2 члена, запишем его и с помощью РМП:

и = x(1-x)(a1 + a2 x)= a1(x-x2) + a2(x2 -x3)^ a

А1 г + а2г. (23)

Для получения ошибки вычисляем первую производную от аппроксимирующей функции:

Э и/Э х = Э (а1 х -а1 х 2 + а2 х 2 -а2 х3)Э х =(а 1-2а1 х +2а2 х-3а2х2) =

А1(1 - 2 х)+ а2(2 х - 3х2) (24)

и вторую производную

д 2 и / д x 2 = д (a j -2 a 1 x +2 a 2 x 2 -3 a2 x3) dx =

Д (a1 - 2a1 x) dx + д (2a2x - 3a2x)dx =(-2 a j+2 a 2 x -6 a 2 x).

После задания апппроксимирующей функции (23) из уравненияя (10) определим ошибку е, используя запись её в виде РМП:

е =Ь(и)-р = х + а1(-2+ х-х 2)+ а2(2-6х + х2-х3)^

1 о 0 0 1 "- 2 1 -10 " 1 -1 6 - 2 1

0 1 0 - 2 1 -1 2 - 6 1

Ь(и) - р = (-2 а 1 +2 а2 х -6 а2 х 2)+ а1(х - х2) + а2 (х2 - х3) + х =0. (27)

х = (2а1 - 2а2 + 6а2х) - (а1 (х - х2) + (а2 (х2 - х3) =

А1(2 - х + х 2) + а2(-2 + 6 х - х2 + х3). (27а)

Для выбранных точек коллокации х 1 =1/4, х 2 =1/2 составляется система уравне-

I (2 - х1 + х1)а1 (-2 + 6х1 - х1 + х1)а2 = 1/ 4,

[(2-х2 + х22)а1 (-2 + 6х2 -х22 + х^)а2 = 1/2.

Вычислив значения коэффициентов при неизвестных а1 и а2 путем решения систе-

“29/16 - 35/64“ * Ь 1 =11/41 или “0,8125 - 2,1875“

7/4 7/8 ґ 2 11/2І 1,75 0,875 _

определим значения ^=6/31(0,193548), а 2 =40/217 (0,184332). Это обеспечит вычисление из (23) необходимых нам значении и:

и = х (1-х)(а 1 + а 2 х)= а 1(х -х2)+ а 2 (х2- х 3)=(х (1-х)(6/31+40/217 х). (30)

Для хі = 1,2,3 имеем

х 1=1/4, и1=1/4* (1-1/4)* (6/31+40/217* 1/4)=0,0436,

х 2 =1/2, и2=1/2* (1-1/2)* (6/31+40/217* 1/2)=0,0703,

х 3=3/4, и3 =3/4* (1-3/4)* (6/31+40/217* 3/4)=0,0618.

Решение поставленной задачи опишем поэтапно.

Представление полиномов аппроксимирующих функций (22) в виде

А1(х -х)+ а2(х - х)^ а1

0 1 -1 0 0 1 -1 01 0

0 0 1 -1 0 0 1 00 0

а оператора [А] матричного дифференцирования в виде

Э / Э х=[А] =

00200 0 0 0 3 0 00004

Вычислим:

Аналитически первую производную от функции и из (24):

Э и/Э х = Э (а1 х- а1 х2 + а2 х2-а2 х3)/Э х =(а1-2а1 х)+(2а2 х-3 а2 х2);

Э и / Э х =[ А ] * а 1

х1 Эх +[ А ] * а

х1 Эх +[ А ] * а х2

х1 Эх = а 1 „2

1 0 0 2 - 1 о 1 ю - 6 0 "

0 2 - х1 + а 2 2 -

1 - 2 1 х 2 2 1 2

и вторую производную от функции и (25) с записью в виде РМП:

Э 2 и / Э х 2 = Э / Э х (-2 а1+2 а2 -6 а2 х)=

і 0 0 2 - і х0 1 0 6 - 2 1

[ А ] а 1 0 2 - х1 Эх +[ А ] а2 2 - 6

х1 Эх+[А] а2

Вычислим ошибку (е) с записью уравнения (26) в виде РМП:

"0 1 0 0" "- 2 1 -1 0" "2 - 6 1 -1"

0 1 0 - 2 1 -1 і 1

0 1 1 - 2 1 2 2 - 6

Полагая е = 0 для выбранных точек коллокации х1=1/4, х2=1/2 из уравнений

х і +(-2+ х і -х 2)а 1+(2-6х і + х 2 -х 3)а2 = 0, (36)

х і =(2-х і + х 2)а 1+(-2+6х і-х 2 + х 3)а 2 , (36а)

составляем систему. Представим полиномы при а1 и а2 в виде циркулянтов (регулярного матричного представления):

/ (х а1)= а 1(2- х і + х 2)^ а 1

А 1 * [ х х х х ] ^ / (х „),

I (х)= а 2 (-2+6 хі - х2+ х3)^ а

А 2 [-2 6-1 1] * [ х х х х ] ^ I (х).

Для выбранных точек коллокации уравнений системы (28) значения функции /* (ха) в векторной записи могут быть вычислены следующим образом:

для х2 = 1/2:

х = 1 х1 = 1/4 х2 = 1/16

А1 [(2-1 1] * [х 0 х; х 2]т = а1 (2-1/4+1/16)= а11,8125; (37)

а 1 * [ х 2=1 х 2=1/2 х 2=1/4]т = а 1(2*1-1*1/2+1*1/4)= а 17/4= а 11,75;

а 2 [-2 6-1 1] * [ х 0=1 х 1=1/4 х 2=1/16 х 3 = 1/64]т = а 2(-2*1+6*1/4 -1*1/16+1*1/64)=

А 2 35/64=-а 2 0,5469;

для х2 =1/2:

а 2 [-2+6-11]* [х 2=1 х 2=1/2 х 2=1/4х 2=1/8]т = а 2 (-2*1+6*1/2-1* 1/4+1*1/8)=

А 2 7/8= а 2 0,875.

Тогда система уравнений (28) с вычисленными в (35)-(39) коэффициентами для ранее определенных точек коллокации в численном виде может быть записана так:

1,8125 0,5469 1,75 0,875

[а.1 = ] 0,25 I а І 10,50 і

и ее решение по схеме исключения

"1,8125 - 0,5469 0,25 "

0 2,542968 0,46875

Ь 22=1/ 2,542968=0,393241, Ь „=1/1,8125=0,5517

а2 = Ь 22 * 0,46875=0,1843,

а= Ь 11 * (0,25+0,1843 * 0,5469)=0,1935.

По вычисленным значениям коэффициентов а1 и а2 для уравнения (23) в варианте записи уравнения (30) можно представить в виде регулярного матричного представления:

и = а 1(х-х 2)+ а 2(х 2 -х 3)=

что позволяет с помощью СУ вычислить значения коэффициентов для выбранных точек коллокации:

а (х 1-х 2)= а * T = а10,1875 (для х1=1/4), (43)

а (х 2-х 2)= а1 * T = а10,25 (для х2=1/2), а2(х 2-х 3)= а2 * T = а20,0469 (для х1=1,4), (44)

а2(х 2-х 2)= а2* T = а20,1406 (для х2=1/2).

После этого вычисляем значения функции и:

и = а10,1875+ а2 0,0469=0,1935 * 0,1875+0,1843 * 0,0469=0,0449, (45)

и = а10,25+ а2 0,1406=0,1935 * 0,25+0,1843 * 0,1406=0,0742.

Для новой точки коллокации х =3/4 вычисляем (с вариантами в вычислительном процессе):

и = а1 * T + а2 * T = а1(3/4-9/16)+ а2 (9/16-27/64)= =(а10,75-а10,5625)+(а2 0,5625-а20,4219)=0,0346+0,0259=0,0605. (46)

Метод моментов

Метод моментов, также входящий в группу под общим названием МВН, для заданной системы уравнений предполагает рассмотрение скалярного произведения невязки е на некоторую весовую функцию w:

< e, w >= 0, i = 1,2,...,N, (47)

где wi - весовые функции. Ими может быть любой набор линейно независимых функций,

например, 1, х, х2, х3,... .

Если выполняется условие обращения в ноль моментов невязки более высокого порядка

< е, х^ >= 0, i = 0,1, (48)

то такая процедура называется методом моментов.

Рассматривается пример из в записи (20)-(22):

L(u) - p = Э2u / Э х2 + и + х =0, и = х (1- х) а1 + х 2 (1- х) а2

и функция ошибки в нем ортогонализуется по отношению к 1 и х:

j е* 1 * йх =0, (49)

j е* х * йх =0 (49а)

с подстановкой ошибки е в систему (49), (49а)

е = а j (-2+ х - х 2)+ а 2 (2-6 х + х 2 - х 3)+ х, (50)

х1 дх + а2 [ А ] *

х1 дх + а 2 [А ]:

А 1(-2х + х 2/2-х 3/3) |0 + а 2 (2х-6х 2/2+ х 3/3-х 4/4)|"0 + х 2/2 |"0: = а 1 (-2+1/2 -1/3)+ а 2 (2-3+1/3-1 /4)+1 /2=

11/6 а,-11/12 а 2+1/2=0.

11/6 а 1+11/12 а 2 =1/2, где [ А] - матрица интегрирования в записи РМП, равная

Замечание. Следует помнить, что при интегрировании функций (с записью РМП) в виде произведения матрицы [А] на вектор столбца I* (х) количество столбцов т матрицы должно быть равно количеству строк т вектора, а размерность результирующего вектор столбца тк - на единицу больше: тк = т +1.

По аналогии с (51) вычислим второй (49а) интеграл:

| Є* х * дх = | (х + а 1(-2+ х-х 2))дх +1 а 2 (2-6х + х2-х 3)дх =

= | (х 2) дх +1 а 1(-2 х + х 2- х 3) дх +1 а 2 (2 х -6 х 2+ х 3- х 4) дх =

Х 3/3 |0 + а 1 (-2х 2/2+ х 3 /3-х 4/4) |0 + а 2(х 2-2х 3+1/4х 4-1/5 х 5) |0 =

=[ А ] * т дх + а 1[ А ] * т дх + а 2[ А ] * т дх =

х2 +а -1 + а 2 х3

Т |0 + а 1т |0 + а2 т |= =1/3+ а1(-1+1/3-1/4)+ а2 (1-2+1/4-1/5)=1/3+а111/12- а219/20. (11/12 а1+19/20 а2=1/3).

Отсюда система уравнений относительно а1 и а2:

" 11/6 11/12" . І а-1 или “1,8333 0,91667“

11/12 19/20 1а2 1.1/3І 0,91667 0,95

Решаем систему (54) по методу исключения:

1,8333 0,91667 0,5

0 0,9014 0,1526_

Х11 =1/1,18333=0,54546, Ь22 =1/0,9014=1,1094, а2 =0,1695, а1=0,18796.

Отсюда из х (1- х)(а1 + а2 х) для выбранных точек коллокации имеем и 1 =0,25 * 0,75(0,18796+0,1695 * 0,25)=0,04319, и2=0,5 * 0,5(0,18796+0,1695 * 0,5)=0,06816, и3 =0,75 * 0,25(0,18796+0,1695 * 0,75)=0,0590.

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

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

Запись исходных уравнений в виде РМП позволяет:

Поднять уровень обработки информации (включая выполнение операций типа умножения, дифференцирования, интегрирования полиномов) с уровня чисел до уровня обработки сложных структур данных;

Распараллелить вычислительный процесс, выполняя операции в ПЭ с помощью входящих в его структуру скалярных умножителей, то есть в параллельном спецпроцессоре на структуре, предназначенной для вычисления матриц жесткости конечных элементов (КЭ), а затем и глобальной матрицы с вектором нагрузок применительно к использованию МКЭ при решении задач МФ.

Реализация такого подхода расширит область применения параллельных структур из процессорных элементов (ПЭ), построенных на базе скалярных умножителей, позволит унифицировать вычислительный процесс, начиная с этапа подготовки исходных данных с последующим решением глобальной матрицы жесткости, организовать таким образом единый технологический (вычислительный) поток при решении задач МФ.

В заключение с глубокой благодарностью хочу вспомнить В.М. Глушкова. Он инициировал работы по использованию метода конечных элементов, поддержал разработку новых численных методов и структур для решения задач математической физики с использованием МКЭ и других численных методов. Виктор Михайлович считал эту задачу трудной, но очень важной.

Полагаю, что к инициаторам работы автора под углом видения, определенным в моем цикле статей по применению МВН для решения задач МФ с помощью МКЭ, можно отнести Дж. Коннора и К. Бреббиа, выпустивших книгу , необходимую для работы математикам и инженерам. Предложенные выше методы можно с успехом применить при решении задач, описанных ими в своей книге, на СП или векторных процессорах архитектуры CUDA серии Tesla фирмы nVidia, например, или AMD в составе GPU - CPU (графических и центральных кластерных процессоров), выполняющих векторные операции .

СПИСОК ЛИТЕРАТУРЫ

1. Коннор Дж. Метод конечных элементов в механике жидкости / Дж. Коннор, К. Бреббиа; пер. с англ. - Л.: Судостроение, 1979. - 264 с.

2. Единый технологический поток в организации вычислений - способ повышения производительности параллельных структур на процессорных элементах транспьютерного типа / Ледянкин Ю.Я.

Киев, 1989. - 20 с. - (Препринт / АН УССР, Ин-т кибернетики им. В.М. Глушкова; 89-57).

3. Ледянкин Ю.Я. К вопросу преобразования и параллельного ввода граничных условий при решении краевых задач в едином вычислительном потоке / Ю.Я. Ледянкин // Математичні машини і системи. - 2012. - № 1. - С. 28 - 35.

4. Адинец А. Графический вызов суперкомпьютерам / А. Адинец, В. Воеводин // Открытые системы. - 2008. - № 4. - С. 35 - 41.



Понравилась статья? Поделитесь ей
Наверх