- •Казахстанско-британский технический университет факультет информационных технологий кафедра высшей и прикладной математики
- •Рысбайулы б.
- •§1. Интерполирование функций. Сплайны первого и второго порядка.
- •1.1.Сплайн 1-го порядка (кусочно-линейная интерполяция).
- •1.2.Сплайн 2-го порядка s(X).
- •Из последней системы определяются
- •1.3. Расчетные формулы сплайна 2-го порядка.
- •1.4. Переменные и структурная схема расчета.
- •С начало труктурная схема расчета.
- •§2. Приближенное вычисление определенного интеграла
- •2.4. Алгоритм вычисления определенного интеграла.
- •Структурная схема расчета.
- •2.5. Фильтрация жидкости и газа
- •2.6. Несобственный интеграл с бесконечными пределами
- •§3. Расчет показателей нефтяного месторождения в законтурной области пласта при упругом режиме.
- •3.1. Постановка задачи.
- •3.2. Математическая модель задачи.
- •3.3.Численные методы решения задачи (3.1) – (3.2).
- •2. Метод Рунге – Кутта второго порядка точности.
- •3. Метод Рунге – Кутта третьего порядка точности.
- •4. Метод Рунге – Кутта четвертого порядка точности.
- •§ 4. Задача теплообмена в трубопроводе нефтеперевозки . Дифференциальные уравнения второго порядка. Краевая задача
- •4.1. Постановка задачи.
- •4.2. Математическая модель.
- •4.3. Приближенный метод решения задачи (4.1) – (4.2)
- •4.4. Трехточечная разностная схема. Метод прогонки.
- •4.5. Переменные. Блок-схема.
- •Блок-схема
- •§ 5. Смешанная краевая задача для уравнения параболического типа. Нестационарный теплообмен при перевозке нефти трубопроводом.
- •5.1. Постановка задачи
- •5.2. Математическая модель.
- •Систему линейных алгебраических уравнений перепишем в виде
- •7.4. Расчетная схема.
- •7.5. Переменные и блок – схема.
- •Блок-схема
- •7.6. Задания для лабораторной работы.
- •§8. Обратная задача для уравнения теплопроводности.
- •Численная реализация
- •Связь между уравнениями
- •Литература
- •Дополнительная литература
7.6. Задания для лабораторной работы.
Составить программу и произвести расчет при следующих начальных данных распределения температуры и теплопроводных характеристиках грунта.
Температура воздуха изменяется по закону
.
Варианты значений θmax и θmin:
1. θmax = - 400, θmin = -500 2. θmax = - 430, θmin = -510 3. θmax = - 300, θmin = -380 4. θmax = - 200, θmin = -300 5. θmax = - 350, θmin = -450 6. θmax = - 240, θmin = -350 |
7. θmax = - 180, θmin = -250 8. θmax = - 130, θmin = -200 9. θmax = - 240, θmin = -330 10. θmax = - 280, θmin = -400 11. θmax = - 140, θmin = -250 12. θmax = - 340, θmin = -450 |
Глубина заложения трубопровода Н = 1,5 м; tmax =24 час, считаем, что начальное распределение температуры от трубопровода до поверхности изменяется по закону
Температура на поверхности трубопровода равен θ1 = 450.
Теплопроводные характеристики грунта приведены в таблице 1.
|
ρ, |
|
|
1 2 3 4 5 6 7 8 9 10 11 12 |
340 1,8 – 1,9 1,9 – 1,95 2,6 – 2,8 2,3 - 3 2,2 – 2,4 2,3 –2,6 3,3 3-3,2 2-2,2 3,3-3,5 2,4-2,6 |
0,075 + 0,00021 · θ 0,72 + 0,0005 · θ 0,8 + 0,0006 · θ 4,0 - 0,0015 · θ 4,0 - 0,0017 · θ 1,45 - 0,0002 · θ 1,8 + 0,0016 · θ 1,2 + 0,00055 · θ 1,6 + 0,00045 · θ 4,5 - 0,0012 · θ 1,4 + 0,0025 · θ 4,7 - 0,0014 · θ |
0,91 0,21 + 0,00055 · θ 0,2 + 0,00003 · θ 0,2 + 0,0002 · θ 0,43 + 0,0001 · θ 0,2 + 0,0003 · θ 0,19 + 0,0001 · θ 0,13 + 0,0003 · θ 0,12 + 0,0035 · θ 0,15 + 0,0031 · θ 0,23 + 0,0004 · θ 0,32 + 0,0005 · θ |
Переменные и константы для составления программы на языке Турбо-Паскаль.
Program Lab6;
Uses crt;
Const
ka=26*3600; k=1E-12; mn=1/(1000*3600*24); r0=0.1;
H=15; C0=mn/(2*pi*r0*h*k); tz=3*365; Tmax=15*365; n1=1000;
N=11+n1; m=15*365; dt=Tmax/m; P0=20E+6;
Var
I,j : integer;
A,B,C.F, dd :real;
Alfa, betta, y0,y1: array[0...n] of real;
Yz : array[0..m] of real;
Dr,r :array[1..11] of real;
Function Qz(t:real) :ral;
Var r0:real;
Begin
If t<tz then r0=0.149*t*sin(pi*t/(2*tz)) else r0:=0.149*tz;
Qz:=R0; end;
Begin for i:=0 to n do y0[i]:=P0; Y1[n]:=P0;
Dr[1]:=0.01; r[1]:=r0+dr[1];
For i:=1 to 10 do dr[i+1]:=2*dr[i]; For i:=1 to 10 do r[i+1]:=r[i]+dr[i+1];
Dd:=(R-r[11])/N1;
For j:=0 to m do begin
A=ka*dt*r[2]*2/R[1]/dr[2]/(dr[1]+dr[2]); C=ka*dt*2/dr[1]/(dr[1]+dr[2]);
Alfa[2]:=A/(1+A); betta[2]:=(y0[1]-C*C0*qz(j*dt)*dr[1])/(1+A);
For i:=1 to 10 do begin
A=ka*dt*r[i+1]*2/R[i]/dr[i+1]/(dr[i]+dr[i+1]); C=ka*dt*2/dr[i]/(dr[i]+dr[i+1]);
B:=1+A+C; F:=y0[i];
Alfa[i+1]:= A/(B-alfa[i]*C); Betta[i+1]:=(C*betta[i]+F)/( B-alfa[i]*C); end;
For i:=11 to n-1 do begin
A=ka*dt*(r[11]+(i-9)*dd)/(r[11]+(i-10)*dd)/dd/dd; C=ka*dt/dd/dd;
B:=1+A+C; F:=y0[i];
Alfa[i+1]:= A/(B-alfa[i]*C); Betta[i+1]:=(C*betta[i]+F)/( B-alfa[i]*C); end;
For i:=n downto 2 do y1[i-1]:= Alfa[i]*y1[i]+Betta[i];
Y1[0]:= y1[1]-C0*Qz(j*dt)*dr[1];
Yn[j+1]:= Y1[0]; For i:=0 to n do y0[i]:= Y1[i]; end;
Assign(f1,’out1.dat’); Asiign(f2, ‘out2.dat’);
Rewrite(f1); rewrite(f2);
For i:=0 to n do writeln(f1, y1[i]/1000000:6:4);
For j:=1 to m do writeln(f2, Yn[j]/1000000:6:4);
Close(f1); close(f2); end.