close

Вход

Забыли?

вход по аккаунту

?

Отчет3

код для вставкиСкачать
Министерство Образования и Науки РФ
Новосибирский Государственный Технический Университет
Кафедра вычислительных технологий
Лабораторная работа №3 по дисциплине
"Дифференциальные уравнения" на тему:
Решение краевых задач методом конечных элементов.
Факультет: ПМИ
Группа: ПМ-75
Студенты: Рак Б.В.
Путро А.С.
Преподаватели: Баландин М.Ю.
Новосибирск
2009г.
Цель работы
Для краевой задачи, описывающей процесс стационарной одномерной теплопроводности, выписать эквивалентную вариационную постановку, построить дискретный аналог методом конечных элементов. Содержание работы
Пусть дано операторное уравнение: (*), где оператор - дифференциальный оператор, действующий в Гильбертовом пространстве . Метод Галёркина основан на том, что невязка, т.е. разность между левой и правой частью операторного уравнения в Гильбертовом пространстве равна нулю тогда и только тогда, когда она ортогональна всем векторам любой полной системы. Поэтому для определения приближенного решения уравнения (*) в заданном конечномерном подпространстве пространства достаточно выписать условие ортогональности невязки всем базисным векторам этого подпространства: При этом не требуется самосопряженность оператора . Так как решение то и воспользовавшись свойствами скалярного произведения получим СЛАУ: Выбирая в качестве базисных функций финитные функции вида: получим конечноэлементную аппроксимацию операторного уравнения (*). Если оператор - самосопряженный, то метод Ритца для заданной системы базисных функций дает такую же СЛАУ, что и метод Галёркина. Введем обозначения: 1.
Локальная матрица жёсткости:
На интервале функцию можно представить следующим образом: Тогда матрица жёсткости примет вид: 2.
Локальная матрица масс
На интервале функцию можно представить следующим образом: Тогда матрица масс примет вид: 3.
Локальный вектор правой части:
На интервале функцию можно представить следующим образом: Тогда вектор правой части примет вид: Посчитав интегралы, получим локальные матрицы массы, жесткости, а также локальный вектор правой части. Матрицы массы, жесткости и вектор правой части будут выглядеть следующим образом: Алгоритм сборки глобальной матрицы из локальных основан на том, что каждая локальная матрица имеет в глобальной свой местоположение, которое соответствует положению конечного элемента на интервале. Каждая базисная функция определена на двух соседних конечных элементах, поэтому глобальная матрица будет собираться следующим образом. Последний диагональный элемент ой локальной матрицы складывается с первым диагональным элементом й матрицы. Аналогично строится и вектор правой части. Таким образом, решение краевой задачи методом конечных элементов сводится к построению глобальной матрицы и глобального вектора с учетом краевых условий, и последующему решению СЛАУ , где найденный вектор содержит коэффициенты разложения неизвестной функции по выбранному базису. Учет краевых условий: Краевые условия второго рода выглядят следующим образом: Краевые условия третьего рода выглядят следующим образом: Алгоритм сборки глобальной матрицы СЛАУ и глобального вектора правой части. Метод решения СЛАУ.
Для непрерывности базисных функций в каждом узле , где базисные функции с различных конечных элементов принимают значение равное единице, производим их сборку. Поэтому глобальная матрица получается из локальных матриц путем некоторого вклада - наложения частей одной локальной матрицы на часть другой локальной матрицы: . Глобальный вектор правой части получается следующим образом: .
После сборки глобальной матрицы и глобального вектора получили трехдиагональную матрицу. Решим полученную СЛАУ методом разложения. , ,
Описание алгоритма решения краевой задачи
Поскольку задача линейная, т.е. , то особых трудностей для решения задачи не возникает.
1. Построить глобальную матрицу 2. Сформировать вектор правой части 3. Учесть краевые условия:
- первые и третьи краевые условия учитываются следующим образом:
для первого - в вектор правой части ставим , а в матрице на место элемента записываем единицу и все элементы этой строки зануляем, поскольку первое краевое условие явно определяет вес в узле. Далее проводим симметризацию матрицы;
для третьего элемент матрицы , а в векторе правой части .
- вторые и первые краевые условия:
для учёта второго добавка идёт только в вектор правой части;
учет первого аналогичен описанному выше.
4. Решить СЛАУ Тестовые задачи.
1. Аналитическое решение уравнения (2.3): .
Краевые условия: 2. Аналитическое решение уравнения (2.3): . Краевые условия:
3. Аналитическое решение уравнения (2.3): . Краевые условия:
Первые и третьи краевые условия:
Тест 1():
x (h=0.1) (h=0.05) (h=0.025)Y*0 0.00000000000000e+000 0.00000000000000e+000 0.00000000000000e+00000.1 1.00000000000001e-002 9.99999999999998e-003 1.00000000000008e-002 1.00000000000000e-0020.2 4.00000000000002e-002 4.00000000000000e-002 4.00000000000016e-002 4.00000000000000e-0020.3 9.00000000000003e-002 9.00000000000000e-002 9.00000000000023e-002 9.00000000000000e-0020.4 1.60000000000000e-001 1.60000000000000e-001 1.60000000000003e-001 1.60000000000000e-0010.5 2.50000000000000e-001 2.50000000000000e-001 2.50000000000004e-001 2.50000000000000e-0010.6 3.60000000000000e-001 3.60000000000000e-001 3.60000000000005e-001 3.60000000000000e-0010.7 4.90000000000001e-001 4.90000000000000e-001 4.90000000000005e-001 4.90000000000000e-0010.8 6.40000000000001e-001 6.40000000000000e-001 6.40000000000006e-001 6.40000000000000e-0010.9 8.10000000000001e-001 8.10000000000000e-001 8.10000000000006e-001 8.10000000000000e-0011 1.00000000000000e+000 1.00000000000000e+000 1.00000000000001e+0001
Тест 2():
x (h=0.1) (h=0.05) (h=0.025)Y*0 0.00000000000000e+000 0.00000000000000e+000 0.00000000000000e+00000.1 3.09801017881361e-001 3.09213151501226e-001 3.09066043110913e-001 3.09016994374947e-0010.2 5.88765999167254e-001 5.88031405538757e-001 5.87846850835485e-001 5.87785252292473e-0010.3 8.09789295780260e-001 8.09212280931959e-001 8.09065953729775e-001 8.09016994374947e-0010.4 9.51417830844505e-001 9.51150468289065e-001 9.51080229888446e-001 9.51056516295154e-0010.5 9.99952899075242e-001 9.99993162759571e-001 9.99998598060041e-0011.00000000000000e+0000.6 9.50792741696209e-001 9.50996484372427e-001 9.51041876206002e-001 9.51056516295154e-0010.7 8.08884491813326e-001 8.08990214202830e-001 8.09010694101286e-001 8.09016994374947e-0010.8 5.88241265626739e-001 5.87905358478136e-001 5.87815658361484e-001 5.87785252292473e-0010.9 3.10571683479957e-001 3.09410789309948e-001 3.09115761458995e-001 3.09016994374948e-0011 3.15598500963999e-003 7.92420205992858e-004 1.98317502303984e-0040
Тест 3():
x (h=0.1) (h=0.05) (h=0.025)Y*0 0.00000000000000e+000 0.00000000000000e+000 0.00000000000000e+00000.1 1.19461426338735e-001 1.19865347093705e-001 1.19966340882989e-001 1.20000000000000e-0010.2 2.78940771624827e-001 2.79735102511880e-001 2.79933774325585e-001 2.80000000000000e-0010.3 4.78436402479916e-001 4.79608926117814e-001 4.79902224621574e-001 4.80000000000000e-0010.4 7.17941750837819e-001 7.19485171403630e-001 7.19871279861858e-001 7.20000000000000e-0010.5 9.97446567670722e-001 9.99361270153586e-001 9.99840297618598e-001 1.00000000000000e+0000.6 1.31693652221876e+000 1.31923363382465e+000 1.31980838039152e+000 1.32000000000000e+0000.7 1.67639224751533e+000 1.67909741501551e+000 1.67977431597827e+000 1.68000000000000e+0000.8 2.07578785735076e+000 2.07894613693484e+000 2.07973648485448e+000 2.08000000000000e+0000.9 2.51508875717094e+000 2.51877114674666e+000 2.51969272354769e+000 2.52000000000000e+0001 2.99424842224394e+000 2.99856081144042e+000 2.99964012368615e+0003
Вторые и первые краевые условия:
Тест 1():
x (h=0.1) (h=0.05) (h=0.025)Y*0 2.23779328401008e-016 -5.50774703622636e-017 -6.79903182365660e-01600.1 1.00000000000002e-002 9.99999999999995e-003 9.99999999999932e-003 1.00000000000000e-0020.2 4.00000000000002e-002 3.99999999999999e-002 3.99999999999993e-002 4.00000000000000e-0020.3 9.00000000000002e-002 8.99999999999999e-002 8.99999999999993e-002 9.00000000000000e-0020.4 1.60000000000000e-001 1.60000000000000e-001 1.59999999999999e-001 1.60000000000000e-0010.5 2.50000000000000e-001 2.50000000000000e-001 2.49999999999999e-001 2.50000000000000e-0010.6 3.60000000000000e-001 3.60000000000000e-001 3.59999999999999e-001 3.60000000000000e-0010.7 4.90000000000000e-001 4.90000000000000e-001 4.90000000000000e-001 4.90000000000000e-0010.8 6.40000000000000e-001 6.40000000000000e-001 6.40000000000000e-001 6.40000000000000e-0010.9 8.10000000000000e-001 8.10000000000000e-001 8.10000000000000e-001 8.10000000000000e-0011 1.00000000000000e+000 1.00000000000000e+000 1.00000000000000e+0001
Тест 2():
x (h=0.1) (h=0.05) (h=0.025)Y*0 1.78918092925531e-002 4.45780023950890e-003 1.11350644711097e-00300.1 3.24524187232576e-001 3.12880557366599e-001 3.09982061037257e-001 3.09016994374947e-0010.2 6.00622064535264e-001 5.90983632999406e-001 5.88584173758608e-001 5.87785252292473e-0010.3 8.19051098182866e-001 8.11517388211443e-001 8.09641586727566e-001 8.09016994374947e-0010.4 9.58332247043789e-001 9.52870037014664e-001 9.51509559791679e-001 9.51056516295154e-0010.5 1.00474331240318e+000 1.00118291429191e+000 1.00029554744894e+0001.00000000000000e+0000.6 9.53661277750134e-001 9.51706837483590e-001 9.51219042752118e-001 9.51056516295154e-0010.7 8.10014041396852e-001 8.09266789684364e-001 8.09079476649212e-001 8.09016994374947e-0010.8 5.87797315182391e-001 5.87789435729273e-001 5.87786371012330e-001 5.87785252292473e-0010.9 3.08703971333107e-001 3.08939719475709e-001 3.08997736797381e-001 3.09016994374948e-0011 0.00000000000000e+000 0.00000000000000e+000 0.00000000000000e+0000
Тест 3():
x (h=0.1) (h=0.05) (h=0.025)Y*0 7.88694005609235e-003 1.97917515332131e-003 4.95393672612199e-00400.1 1.27005343913520e-001 1.21758135627603e-001 1.20440086240615e-001 1.20000000000000e-0010.2 2.86132247187479e-001 2.81539171547666e-001 2.80385290093240e-001 2.80000000000000e-0010.3 4.85279255192897e-001 4.81325237170827e-001 4.80331751127766e-001 4.80000000000000e-0010.4 7.24452263098731e-001 7.21117798308742e-001 7.20279835290307e-001 7.20000000000000e-0010.5 1.00365422003373e+000 1.00091758540403e+000 1.00022972478064e+000 1.00000000000000e+0000.6 1.32288548058297e+000 1.32072467976938e+000 1.32018143945620e+000 1.32000000000000e+0000.7 1.68214360083845e+000 1.68053846114040e+000 1.68013482360730e+000 1.68000000000000e+0000.8 2.08142283327058e+000 2.08035748021027e+000 2.08008951399566e+000 2.08000000000000e+0000.9 2.52071333411271e+000 2.52017925927467e+000 2.52004488991335e+000 2.52000000000000e+0001 3.00000000000000e+000 3.00000000000000e+000 3.00000000000000e+0003
Вывод: 1. Для всех тестовых задач получили, что порядок аппроксимации .
2. Порядок аппроксимации совпадает с порядком сходимости, так как метод конечных элементов является проекционным методом .
3. Получаемое решение зависит от заданных краевых условиях. Так если заданы вторые и первые краевые условия, то погрешность численного решения на порядок ниже, чем, если заданы первые третьи краевые условия. Это отчасти объясняется тем, что при третьих краевых условиях вклад идет в матрицу, а это может отрицательно повлиять на обусловленность матрицу. При первых или вторых краевых условиях вклад в матрицу не идёт, добавка только в вектор правой части. В этом случае краевые условия мало повлияют или не вовсе повлияют на обусловленность матрицы, поэтому получаем более точное решение. 
Документ
Категория
Рефераты
Просмотров
24
Размер файла
208 Кб
Теги
отчет
1/--страниц
Пожаловаться на содержимое документа