Смекни!
smekni.com

Алгоритм компактного хранения и решения СЛАУ высокого порядка (стр. 1 из 5)

ВВЕДЕНИЕ.

Метод конечных элементов является численным методом длядифференциальных уравнений, встречающихся в физике [1]. Возникновение этогометода связано с решением задач космических исследований (1950 г.). Впервые онбыл опубликован в работе Тернера, Клужа, Мартина и Топпа. Эта работа способствовалапоявлению других работ; был опубликован ряд статей  с применениями методаконечных элементов к задачам строительной механики и механики сплошных сред.Важный вклад в теоретическую разработку метода сделал в 1963 г. Мелош, которыйпоказал, что метод конечных элементов можно рассматривать как один из вариантовхорошо известного метода Рэлея-Ритца. В строительной механике метод конечныхэлементов минимизацией потенциальной  энергии позволяет свести задачу к системелинейных уравнений равновесия [2,3].

Одной из существующих трудностей, возникающих причисленной реализации решения контактных задач теории упругости методом конечныхэлементов (МКЭ), является решение систем линейных алгебраических уравнений(СЛАУ) большого порядка вида

Большинство существующих методов решения таких системразработаны в предположении того, что матрица A имеет ленточную структуру,причем ширина ленты , где n2 - порядок. Однако, прииспользовании МКЭ для численного решения контактных задач возможны случаи,когда ширина ленты  [5].

1 ОБЗОР МЕТОДОВ РЕШЕНИЯ СЛАУ, ВОЗНИКАЮЩИХВ МКЭ

Основная идея метода конечных элементов состоит в том,что любую непрерывную величину, такую, как температура, давление и перемещение,можно аппроксимировать дискретной моделью, которая строится на множествекусочно-непрерывных функций, определенных на конечном числе подобластей.Кусочно-непрерывные функции определяются с помощью значений непрерывнойвеличины в конечном числе точек рассматриваемой области [1,2,3].

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

1. В рассматриваемой области фиксируется конечное числоточек. Эти точки называются узловыми точками или просто узлами.

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

3. Область определения непрерывной величины разбиваетсяна конечное число подобластей, называемых элементами. Эти элементы имеют общиеузловые точки и в совокупности аппроксимируют форму области.

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

Для решения СЛАУ в МКЭ требуется выбрать метод решения.Окончательное решение о применении итерационных или прямых методов решения СЛАУнеобходимо принимать на основе анализа структуры исследуемой математическойзадачи. Прямые методы решения СЛАУ более выгодно использовать, если необходиморешать много одинаковых систем с различными правыми частями, или если матрица Ане является положительно-определенной. Кроме того, существуют задачи с такойструктурой матрицы, для которой прямые методы всегда предпочтительнее, чемитерационные.

Точные методырешения СЛАУ

Рассмотрим ряд точных методов решения СЛАУ [4,5].

Решение систем n-линейных уравнении с n-неизвестными поформулам Крамера.

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

Предположим, что определитель системы d не равен нулю.Если теперь заменить последовательно в определителе столбцы коэффициентов принеизвестных хj столбцом свободных членов bj, то получатся соответственно nопределителей d1,...,dn.

Теорема Крамера. Система n линейных уравнений с nнеизвестными, определитель которой отличен от нуля, всегда совместна и имеетединственное решение, вычисляемое по формулам:

x1=d1/d; x2=d2/d;....; xn-1=dn-1/d; xn=dn/d;

Решение произвольных систем линейных уравнений.

Пусть

произвольная система линейных уравнений, где числоуравнений системы не равно числу n неизвестных. Предположим, что система (3)совместна и rmin{m,n},тогда в матрицах А и А найдутся r линейно независимых строк, а остальные m-rстрок окажутся их линейными комбинациями. Перестановкой уравнений можнодобиться того, что эти r линейно независимых строк займут первые r мест.

Отсюда следует, что любое из последних m - r уравненийсистемы (3) можно представить как сумму первых r уравнений (которые называютсялинейно независимыми или базисными), взятых с некоторыми коэффициентами. Тогдасистема эквивалентна следующей системе r уравнений с n неизвестными

