Решение смешанной задачи для уравнения теплопроводности методом конечных разностей

Описание метода конечных разностей на примере определения зависимости температуры от времени в различных точках стержня из теплопроводящего материала. Решение смешанной задачи для уравнения теплопроводности с заданными начальным и граничными условиями.

Рубрика Математика
Вид лабораторная работа
Язык русский
Дата добавления 27.04.2011
Размер файла 33,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Министерство образования Российской Федерации

Уфимский Государственный Авиационный Технический Университет

Лабораторная работа № 6

РЕШЕНИЕ СМЕШАННОЙ ЗАДАЧИ

ДЛЯ УРАВНЕНИЯ ТЕПЛОПРОВОДНОСТИ МЕТОДОМ КОНЕЧНЫХ РАЗНОСТЕЙ

Уфа 2006

1. Цель работы

Ознакомление с методами решения смешанных задач для дифференциальных уравнений параболического типа, с понятием устойчивости численных методов, а также со способами разработки экономных алгоритмов и программ. Работу можно считать расчетно-графической в связи с возможностью наглядного графического представления функции двух переменных.

2. Описание метода

Рассмотрим стержень из теплопроводящего материала с коэффициентом теплопроводности k. Предположим, что температура на концах стержня задана, а боковая поверхность стержня теплоизолирована. Пусть ось x направлена вдоль оси стержня, а его концы расположены в точках x=0 и x=L. Тогда задача сводится к определению зависимости от времени температуры u в точках стержня, то есть функции двух переменных u(x,t). Функция u(x,t) должна удовлетворять уравнению теплопроводности

(0<x<L), (1)

начальному условию

u(x,0)=f(x), (0<x<L), (2)

и условиям на концах стержня

u(0,t)=j1(t), u(L,t)=j2(t), (tV0). (3)

Значения u(0,0) и u(L,0), полученные из (2) и (3), должны совпадать. Это будет если j1(0)=f(0), j2(0)=f(L).

Следует отметить, что путем замены переменных t^=a2t уравнение (1) можно преобразовать к виду

. (4)

Это означает, что решение задачи (1)-(3) путем замены переменных сводится к решению задачи (4),(2),(3). Далее будем полагать а=1.

Построим на плоскости (x,t) сетку с шагом h по переменной x (xi = (i-1)h, i=1,..,n+1, h=L/n) и с шагом t по переменной t (tj = (j-1)t). Обозначим uij = u(xi,tj). Производные в уравнении (1) аппроксимируем следующим образом:

, (5)

. (6)

Подставляя (5) и (6) в (1) при a=1, получим разностное уравнение:

(7)

В соответствии с (2) и (3) значения

ui0 = f(xi), u0j = j1(tj), unj = j2(tj) (8)

являются известными. Тогда, подставляя в (7) j=0, получим систему n-1 линейных уравнений, решив которую можно определить ui1, i=1,..,n-1. При этом, поскольку u01=j1(t1), un1=j2(t1), известными оказываются все значения временного слоя j=1, (t=t1). Затем, подставляя в (7) j=2, решаем систему уравнений относительно ui2 и т.д. для всех j=2,..,m.

Из (7) следует, что в каждое i-тое уравнение (i=1,..,n-1) с ненулевыми коэффициентами входят только три неизвестных ui-1,j; uij; ui+1,j. Величина ui,j-1 к этому моменту является известной и потому отнесена в правую часть уравнения. Таким образом, матрица системы уравнений является трехдиагональной и эту систему можно решить методом прогонки. Для этого представим ее в стандартном виде:

.(9)

Для данной задачи xi=uij, ai = l, gi = l, bi = 1-2l, b0 = 1, g0 = 0, j0 = u0j = j1(tj), jn = unj = j2(tj), ji = -ui,j-1 (i=1,..,n-1).

Пусть на j-том шаге заданными являются параметры ui,j-1 (i=1,..,n-1), u0j, unj, l. Все неизвестные значения uij можно разместить в массиве xi (xi=uij, i=0,..,n). Ищем связь xi-1 с xi в виде рекуррентного соотношения

xi-1=ci-1xi+ni-1, i=1,..,n. (10)

Подставляя (10) в (7), получаем

lci-1xi-(1+2l)xi+lxi+1 = -ui,j-1-lni-1.

Отсюда

(11)

Сравнивая (11) с (10), находим рекуррентные соотношения

,

, (12)

c0= 0, n0 = u0j .

Таким образом, алгоритм определения значений uij по известным ui,j-1 состоит из двух этапов: прямого хода прогонки по формулам (12) при i=1,..,n-1 и обратного хода прогонки по формуле (10) при i=n,..,2.

а)

б)

Рис. 5.1

теплопроводность смешанный конечный разность

