- •Розв’язування одновимірних крайових задач методом скінченних елементів Методичні матеріали
- •6.0804 “Комп’ютерні науки”
- •1. Мета роботи
- •2. Основні теоретичні відомості
- •2.1. Метод зважених нев’язок
- •2.2. Метод гальоркіна
- •2.3. Метод скінченних елементів
- •2.4.2. Слабке формулювання методу гальоркіна
- •2.4.3. Побудова базисних функцій
- •2.4. Схема методу скінченних елементів розв’язання одновимірних крайових задач
- •2.4.1. Дискретизація області
- •2.4.4. Побудова результуючої системи лінійних алгебраїчних рівнянь
- •2.4.5. Врахування граничних умов
- •2.4.6. Розв’язання слар та оцінка точності отриманого наближеного розв’язку
- •3. Контрольні запитання
- •4. Лабораторне завдання
- •Мета роботи.
- •6. Список рекомендованої літератури
- •Додаток
2.4.4. Побудова результуючої системи лінійних алгебраїчних рівнянь
Підставляючи
розклад (22) у слабку форму рівнянь
Гальоркіна (24), отримаємо СЛАР відносно
невідомих вузлових значень
, яка в матричній формі набуває вигляду
,
(27)
з коефіцієнтами
,
.
(28)
Матриця
системи (27) називається матрицею
жорсткості,
а права частина
- вектором
навантаження.
Враховуючи
співвідношення (25), бачимо, що у виразі
для коефіцієнтів матриці жорсткості
(28) лише значення індекса
рівні
,
та
дають відмінні від нуля значення самих
коефіцієнтів
.
Причому інтеграл
буде містити лише доданки
та
,
що відповідають вкладам СЕ з номерами
та
,
відповідно. Це означає, по-перше, що
матриця жорсткості
буде трьохдіагональною і симетричною,
а, по-друге, що значення коефіцієнта
буде складатися з двох доданків:
інтегралу
,
який є внеском СЕ з номером
,
та інтегралу
,
який є внеском СЕ з номером
.
Тому, на практиці, обчислення коефіцієнтів
матриць СЛАР (27) здійснюють не безпосередньо
за формулами (28), а шляхом обчислення
локальних
матриць
жорсткості
та вектора навантажень
з наступним рознесенням їх у глобальні
матрицю жорсткості
та вектор навантаження
.
Такий підхід до формування результуючої
СЛАР в МСЕ у науковій літературі отримав
назву ассемблювання.
Отже, на кожному
СЕ тепер потрібно обчислити локальну
матрицю жорсткості
та вектор навантаження
.
Оскільки ми вибрали лінійні СЕ, тобто
елементи з двома вузлами, і у кожному
вузлі шукається лише одна невідома
величина, то локальна матриця
жорсткості
буде мати розмір
(і, відповідно, локальний вектор
навантаження
- розмір 2):
,
.
Тоді, враховуючи вище сказане і співвідношення (28), будемо мати, що
,
, (29)
,
,
та
,
.
(30)
Схематично процес ассемблювання глобальної матриці жорсткості та вектора навантаження з локальних матриць та вектора , відповідно, для тестової сітки з чотирьох СЕ, можна зобразити таким чином
,
(31)
.
(32)
Отже, розв’язання
крайової задачі (20)-(21) МСЕ з використанням
одновимірних кусково-лінійних базисних
функцій (25) для
звелося до СЛАР (27) з матрицею виду
(31) та правою частиною виду (32).
Програмна реалізація
описаного вище процесу побудови
локальних матриці жорсткості та
вектора навантажень, і їх ассемблювання
в середовищі MATHCAD
наведена на рис. 3-4. Для обчислення
локальних матриць жорсткості на елементі
з номером
за формулами (29) введено функцію
STIFF(ne).
Оскільки базисні функції на першому та
останньому СЕ визначаються окремо,
то для обчислення локальних матриць
жорсткості на цих елементах введено
окремі функції STIFF_1
та STIFF_n,
відповідно. Аналогічним чином
організовано процес обчислення
локальних векторів навантажень за
формулами (30) за допомогою функцій
LOAD(ne),
LOAD_1
і LOAD_n.
Рис.3. Побудова локальних матриць жорсткості та їх ассемблювання
Для рознесення локальних матриць у глобальні введено функцію FindRow(i,ne), яка дозволяє визначити номер рядка глобальної матриці жорсткості (вектора навантаження) для вузла з номером i на СЕ з номером ne, виду
.
Рис.4. Побудова локальних векторів навантаження та їх ассемблювання
Також, тут використовуються функції
,
,
які призначені для отримання конкретного елемента локальної матриці жорсткості та локального вектора навантаження, відповідно.