Предположим, что минор r-го порядка, составленный изкоэффициентов при первых r неизвестных, отличен от нуля Мr  0, т. е. являетсябазисным минором. В этом случае неизвестные, коэффициенты при которыхсоставляют базисный минор, называются базисными неизвестными, а остальные n - r- свободными неизвестными.

В каждом из уравнений системы (4) перенесем в правуючасть все члены со свободными неизвестными xr+1,..., xn. Тогда получим систему,которая содержит r уравнений с r базисными неизвестными. Так как определительэтой системы есть базисный минор Mr то система имеет единственное решениеотносительно базисных неизвестных, которое можно найти по формулам Крамера.Давая свободным неизвестным произвольные числовые значения, получим общеерешение исходной системы.

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

Пусть дана однородная система линейных уравнений nнеизвестными

Таккак добавление столбца из нулей не изменяет ранга матрицы системы, то наосновании теоремы Кронекера - Kaneлли эта система всегда совместна и имеет, покрайней мере, нулевое решение. Если определитель системы (5) отличен от нуля ичисло уравнений системы равно числу неизвестных, то по теореме Крамера нулевоерешение является единственным.

В том случае, когда ранг матрицы системы (5) меньшечисла неизвестных, т. е. r (А)< n, данная система кроме нулевого решениябудет иметь и ненулевые решения. Для нахождения  этих решений в системе (5)выделяем r линейно независимых уравнений, остальные отбрасываем. В выделенныхуравнениях в левой части оставляем r базисных неизвестных, а остальные n - rсвободных неизвестных переносим в правую часть. Тогда приходим к системе, решаякоторую по формулам Крамера, выразим r базисных неизвестных x1,..., хr через n- r свободных неизвестных.

Система (5) имеет бесчисленное множество решений. Средиэтого множества есть решения, линейно независимые между собой.

Фундаментальной системой решений называются n - rлинейно независимых решений однородной системы уравнений.

Метод главных элементов.

Пусть дана система n линейных уравнений с n неизвестными

расширенная матрица системы (6) . Выберем ненулевой наибольший помодулю и не принадлежащий столбцу свободных членов элемент apq матрицы , которыйназывается главным элементом, и вычислим множители mi=-aiq/apq для всех строк сномерами ip(р - я строка, содержащая главный элемент, называется главной строкой).

Далее к каждой неглавной i-й строке прибавим главнуюстроку, умноженную на соответствующий множитель mi; для этой строки.

В результате получим новую матрицу, все элементы q-гостолбца которой, кроме apq, состоят из нулей.

Отбросив этот столбец и главную p-ю получим новуюматрицу, число строк и столбцов которой на единицу меньше. Повторяем те жеоперации с получившейся матрицей, после чего получаем новую матрицу и т.д.

Таким образом, построим последовательность матриц,последняя из которых является двучленной матрицей-строкой (главной строкой).Для определения неизвестных xi объединяем в систему все главные строки, начинаяс последней.

Изложенный метод решения системы линейных уравнений с nнеизвестными называется методом главных элементов. Необходимое условие егоприменения состоит том, что определитель матрицы не равен нулю [6,7].

Схема Халецкого.

Пусть система линейных уравнений дана в матричном виде.

Ax=b     (7)

Где А - квадратная матрица порядка n, а x,b - векторыстолбцы.

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

А=СВ,

Где

Причем элементы сij  и bij определяются по формулам:

,

Уравнение (7) можно записать в следующем виде:

CBx=b.          (9)

Произведение Bx матрицы B на вектор-столбец x являетсявектором-столбцом, который обозначим через y:

Bx=y.        (10)

Тогда уравнение (9) перепишем  в виде:

Cy=b.     (11)

Здесь элементы сij известны, так как матрица А системы(7) считается уже разложенной на произведение двух треугольных матриц С и В.

Перемножив матрицы в левой части равенства (11),получаем систему уравнений из которой получаем следующие формулы дляопределения неизвестных:

неизвестные yi удобно вычислять вместе с элементами bij.

После того как все yi определены по формулам (12),подставляем их в уравнение(10).

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

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

Метод Гаусса.

Пусть дана система

Ax= b

где А – матрица размерности m x m.

В предположении, что , первое уравнение системы

,

делим на коэффициент , в результате получаем уравнение