Необходимо отметить, что разностное уравнение (7) связывает одно известное значение Ui,j-1 (из предыдущего j-1 временного слоя) и три неизвестных Ui,j, Ui-1,j, Ui+1,j. Поэтому найти значения Ui,j (i=1,...,n-1) можно только все сразу путем решения системы уравнений. Такая схема связи переменных в разностном уравнении называется неявной. Шаблон неявной разностной схемы представлен на рис. 5.1а.

Наряду с неявной возможна организация явной разностной схемы. Для этого вместо выражения (5) для первой разностной производной по времени используют формулу

, (13)

Тогда разностное уравнение запишется в виде

(14)

В этом случае связываются три неизвестные значения, относящиеся к предыдущему временному слою (здесь j-тому) и только одно неизвестное Ui,j+1. Шаблон явной разностной схемы представлен на рис. 5.1а.

При использовании этой схемы неизвестные параметры определяются путем последовательного применения формулы (2.14) при i=1,...n-1. Поскольку при этом не надо решать системы уравнений, то процесс определения параметров одного временного слоя требует меньших затрат времени, чем в случае неявной схемы.

Однако, неявная схема устойчива (ошибка не возрастает от шага к шагу) при любых значениях l=t/h2. Явная схема является устойчивой только при l<1/2. В противном случае развивается экспоненциальный рост погрешности так, что обычно происходит аварийная остановка ЭВМ по переполнению порядка. Поэтому при использовании явной схемы вычисления приходится вести с очень малым шагом по времени.

В случае применения неявной схемы затраты машинного времени для расчета одного временного слоя больше, но возможность выбора значительно большего шага по времени t может обеспечить общее ускорение процесса расчета по сравнению с явной схемой.

При выполнении данной работы будем предполагать, что температура на концах стержня поддерживается постоянной, то есть

j1(t)Tf(0), j2(t)Tf(L).

4. Варианты заданий

Решить смешанную задачу для уравнения теплопроводности с начальным u(x,0)=f(x) и граничными условиями u(0,t)=f(0), u(1,t)=b (L=1).

а

b

c

f(x)

1

1.1

3.0

0.05

f

b

a

0 x

c 1

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

#include <iostream.h>

#include <stdio.h>

#include <math.h>

#include <stdlib.h>

#include <windows.h>

#include <iomanip.h>

float funkf(float x);

float L,tau,lamda,h,T,a,b,c,betta[9999],gamma[9999],alfa[9999],X[9999],V[9999];

int i,j,n,m;

float x[9999],t[9999],u[9999][9999];

void main()

{

L=1;

cout<<"Vvedite koli4estvo zna4enii po x n"<<endl;

cin>>n;

cout<<"Vvedite maximal'nu'u temperaturu t"<<endl;

cin>>T;

cout<<"Vvedite shag po temperature tau"<<endl;

cin>>tau;

cout<<"Vvedite parametr a,b,c"<<endl;

cin>>a>>b>>c;

m=T/tau+1;

cout<<" "<<n<<endl;

h=L/n;

lamda=tau/(h*h);

for(i=1;i<n+1;i++)

{

x[i]=(i-1)*h;

}

for(j=1;j<m;j++)

{

t[j]=(j-1)*tau;

}

for(j=0;j<m+1;j++)

{

u[0][j]=funkf(x[0]);

u[n][j]=b;

//cout<<"u[0][j]="<<u[0][j]<<" u[n][j]"<<u[n][j]<<endl;

}

/*for(i=1;i<n-1;i++)

{

for(j=1;j<m-1;j++)

{

u[i][j+1]=lamda*u[i-1][j]-(1-2*lamda)*u[i][j]+lamda*u[i+1][j];

}

}*/

betta[0]=1;

gamma[0]=0;

for(j=1;j<m-1;j++)

{

for(i=1;i<n;i++)

{

alfa[i]=lamda;

gamma[i]=lamda;

betta[i]=1-2*lamda;

X[0]=0;

V[0]=u[0][j];

X[i]=lamda/(1+2*lamda-lamda*X[i-1]);

V[i]=(u[i][j-1]+lamda*V[i-1])/(1+2*lamda+lamda*X[i-1]);

u[i][j]=x[i];

}

for(i=n;i>1;i--)

{

u[i-1][j]=X[i-1]*u[i][j]+V[i-1];

}

}

for(i=0;i<n+1;i++)

{

for(j=0;j<m;j++)

{

cout<<"u["<<i<<"]["<<j<<"]="<<u[i][j]<<endl;

}

}

/*for(j=0;j<m;j++)

{

cout<<"u["<<n<<"]["<<j<<"]="<<u[n][j]<<endl;

}*/

system("PAUSE");

}

float funkf(float x)

{

float m;

if(x>=0)

{

if(x<c)

{

m=a;

}

else

if(x<=1)

{

m=-2*x+3.1;

}

}

else

cout<<"x ne vxodit v zadannii promegutok"<<endl;

return(m);

}

Результаты работы программы:

Vvedite koli4estvo zna4enii po x n

10

Vvedite maximal'nu'u temperaturu t

20

Vvedite shag po temperature tau

4

