Теплопроводность через сферическую оболочку
Рефераты >> Физика >> Теплопроводность через сферическую оболочку

где C1 - это константа, определяемая формулой

. (2.33)

Физический смысл полученного результата достаточно ясен: это известный закон обратных квадратов, характерный для задач со сферической симметрией.

Теперь, так как функция j(r) известна, можно рассматривать уравнение (2.27) как дифференциальное уравнение относительно функции T(r). Решение этого уравнение и даст искомое распределение температур. Подставив в (2.27) выражение (2.32) и заданную функцию , получим следующее дифференциальное уравнение:

. (2.34)

Данное уравнение решается методом разделения переменных:

.

Интегрирование этого выражения даёт:

Итак, функция T(r) имеет вид:

. (2.35)

Константы C1 и C2 можно определить из граничных условий T(R1) = T1, T(R2) = T2. Подстановка этих условий в (2.35) даёт линейную систему двух уравнений с двумя неизвестными C1 и C2:

. (2.36)

Вычитая из первого уравнения второе, получим уравнение относительно C1:

,

откуда

. (2.37)

С учётом этого выражение (2.35) можно записать в виде:

. (2.38)

Теперь первое граничное условие T(R1) = T1 даёт:

, (2.39)

откуда следует выражение для константы C2:

. (2.40)

Подстановка (2.40) в (2.39) даёт окончательное выражение для искомой функции T(r):

. (2.41)

Зная функцию T(r), можно из закона Фурье

определить и окончательное выражение для плотности теплового потока j как функции от радиуса r:

. (2.42)

Интересно отметить, что распределение температур не зависит от коэффициента b, но зато плотность потока пропорциональна b.

3 Заключение

В результате проделанной работы выведено дифференциальное уравнение теплопроводности применительно к данным конкретным условиям задачи и получено решение этого уравнения в виде функции T(r). Разработана программа TSO, рассчитывающая функцию T(r) и строящая её график для различных задаваемых пользователем параметров задачи . Листинг программы приведен в Приложении А.

Список используемых источников

Нащокин В.В. Техническая термодинамика и теплопередача: Учеб. пособие для вузов. — 3-е изд., испр. и доп. — М: Высш. школа, 1980. — 469 с.

Араманович И.Г., Левин В.И. Уравнения математической физики: М.: Наука, 1969. — 288 стр.

Савельев И. В. Курс общей физики. Т. 1. Механика. Молекулярная физика: Учеб. пособие для студентов втузов. — М.: Наука, 1982. — 432с.

Зельдович Б.И., Мышкис А.Д. Элементы математической физики. — М.: Наука, 1973. — 352с.

Приложение А

(обязательное)

Листинг программы TSO

unit Kurs_p;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls, Spin;

type

TForm1 = class(TForm)

Button1: TButton;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Edit1: TEdit;

Label9: TLabel;

Edit2: TEdit;

Label10: TLabel;

Edit3: TEdit;

Label11: TLabel;

Edit4: TEdit;

procedure Button1Click(Sender: TObject);

procedure FormPaint(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

private

public

procedure OsiK (x0,y0:Integer);

procedure Postroenie(T1,T2,R1,R2:real);

end;

var

Form1: TForm1;

X0,Y0:integer;

T1,T2,R1,R2:real;

implementation

{$R *.DFM}

procedure TForm1.OsiK (x0,y0:Integer);

var

i,x,y:integer;

begin

Canvas.Pen.Width:=2;

Canvas.Pen.Color := clBlack;

Canvas.MoveTo(x0, y0); {построение оси X}

Canvas.LineTo(x0+400, y0);

Canvas.MoveTo(x0+400, y0); {построение стрелочек оси Х}

Canvas.LineTo(x0+400-10, y0-5);

Canvas.MoveTo(x0+400, y0);

Canvas.LineTo(x0+400-10, y0+5);

Label4.Left:=x0+390;

Label4.Top:=y0+10;

Label5.Left:=x0+350;

Label5.Top:=y0+10;

Label6.Left:=x0;

Label6.Top:=y0+10;

Label7.Left:=x0-25;

Label7.Top:=y0-10;

Label8.Left:=x0-25;

Label8.Top:=y0-105;

Canvas.MoveTo(x0, y0); {построение оси Y}

Canvas.LineTo(x0, y0-150);

Canvas.MoveTo(x0, y0-150); {построение стрелочек оси Y}

Canvas.LineTo(x0-5, y0-150+10);

Canvas.MoveTo(x0, y0-150);

Canvas.LineTo(x0+5, y0-150+10);

Label3.Left:=x0-25;

Label3.Top:=y0-150;

Canvas.Pen.Width:=1;

x:=x0;

for i:=1 to 10 do

begin

x:=x+35;

Canvas.MoveTo(x, y0-3);

Canvas.LineTo(x, y0+3);

end;

y:=y0;

for i:=1 to 5 do

begin

y:=y-20;

Canvas.MoveTo(x0-3, y);

Canvas.LineTo(x0+3, y);

end;

end;

procedure TForm1.Postroenie(T1,T2,R1,R2:real);

var

x,y:integer;

Kx,Ky,x1,y1,P,C1,Sag:real;

begin

Canvas.Pen.Width:=1;

Canvas.Pen.Color := clRed;

Sag:=(R2-R1)/500; {шаг по X}

C1:=(T1-T2)/(ln(R2/R1));

Kx:=(R2-R1)/350; {Коэффициенты "усиления"}

if T1>T2 then

Ky:=T1/100

else

Ky:=T2/100;

x1:=R1; {Начальные условия}

y1:=T1;

Canvas.MoveTo(x0+Round((x1-R1)/Kx),y0-Round(y1/Ky));

repeat

y:=Round(y1/Ky);

x:=Round((x1-R1)/Kx);

Canvas.LineTo(x0+x, y0-y);

x1:=x1+Sag;

y1:=(T1+C1*ln(R1/x1));

{label1.Caption:=label1.Caption+'; '+intToStr(x);

label2.Caption:=label2.Caption+'; '+intToStr(y);}

until x1>R2;

P:=4*Pi*C1;

label1.Caption:='Мощность источника: ='+FloatToStrF(P,ffGeneral,5,1)+

' Вт';

label5.Caption:=FloatToStrF(R2,ffGeneral,4,1);

label6.Caption:=FloatToStrF(R1,ffGeneral,4,1);

if T1>T2 then

begin

label7.Caption:=FloatToStrF(T2,ffGeneral,4,1);

label8.Caption:=FloatToStrF(T1,ffGeneral,4,1);

end

else

begin

label7.Caption:=FloatToStrF(T1,ffGeneral,4,1);

label8.Caption:=FloatToStrF(T2,ffGeneral,4,1);

end;

end;

procedure TForm1.Button1Click(Sender: TObject);

var

Code1,Code2,Code3,Code4:integer;

begin

Repaint;


Страница: