Скачиваний:
0
Добавлен:
05.12.2025
Размер:
915.84 Кб
Скачать

МИНОБРНАУКИ РОССИИ

Санкт-Петербургский государственный

электротехнический университет

«ЛЭТИ» им. В.И. Ульянова (Ленина)

Кафедра микро- и наноэлектроники

отчет

по лабораторной работе № 2

по дисциплине «Моделирование и проектирование микро- и наносистем»

Тема: Численное моделирование нестационарного процесса теплопроводности в неоднородном теле с учётом зависимости плотности мощности источников (стоков) тепла от температуры с использованием явной схемы.

Вариант №10

Студентки гр. 1282

____________________

____________________

.

.Д.

Преподаватель

__________________________

Рындин Е.А.

Санкт-Петербург

2024

ИСХОДНЫЕ ДАННЫЕ

Исходные данные для расчетов представлены в таблице 1, вид исследуемой структуры представлен на рисунке 1.

Таблица 1 – Исходные данные для выполнения задания

№ п/п

L, мм

W, мм

Коэффициент теплопроводности

Плотность

Удельная теплоемкость

Начальное и граничные условия (род)

Зависимость плотности мощности источников (стоков) тепла от температуры

Интервал времени

t, с

13

30

150

230

10

10

20

10

50

10

20

30

30

130

1000

100

200

100

300

10

10000

10000

2000

1000

2000

1000

2000

300

10000

100

1000

100

1000

100

300

100(1)

0(2)

0(2)

0(2)

0(2)

1·107

10

Рисунок 1 – Общий вид неоднородной структуры

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

Дифференциальное уравнение теплопроводности для нестационарного случая с начальным и граничными условиями задается системой (1):

(1)

При этом две пространственные и одна временная переменные принимают значения (2):

(2)

Дискретизируя задачу теплопроводности, получаем систему (3):

(3)

Дискретная задача будет решаться с помощью явной схемы: на дискретизированном пространстве строится прямоугольная сетка, на которой искомое значение функции будет находиться с использованием имеющихся значений , , . То есть значения j-го слоя формируют значения j+1-го слоя, а переменные i и j изменяются в пределах от 2 до I-1 и от 2 до J-1 соответственно. Значения при i и j, равных 1 и I или J, определяются граничными условиями. В явном виде это можно представить как соотношения (4).

(4)

где τ – шаг сетки по координате, за которую отвечает переменная j, h – шаг сетки по координате, за которую отвечает переменная i.

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

Дискретная система в случае решения уравнения теплопроводности с помощью явной схемы может быть записана в виде выражения (6).

(6)

РАСЧЕТНАЯ ЧАСТЬ

Результаты моделирования представим на рисунках 2 – 11:

Рисунок 2 – Распределение температуры в пространстве в момент времени t = 0 секунд

Рисунок 3 – Распределение температуры в пространстве в момент времени t = 1 секунда

Рисунок 4 – Распределение температуры в пространстве в момент времени t = 2 секунды

Рисунок 5 – Распределение температуры в пространстве в момент времени t = 3 секунды

Рисунок 6 – Распределение температуры в пространстве в момент времени t = 4 секунды

Рисунок 7 – Распределение температуры в пространстве в момент времени t = 5 секунд

Рисунок 8 – Распределение температуры в пространстве в момент времени t = 6 секунд

Рисунок 9 – Распределение температуры в пространстве в момент времени t = 7 секунд

Рисунок 10 – Распределение температуры в пространстве в момент времени t = 8 секунд

Рисунок 11 – Распределение температуры в пространстве в момент времени t =9 секунд

Рисунок 12 – Распределение температуры в пространстве в момент времени t =10 секунд

КОД ПРОГРАММЫ

clear all

close all

clc

NG='Figure_';

GrStep=1e+6;

Tmin=-180;

Tmax=-40;

%исходные данные

L=[30 150 230];

W=[10 10 20 10 50 10 20 30 30 130];

L=L.*1e-3;

W=W.*1e-3;

L(3)=L(3)-L(1)-L(2);

kL=[1000 100 200 100 300 10 10000];

rL=[10000 2000 1000 2000 1000 2000 300];

cL=[10000 100 1000 100 1000 100 300];

%граничные и начальные условия

gt=100;

gxmin=0;

gxmax=0;

gymin=0;

gymax=0;

tmax=10;

t=0;

dt=1e-5;

% число шагов в каждом слое структуры

Sx=5;

Sy=9;

%координаты и сеточные функции

x(1)=0;% первый элемент массива х

kV(1)=kL(1);

rV(1)=rL(1);

cV(1)=cL(1);

for i=1:length(kL)% пробег по кол-ву слоев

x=[x max(x)+W(i)/Sx:W(i)/Sx:max(x)+W(i)]; %присоединение массивов

kV=[kV ones(1,Sx).*kL(i)];

rV=[rV ones(1,Sx).*rL(i)];

cV=[cV ones(1,Sx).*cL(i)];

end

dx=diff(x);% функция возвращает массив из разностей соседних элементов

I=length(x);

kV=kV'; % транспонирование

rV=rV';

cV=cV';

y(1)=0;

for j=1:length(L)% пробег по кол-ву слоев

y=[y max(y)+L(j)/Sy:L(j)/Sy:max(y)+L(j)];% присоединение массивов

end

dy=diff(y);

J=length(y);

k=kV;

r=rV;

c=cV;

for j=2:J % делаем двумерный массив со значениями в узлах сетки

k=[k kV];

r=[r rV];

c=[c cV];

end

f=zeros(I,J);

T=ones(I,J).*gt;

ct=0;

ctt=0;

% вывод графика распределение температуры в пространстве в момент времени t=0

NG='Fig 2';

NameG=[NG num2str(ctt)];

mesh(y.*1e3,x.*1e3,T-273)

xlabel('y, mm','FontSize',19)

ylabel('x, mm','FontSize',19)

zlabel('T, ^oC','FontSize',19)

grid on

xlim([min(y.*1e3) max(y.*1e3)])

ylim([min(x.*1e3) max(x.*1e3)])

zlim ([Tmin Tmax])

colormap([0 0 0])

print(gcf,'-djpeg',NameG)

pause(1e-3)

while t<=tmax

ct=ct+1;

t=t+dt;

for j=Sy+1:2*Sy+1 % вбиваем параметры теплового источника

for i=1:I

if x(i)>=W(9)&& x(i)<=W(9)+W(8) % область, где располагается источник

f(i,j)=1e8/log10(T(i,j));

end

end

end

for j=1:J % ГУ 2 рода

TT(I,j)=T(I-1,j)+gxmax*dx(I-1);

TT(1,j)=T(2,j)-gymin*dx(1);

end

for i=2:I-1 % ГУ 2 рода

TT(i,1)=T(i,2)-gymin*dy(1);

TT(i,J)=T(i,J-1)+gymax*dy(J-1);

end

for i=2:I-1 % основной расчетный цикл

for j=2:J-1

TT(i,j) = T(i,j) + (2/(dx(i)+dx(i-1)) * (k(i,j)*(T(i+1,j)-T(i,j))/dx(i)...

- k(i-1,j)*(T(i,j)-T(i-1,j))/dx(i-1)) + 2/(dy(j)+dy(j-1)) ...

*(k(i,j)*(T(i,j+1)-T(i,j))/dy(j) - k(i,j-1)*(T(i,j)-T(i,j-1))/dy(j-1))...

+ f(i,j)) * dt/(r(i,j)*c(i,j));

end

end

if mod(ct,GrStep)==0

ctt=ctt+1;

NameG=[NG num2str(ctt)];

figure

mesh(y.*1e3,x.*1e3,TT-273)

xlabel('y, mm','FontSize',19)

ylabel('x, mm','FontSize',19)

zlabel('T, ^oC','FontSize',19)

grid on

xlim([min(y.*1e3) max(y.*1e3)])

ylim([min(x.*1e3) max(x.*1e3)])

zlim ([Tmin Tmax])

colormap([0 0 0])

clc

print(gcf,'-djpeg',NameG)

clc

t

ct

pause(1e-3)

end

T=TT; % переход к следующей итерации

end

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

Соседние файлы в папке 2lab