- •Выполнил:
- •Алгоритм решения
- •Реализация алгоритма
- •Z ai |ф*ФА = /ф* cosxdx’ к = 0,4,
- •Разрешающие соотношения
- •Алгоритм решения
- •Результаты расчётов
- •Разрешающие соотношения
- •Алгоритм решения
- •Реализация алгоритма
- •2.1. Аппроксимация решения кусочно-линейными функциями
- •Алгоритм решения
- •Результаты расчетов
- •Разрешающие соотношения
- •Алгоритм решения
- •Реализация алгоритма
- •Разрешающие соотношения
- •Алгоритм решения
- •Реализация алгоритма
- •3.1. Явная разностная схема
- •Алгоритм решения
- •Реализация алгоритма
- •Разрешающие соотношения
- •Программа 3.2
- •Реализация алгоритма
- •Алгоритм решения
- •Реализация алгоритма
|
|
|
|
Программа 3.2 |
// |
Задача стационарной теплопроводности. Неявная схема |
|||
// |
Ne |
число |
сегментов |
|
// |
Nk |
число |
узлов |
|
// |
locale |
массив коэффициентов системы уравнений для сегмента |
||
// |
localF |
массив правых частей системы уравнений для сегмента |
||
// |
globalC |
массив коэффициентов системы уравнений для объекта |
||
// |
globalF |
массив коэффициентов системы уравнений для объекта |
||
// |
х |
массив координат узлов |
||
// |
хО |
начальная |
точка |
|
/ / |
XI |
конечная |
точка |
|
/ / |
L |
коэффициент теплопроводности |
//С коэффициент теплоёмкости
//R плотность
//W0 амплитуда мощности источников
// |
ТО |
температура |
на левом торце (хО) |
// |
Те |
температура |
среды |
/ / |
А |
коэффициент |
теплоотдачи |
//h длина сегмента
//dt - шаг интегрирования по времени
ttdefine Ne 64
void main(void)
{double globalC [Ne+1] [Ne+1], globalF [Ne+1], x[Ne+l], Time=0.0; double locale [2] [2] , localF [2], x0=0 .f xl=M_PI, h= (xl-xO)/Ne;
double |
L = 7 0 .0, W=1000.0, T0=100.0, Te=20.0, A=30.0f dt=0.1; |
int i, |
j, k, Nk=Ne+l; |
//определение координат и номеров узлов каждого сегмента for(k=0; k<Nk; k++) x[k]=xO+h*k;
//определение начального условия
for(k=0; k < N k ; k++) T [k]=T0; for(Time=0; Time<3600.0; Time+=dt)
//инициализация массивов коэффициентов и правых частей
//системы уравнений
{for(i=0; i<Nk; i++)
for(globalF [i]=0.О , j=0; j<Nk; j++) globalC[i] [j]=0.0; for(k=0; k<Ne; k++)
// формирование матриц коэффициентов и правых частей для сегмента
{locale [0] [0]=C*R*h/3.0; locale [0] [1]=C*R*h/6.0; l ocale[1] [0]=C*R*h/6.0; locale[1] [1]=C*R*h/3.0; localL [0] [0]=L/h; localL[0] [1]=-L/h; localL[1] [0]=-L/h; localL [1] [1]=L/h;
localF [0] =W* (cos (x [k] )- (sin (x [k+1] )-sin (x [k] ))/h) ; localF [1] =W* ((sin(x [k+1] )-sin (x [k] ))/h-cos (x [k+1] )) ;
// формирование матриц коэффициентов и правых частей для объекта globalC [к] [к]+=1оса1С [0] [0]+dt*localL[0] [0];
globalC [к] [к+1]+=1оса1С [0] [1]+dt*localL[0] [1] ; globalC [к+1] [к]+=1оса1С[1] [0]+dt*localL[1] [0] ; globalC [к+1] [ к+1]+=1оса1С [1] [1]+dt*localL[1] [1]; globalF[к]+=dt*localF[0]+1оса1С[0][0]*Т[к]
+1оса1С [0] [1] *Т [к+1] ; globalF[к+1]+=dt*localF[1]+1оса1С[1][0]*Т[к]
+1оса1С [1] [1] *Т [к+1] ;
}
// определение граничного условия 1-го рода на левом торце globalC [0] [0]=1.0;
f o r (к=1; k<Nk; к++) g l o balC[0][к]=0.0;
g lobalF[0]=T0*exp(-0.001*Time);
//определение граничного условия 3-го рода на правом торце globalC[Nk-1][Nk-1]+=A*dt;
globalF[Nk-1]+=A*dt*Te;
//решение системы линейных алгебраических уравнений GAUSS(globalC, globalF, N k ) ;
}
Реализация алгоритма
Отрезок [0, я] разбивается на четыре равных сегмента
[0,л] = [0,я/4] и [п/4, л/2] и [л/2,^3л/4] U [3л/4,тс].
На каждом из этих сегментов в соответствии с выражением (3.12) определяются кусочно-линейные пробные функции. Решение дифференциального уравнения представляется разложением (3.14). Для построения приближённого решения необходимо решить систе му обкновенных дифференциальных уравнений (3.17) относительно искомых функций T(t)i9 i = 0,4.
В соответствии с коэффициентами матриц [С], [Л] и {W} выра жения (3.17), количественными значениями физических констант с, р, X, а, параметров Л и т подсчитываются значения коэффициентов системы линейных алгебраических уравнений (3.19), что приводит к системе уравнений
i f о+ 07] + of2+ 0T3+ 0Г4= 1 OOeT0’01' ,
(469668-т89,13)Г0 + 2(939336 + T89,13)7] + (469668- т89,13)Г2 + 0Г3+
+0Г4= 469668Г0 +18786727] + 4696687], + т527,393, 0Г0+(469668-т89,13)7]+2(939336 + т89,13)Г2+(469668-т89,13)Г3 + «+0f4= 4696687] +18786727], + 4696687; + т745,846,
Of0+07] +(469668-т89,13)f2+2(939336 + r89,13)f3 +
+(469668-т89,13)f4 =469668Г2 +1878672Г3 +469668Г4 + т527,393, ОТ0+ 07] + 0Г2+ (939336 - т89,13)Г3 + (939336 + т119,13)Г4 = = 4696687; + 9393367; + т699,684.
Согласно условию (3.22) при использовании четырёх сегментов на отрезке [0, к] для устойчивости неявной разностной схемы необ ходимо выполнение неравенства т>срИ2/ЗХ =10539, что для отрезка времени [0, 3600] невозможно.
Результаты расчётов
На рис. 3.7, а представлено приближенное решение рассматри ваемой дифференциальной задачи для области [0, л:] с 32 сегмента ми на заданном отрезке времени [0, 3600] и шагом интегрирования т = 100 с, полученное с помощью Программы 3.2.
При расчётах принято, что нагрев области отсутствует, W0 = 0. Из рис. 3.7, а видно, что вследствие нарушения условия устойчиво сти т > cph2/ЗХ = 164,7 полученное решение имеет распределение температуры, не соответствующее закономерностям распределения тепла в рассматриваемом объекте.
На рис. 3.7, б приведено приближенное решение той же задачи с 32 сегментами на отрезке времени [0, 3600] и шагом интегрирова ния т = 500 с, удовлетворяющим условию устойчивости. Нагрев об ласти в этом варианте также отсутствует, W0 = 0. Из рис. 3.7 видно, что признаки нарушения устойчивости приближённого решения, характерные для явной схемы интегрирования, отсутствуют.
Рис. 3.7. Приближённые решения уравнения (3.5) при использова нии неявной разностной схемы для 20 сегментов на отрезке [0, я] и шага интегрирования по времени т = 10 с (а) и т = 500 с (б) для моментов времени / = 0 с (---- ), t = 500 с (---- ), t = 1000 с (-0-), / = 1500 с (-А-), t =2000 с (—X—), / = 2500 с (-о-), t = 3000 с ( - Н
На рис. 3.8 приведено приближённое решение рассматриваемой задачи в области [О, л]х[о, 3600] для 64 сегментов и шага интегриро
вания по времени т = 50 с, удовлетворяющего условию устойчивости т > cph2/3X = 41,2 с, полученное с использованием неявной разност ной схемы и учётом нагрева области, WQ= 1000 Вт/м3
|
|
|
|
|
|
|
Таблица 3.2 |
Погрешность Ъту2тприближённого решения дифференциального |
|||||||
|
уравнения при различном числе т сегментов |
|
|||||
т |
А |
Т |
б/п.2т |
т |
А |
т |
^т.2т |
4 |
0,785398 |
15360 |
72,8506 |
32 |
0,098175 |
240 |
3,51919 |
8 |
0,392699 |
3840 |
37,2481 |
64 |
0,049087 |
60 |
1,13692 |
16 |
0,196350 |
960 |
8,53731 |
128 |
0,024544 |
15 |
- |
Для функции двух переменных Tm(t,JC), являющейся приближён
ным решением заданного дифференциального уравнения, погрешность зависит от шагов интегрирования т и А, т.е. 5„, = о (т/\А 62) . В силу ус
ловия устойчивости (3.22), ограничивающего шаги интегрирования, погрешность приближённого решения может быть представлена в виде
функции только одной переменной А, т.е. 5Ш= о (ал). В табл. 3.2 приве дены значения погрешностей
$т,2,„ = |\Тгт ~ ЪЦ = ^тах \т2т(/,*) - Тт(/,дг)| =
ге[0,61440]
2т т
-/”а,х
-
определённые сравнением двух последовательных приближённых решений Тти Тгтдифференциального уравнения (3.5) при различных значениях числа т и 2 т сегментов на одном и том же отрезке време ни t € lO. 61440] с использованием чебышёвской нормы. Те же данные представлены графически на рис. 3.9.
Применение формулы (В.1) позволяет приближенно определить порядок погрешности численного решения дифференциального урав нения (3.5) разложением (3.14) по системе кусочно-линейных проб ных функций. Для 8т (рассматривается прямолинейный участок на рис. 3.8) порядок погрешности оценивается значением
6m2m = (In 72,8506 - In1,13692)/(In0,785398 - In0,049087) = 1,50043.
Погрешность полученного приближённого решения дифферен циального уравнения методом Галёркина с использованием неявной разностной схемы интегрирования по времени и системы кусочно
линейных пробных функций приближённо оценивается как величи на, пропорциональная длине сегмента h в степени 3/2 , т.е.
2т |
ш |
II |
I |
|
|
Ё 7 / Ф / - £ Г'Ч>'|“ ° ( А^ ) - |
||
|/=0 |
/=0 |
II |
0,01 |
0,1 |
И |
Рис. 3.9. Зависимость от длин h сегментов погрешности 6ъп приближённого решения уравнения (3.5), полученного
с использованием неявной разностной схемы
0 |
10 |
20 |
30 |
40 |
50 |
60 |
т |
Рис. 3.10. Зависимость времени t выполнения расчетов для неявной схемы от числа т сегментов разностной сетки
В силу этого 5т 0 при h —» 0 или /и —>оо. Это позволяет утвер ждать, что последовательность приближённых решений дифферен циального уравнения, полученных аппроксимацией (3.14) кусочно постоянными функциями, сходится равномерно на отрезке [0, л].
На рис. ЗЛО приведена зависимость времени / выполнения рас четов от числа т сегментов разностной сетки при использовании не явной схемы интегрирования по времени.
Выводы
1. Процедура метода Галёркина использована для приближённо го решения нестационарного дифференциального уравнения тепло проводности. С помощью неявной разностной схемы построена система линейных алгебраических уравнений для определения ко эффициентов разложения искомого решения по системе пробных ку сочно-линейных функций.
2.Разработана вычислительная программа определения коэффи циентов разложения решения дифференциального решения по сис теме кусочно-линейных функций.
3.С использованием разработанных программ определены ко эффициенты и построены приближённые решения дифференциаль ного уравнения для 2, 4, 8, 16, 32 и 64 сегментов постоянной длины (см. рис. 3.8).
4.Для указанных последовательностей разложений определены
оценки 82™погрешности приближённых решений (см. табл. 3.2) для различного числа т сегментов.
5. Показано, что с уменьшением длины h сегментов погрешно сти приближённых решений нестационарного дифференциального уравнения, полученных на основе неявной разностной схемы, опре деляемые чебышёвской нормой, уменьшаются (см. рис. 3.9), при этом погрешность аппроксимации имеет порядок 3/2 относительно длины сегментов (шага интегрирования).
6. Выполненное исследование показывает, что последовательно сти приближённых решений дифференциального уравнения, полу ченных методом Галёркина на основе неявной разностной схемы при аппроксимации кусочно-линейными функциями, сходится равно мерно на отрезке [0, я].
7. Для численного решения на компьютере с процессором Intel® Pentium® 4 (тактовая частота 2,2 ГГц, объем оперативной памяти 512 Мбайт) дифференциального уравнения методом Галёркина на основе кусочно-линейных функций на разностной сетке, содер жащей т = 64 сегмента, и шагом по времени т = 15 с при использо вании неявной разностной схемы требуется 0,3998 с (см. рис. 3.10).
3.3. Разностная схема Кранка - Николсон
Задание. Методом Галёркина с использованием кусочно-ли нейных пробных функций и схемы Кранка - Николсон построить на отрезке /е [ 0 ,3600] приближённое решение одномерного диффе
ренциального уравнения |
нестационарной теплопроводности |
||
cpf(t,x) = [\T'(t,x)\ и - sinJC |
с |
начальным условием |
T(t,JC) ^ =Г(х) |
и граничными условиями |
T(t,x)\x_Q=T0e~0f00]t |
XT'(t,x)\^ = |
Сформировать систему линейных алгебраи-
ческих уравнений относительно коэффициентов разложения иско мого решения по заданнной системе пробных функций; разрабо тать вычислительную программу для определения коэффициентов разложения решения дифференциального уравнения по заданнной системе пробных функций для 2, 4, 8, 64 сегментов постоянной длины; при известном точном решении определить погрешность приближённых решений для указанной последовательности сег ментов; исследовать зависимость погрешности искомого решения от длины h сегментов; исследовать сходимость процесса аппрок симации; оценить быстродействие вычислительной программы. При выполнении расчётов принять: с = 460 Дж/кг •град, р = 7800 кг/м3, Л = 70 Вт/м • град, Wo = 1000 Вт/м3, а = 30 Вт/м • град, Т(х) = Т°, Т° = 100°, Too = 20°
Разрешающие соотношения
Построение разрешающих соотношений метода Галёркина для одномерного дифференциального уравнения нестационарной тепло проводности с использованием кусочно-линейных пробных функций приведено в подразд. 3.1.1. Для интегрирования полученной системы обыкновенных дифференциальных уравнений (3.17) используется раз ностный аналог
где т - шаг интегрирования по времени, { г} = {г(/ + т)}, {Г}={г(/)}.
Удобно полученную разностную схему записать в виде
или в компонентной форме
Для двух соседних сегментов |
и [JC,,JC/+1] приведённая сис |
тема уравнений записывается в форме
07)_,+ 2cph
=07;,,+
02).1+ / |
£ P » . * l ^ + f i 2 » + i V |
|
h ) ‘ { 3 |
о I cos |
sinx. -smjc: |
L I - Т0/-1, |
- - - - -;-------- |
cosx, -T qt
TM =
sinxI+. -smx:
o| cosx,------- ^ ------ L |_T7/>
=
2cph TX |
sm JC/+1- sin JC, |
= o r , - , ^ + ^ V f ^ - ^ k + ^ |
-co s*/+1 -T qM |
l 3 ' A |
|
Складывая второе и третье уравнения этой системы и учиты вая условие теплового баланса #; +<7/ = 0 , из этой системы урав
нений можно исключить неизвестные величины внутренних тепловых потоков между соседними сегментами и [хпхм ],
что снижает размерность системы линейных алгебраических урав нений:
+TW0( COSXW - SmXi~ SmX'-')-TqU,
Ф ^ ) t l + 2 ^ h +
T M ? ' f TM =
(3.23)
-xWr sin x:/+1- 2sin xt + sin JtM
0Tt_
V |
3 h г Л 3 |
h |
|
2cph |
TX |
- M |
^ T M |
TJ+i + |
|
||
, SinJC. ., -SinJC. |
\-xqM. |
|
+*Щ ------- |
----------- cosx,+, |
Аналогичные преобразования выполняются для всех остальных уравнений этой системы. В результате система линейных алгебраи ческих уравнений для определения нестационарного температурного поля всего стержня принимает вид
07Q+07j +0Т2+ |
+ |
= |
^ sin(;r-/z)
- * Q L
h
Для учёта граничного условия первого рода 71(^*)[с_0=Т°е~°'ои
на левом торце стержня следует первое уравнение приведённой сис
темы заменить уравнением Т0 =т°е~°,ои
Для включения в систему уравнений граничного условия третьего
рода ХГ((,х)\х=п = - а [г (/,х )|г=я - Г . ] на правом |
конце |
стержня |
ис- |
пользуется соотношение Q1 = а[^7’(/,лг)|л.=л. П |
о с |
л е д |
|
нее уравнение полученной системы |
|
|
|
cph |
x l \ |
f2cph |
xX\ |
( |
sin^TU-A)^ |
||
|
|
|
|
Tm+xW0 |
1------i------}- |
||
~ +j r j Tm-,+ l ~ r ~h / |
\ |
и |
) |
||||
" |
|||||||
преобразуется к виду |
|
|
|
|
|
||
|
|
cph |
xX)~ |
flcph |
тХ Ь |
|
|
|
|
т " т / - и + 1т " |
~ h ) m |
|
|||
cph xX |
fc _ + |
2cph |
TA. Tm+?W0 1- |
sin(jt-/j) |
-ат(гт -Г_) |
||
~ T +~h |
|
3 |
~h |
|
|
|
|
ИЛИ
|
срА |
1+l „ |
+ 2 a * + * V |
. - |
|
\T. |
|||
|
T ~ |
|
|
|
cpA TX |
2cpA |
xA. |
sin(^-A )> |
|
T ~ + T |
|
T |
1- |
+ QI7L. |
|
|
|
Окончательно система линейных алгебраических уравнений для определения температурного поля всего стержня записывается в форме
lT0+OTt +OT2+ |
- .a~°'0U |
+0Tm=T0e |
+ 0Tm=
- TW0sin2h-2sin/j |
|
|
|
|||
o' |
|
|
|
|
|
|
|
|
|
|
|
|
♦ * - |
= f a |
* |
+2f2£E*.^'|7.i + f £ e * + ^ V , - |
||||
3 |
h ) |
' |
\ |
3 |
h У 2^У |
Ъ ^ h ) y |
-zW0sin ЗА - 2sin 2A + sin A |
|
(3.24) |
||||
0To+0T,+ ( cph |
zX |
T,+ |
+ 0Г |
= |
V3
-( ^ ♦ т М ¥ - т М ? +т>-‘-
-zW( sin 4A - 2sin 3A +sin 2A |
|
|
||
|
A |
’ |
|
|
0Г0+07;+0Г2+ |
+|ат + ^ |
+ у |Г „ = |
|
|
|
|
|
^ |
sin(T[-A) |
f + f ) r - |
' + i ^ r ~ |
~T t |
\Tm+xWo |
+ axTM |
h |
Исключённые из системы первое и последнее уравнения в даль нейшем, после вычисления узловых коэффициентов 7/, могут быть использованы для определения тепловых потоков Q0 и &
Для оценки устойчивости полученных разрешающих соотноше ний используется принцип максимума. Рассматривается второе урав нение системы (3.23):
срА |
тА |
Т,-1+2 |
2£P*+iV. +f£P*.* k , j£6* +*' |
|||||||||
|
|
|
|
|
|
|
|
V |
3 |
|
|
|
+2f |
^ |
- |
л\ |
/ |
£P^ + |
A ) |
'+l |
t |
sin*,+i —2sinJC, + sin*f_, |
|||
^ 3 |
|
A |
|
. |
3 |
° |
|
A |
|
|||
Условием устойчивости по начальным данным является соот |
||||||||||||
ношение |
|
|
|
|
|
|
|
|
|
|
|
|
|
2cph |
хХ >2 cph |
тА +2 cph |
хХ + 2 2срА |
тА |
|||||||
|
|
3 |
+ А |
3 ~~И |
|
3 + А |
3 |
~~И |
||||
|
|
|
|
|
££>A> срА |
тА |
2срА _ тА |
|
|
|||
|
|
|
|
|
3 |
"1 |
|
Т |
~1 |
Т |
|
|
|
|
cph |
2срА |
тА. > срА _ тА > 2срА |
тА. срА |
|||||||
|
|
~3 |
|
|
3 |
А |
3 |
|
А |
3 |
А |
|
|
|
|
|
2срА |
тА ^ тА ^ 2срА |
2срА |
тА |
(3.25) |
||||
|
|
|
|
|
3 |
А " |
А “ 3 |
3 |
А |
|||
|
|
|
|
|
|
|||||||
Первоначально рассматриваеся левая часть неравенства (3.25): |
||||||||||||
|
|
|
|
|
-ЗтА < 2срА2- ЗтА< ЗтА, |
|
|
|||||
|
|
|
|
|
|
О < cph2 < ЗАт. |
|
(3.26) |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Далее рассматриваеся правая часть неравенства (3.25): |
||||||||||||
|
|
|
|
|
|
2срА |
тА ^ 2срА |
тА |
|
|
||
|
|
|
|
|
|
~~3 |
h |
_ _ з |
Т ’ |
|
|
|
|
|
|
ЗтА2срА2< 2срА2- ЗтА < 2срА2- ЗтА, |
|
||||||||
|
|
|
|
|
|
ЗтА< 2срА2 |
|
|
^3 27) |
|||
Сравнение неравенств (3.26) и (3.27) приводит к условию ус |
||||||||||||
тойчивости |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
срА2< ЗАт < 2срА2 |
|
|
||||
или |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
£Е^1<Т<3£Е^1 |
|
|
(3.28) |
|||
|
|
|
|
|
|
ЗА |
|
|
ЗА |
|
|
|
|
|
|
|
|
|
|
|
|
|
|