Тепловой контроль и диагностика. Нестерук Д.А - 53 стр.

UptoLike

53
m = 0.5;
dt = m * h^2 / diff; %рассчитываем шаг по времени исходя из условия устойчивости
T1 = 3; %граничные условия
T2 = -3;
T = zeros( 1, hNodeCnt); %начальная температура вдоль стержня
for i=1:100
T = expScheme( m, T, T1, T2);
plot(T);
pause(0.1);
end;
Рассмотрим реализацию численной схемы расчета температуры вдоль
стержня при граничных условиях 3-го рода для неявной схемы. Считаем, что
стержень разбит на N равных частей величиной h. Аппроксимируем
граничные условия 3-го рода (
1112
,,,
amb amb
TT
α
α
):
11
1
10
10 1
()
nn
n
amb
TT
TT
h
αλ
++
+
−−=
или
11
011
11
(1 )
nn
amb
TTT
hh
λ
λ
αα
++
+− = (для левой
границы),
11
1
1
22
()
nn
n
NN
Namb
TT
TT
h
αλ
++
+
−=
или
11
12
22
(1 )
nn
NNamb
TTT
hh
λ
λ
αα
++
−+ =
(для правой
границы). С учетом выражения (2.40) для внутренних узлов стержня:
11 1
11
(1 2 )
nn n n
kk k k
mT T m mT T
++ +
−+
−++ =, для 1..( 1)kN
=
получаем систему из (N+1)
линейных уравнений в матричном виде:
1
11
1
0
1
1
1
1
1
1
1
2
22
(1 )
0 ... ... ... 0
(1 2 )
... ... ... 0
(1 2 )
0 ... ... 0
(1 2 )
(1 )
0 0 0 ... ...
n
amb
n
n
n
n
N
N
n
amb
N
hh
T
T
T
m
T
mm
m
mm
T
m
T
mm
T
T
hh
λλ
αα
λλ
αα
+
+
+
+

+−






−+



−+



=






−+






−+


#
#
Для решения системы такого вида обычно используются методы Гаусса
и прогонки. Ниже приведена m-функция «impScheme», реализующая
неявную схему и использующая для решения системы линейных уравнений
встроенные алгоритмы пакета MATLAB (для нахождения обратной
матрицы), а также контрольная m-функция «impSchemeDemo» для более
удобного задания параметров.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function Res = impScheme( m, T, Tamb1, Tamb2, alf1, alf2, cond, h)
%function Res = impScheme( m, T, Tamb1, Tamb2, alf1, alf2, cond, h)
%расчет температуры вдоль стержня с использованием неявной схемы
%граничные условия 3 рода
% h - шаг по пространству