Форум программистов, компьютерный форум, киберфорум
Python: Научные вычисления
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 25.11.2018
Сообщений: 10
1

Метод прогонки при неявной схеме уравнения теплопроводности

29.11.2020, 20:22. Просмотров 1368. Ответов 0

Здравствуйте! Есть задание на решение уравнения теплопроводности, нужно использовать классическую неявную схему. Вот само задание:

Используя метод сеток, найти приближенное решение уравнения теплопроводности (a=1) при заданных начальных и краевых условиях с погрешностью 10^(-4). Предполагается, что пространственная координата x принадлежит отрезку [0,1]; шаг по пространственной координате h = 0,1; шаг по времени t=h^2. Использовать классическую неявную схему. Для получения решения на каждом временном слое применить метод прогонки.

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

Коэффициенты, необходимые при поиске u:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
u1 = [0] * (n-2)  # ui-1
u2 = [0] * (n-2)   # ui
u3 = [0] * (n-2)   # ui+1
u4 = [0] * (n-2)   # справа
for i in range(0, n-2):
    u1[i] = 0
    u2[i] = 0
    u3[i] = 0
    u4[i] = 0
 
for i in range(0, n-2):  # вычисляем коэффициенты при ui
    u1[i] = 1
    u2[i] = -(2+h*h/t)
    u3[i] = 1
    u4[i] = -h*h/t*y[i]
Сам метод:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def TDMA(a, b, c, d):  # метод прогонки
    a, c, b, d = tuple(map(lambda k_list: list(map(float, k_list)), (a, c, b, d)))
 
    p = [-c[0] / b[0]]
    q = [d[0] / b[0]]
    x = [0] * k
 
    for i in range(1, k):
        p.append(-c[i] / (a[i] * p[i - 1] + b[i]))
        q.append((d[i] - a[i] * q[i - 1]) / (a[i] * p[i - 1] + b[i]))
 
    x[k - 1] = q[k - 1]
 
    for i in range(k - 2, 0, -1):
        x[i - 1] = p[i - 1] * x[i] + q[i - 1]
 
    return x
Коэффициенты для обратного хода (ai и bi) я вычислил, но вот для прямого не уверен, т.к. там требуется значение ui с предыдущего временного слоя.
Вот сама система: https://ibb.co/SRZcjm6
0
Миниатюры
Метод прогонки при неявной схеме уравнения теплопроводности  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.11.2020, 20:22
Ответы с готовыми решениями:

Решение уравнения теплопроводности по явной схеме (метод прогонки)
Возник вопрос при реализации метода прогонки при решении уравнения теплопроводности по неявной...

Метод прогонки в неявной схеме для решения краевой задачи уравнения теплопроводности
Здравствуйте! У меня есть начальное условие к уравнению теплопроводности и два краевых условия:...

Метод прогонки для двумерного уравнения теплопроводности (задать температуру в центре пластины)
Добрый день, форумчане! Решаю уравнение двумерное теплопроводности. Для случая, когда задаю ГУ в...

Как распараллелить на с++ двумерную задачу уравнения теплопроводности. Или метод прогонки. Плиииз
Вот собственно и код позаимствованный на этом форуме. #include <iostream> #include <cmath>...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.11.2020, 20:22

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

Задача теплопроводности по неявной разностной схеме
Друзья! Построил программу для решения краевой задачи теплопроводности по неявной разностной...

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

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

с++ метод прогонки, уравнение теплопроводности
∂T/∂t=a (∂^2 T)/(∂x^2 ) , где а - коэффициент температуропроводности (м^2/с) Необходимо решить...

Неявная схема решения уравнения теплопроводности методом прогонки
Всем доброго времени суток! Есть построение уравнения Лапласа методом прогонки. Есть явная схема...

Аппроксимация производных в граничных условия для численного решения уравнения теплопроводности по явной схеме
Добрый день! У меня есть двумерное уравнение теплопроводности с такими начальными и граничными...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.