Vvedite parametr a,b,c

1.1

3.0

0.05

10

u[0][0]=1.1

u[0][1]=1.1

u[0][2]=1.1

u[0][3]=1.1

u[0][4]=1.1

u[0][5]=1.1

u[1][0]=0

u[1][1]=0.984706

u[1][2]=0.989311

u[1][3]=0.989335

u[1][4]=0.989335

u[1][5]=0

u[2][0]=0

u[2][1]=0.871874

u[2][2]=0.878632

u[2][3]=0.87867

u[2][4]=0.878671

u[2][5]=0

u[3][0]=0

u[3][1]=0.980508

u[3][2]=0.988619

u[3][3]=0.988662

u[3][4]=0.988662

u[3][5]=0

u[4][0]=0

u[4][1]=1.2011

u[4][2]=1.21003

u[4][3]=1.21008

u[4][4]=1.21008

u[4][5]=0

u[5][0]=0

u[5][1]=1.46945

u[5][2]=1.47864

u[5][3]=1.47868

u[5][4]=1.47868

u[5][5]=0

u[6][0]=0

u[6][1]=1.75851

u[6][2]=1.76731

u[6][3]=1.76734

u[6][4]=1.76734

u[6][5]=0

u[7][0]=0

u[7][1]=2.05823

u[7][2]=2.06595

u[7][3]=2.06597

u[7][4]=2.06597

u[7][5]=0

u[8][0]=0

u[8][1]=2.36535

u[8][2]=2.37126

u[8][3]=2.37128

u[8][4]=2.37128

u[8][5]=0

u[9][0]=0

u[9][1]=2.67919

u[9][2]=2.68253

u[9][3]=2.68254

u[9][4]=2.68254

u[9][5]=0

u[10][0]=3

u[10][1]=3

u[10][2]=3

u[10][3]=3

u[10][4]=3

u[10][5]=3

Для продолжения нажмите любую клавишу.

Размещено на Allbest.ru


Подобные документы

  • Особенности решения обыкновенного линейного неоднородного дифференциального уравнения второго порядка с заданными граничными условиями методом конечной разности. Составление трехдиагональной матрицы. Реализация решения в программе Microsoft Office Excel.

    курсовая работа [1,4 M], добавлен 23.12.2013

  • Последовательность решения линейной краевой задачи. Особенности метода прогонки. Алгоритм метода конечных разностей: построение сетки в заданной области, замена дифференциального оператора. Решение СЛАУ методом Гаусса, конечно-разностные уравнения.

    контрольная работа [366,5 K], добавлен 28.07.2013

  • Общая характеристика параболических дифференциальных уравнений на примере уравнения теплопроводности. Основные определения и конечно-разностные схемы. Решение дифференциальных уравнений параболического типа методом сеток или методом конечных разностей.

    контрольная работа [835,6 K], добавлен 27.04.2011

  • Порядок и принципы составления дифференциального уравнения, методика нахождения неизвестных значений. Замена исходного дифференциального уравнения на систему n-линейных уравнений относительно n-неизвестных. Формирование и решение системы уравнений.

    задача [118,8 K], добавлен 20.09.2013

  • Решение линейной краевой задачи методом конечных разностей (методом сеток). Замена области непрерывного изменения аргументов дискретным множеством узлов (сеток). Сведение линейной краевой задачи к системе линейных алгебраических уравнений (сеточных).

    лекция [463,7 K], добавлен 28.06.2009

  • Решение линейной краевой задачи методом конечных разностей. Сопоставление различных вариантов развития процесса с применением анализа графиков, построенных на базе полученных данных. Графическое обобщение нескольких вариантов развития процесса.

    лабораторная работа [23,3 K], добавлен 15.11.2010

  • Описание метода сведения краевой задачи к задаче Коши. Решение системы из двух уравнений с четырьмя неизвестными. Метод Рунге-Кутта. Расчет максимальной погрешности и выполнение проверки точности. Метод конечных разностей. Описание полученных результатов.

    курсовая работа [245,2 K], добавлен 10.07.2012

  • Метод разделения переменных в задаче Штурма-Лиувилля. Единственность решения смешанной краевой задачи, реализуемая методом априорных оценок. Постановка и решение смешанной краевой задачи для нелокального волнового уравнения с дробной производной.

    курсовая работа [1003,8 K], добавлен 29.11.2014

  • Физические задачи, приводящие к уравнению теплопроводности. Краевые задачи, связанные с конфигурацией тела и условиями теплообмена. Теория разностных методов решения уравнения теплопроводности, устойчивость и сходимость соответствующих разностных схем.

    дипломная работа [460,8 K], добавлен 04.05.2011

  • Аналитическое решение уравнения для вынужденных поперечных колебаний консольного стержня. Численное решение уравнения с помощью метода "бегущего счёта". Вывод уравнения движения из основных законов физики. Построение дискретной модели и выбор сетки.

    курсовая работа [1,0 M], добавлен 25.02.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.