2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Моделирование уравнения теплопроводности - Matlab
Сообщение19.10.2015, 17:33 
Аватара пользователя


26/09/13
648
Таджикистан
Здравствуйте. Помогите пожалуйста написать программа на MatLab, следующую задачу.
Уравнения теплопроводности решено с помощью ряд Фурье.
$$
u(x,t)=273+\dfrac{200}{\pi}\sum_{k=1}^{\infty}\dfrac{1}{2k-1}e^{-\left(\frac{\pi(2k-1)a}{l}\right)^2t}\sin\dfrac{(2k-1)\pi x}{l}. \eqno (1)
$$
Вычислить используя (1), значения температур в точках стержня $x=0, \quad \dfrac{l}{4}, \quad \dfrac{l}{2}, \quad \dfrac{3l}{4}, \quad l$ в моменты времени $ t=\dfrac{t_0}{2}, \qquad t_0, \quad 2t_0, \quad 10t_0$ где
$t_0=10$с, $a=1.14\cdot 10^{-4},$ $x_0=\dfrac{l}{2},$ $l=0.1$.
Код программа
Используется синтаксис Matlab M
clc, clear all, close all
syms k x t
l = 0.075; % тут я менял (0.025, 0.05, 0.075) но не получается, ответ тот же
a = 1.14e-04;
u = @(x,t)(273+200/pi*(symsum((1/(2*k-1)*exp((-((pi*(2*k-1)*a)/l)^2)*t)*sin((2*k-1)*pi*x/l)),k, 1, Inf)));
t0 = 10;
x = [0, l/4, l/2, 3*l/4, l];
t = [t0/2, t0, 2*t0, 10*t0];
vpa(u(x(2),t(1)))
 


Как можно получит все варианты как таблицу.

Не как не могу получит следующий ответы:
Изображение

 Профиль  
                  
 
 Re: Моделирование уравнения теплопроводности - Matlab
Сообщение19.10.2015, 23:10 


21/03/10
43
Суммируйте численно по $k$. Не до бесконечности, а, например, до 100. Что-то вроде:
Код:
u_k = @(k,x,t) 1./(2*k-1).*exp(-(pi*(2*k-1)*a/l).^2.*t).*sin((2*k-1)*pi.*x/l);

x = [0 l/4 l/2 3*l/4 l];
t = [t0/2 t0 2*t0 10*t0];
k = 1:100;

[X T K] = meshgrid(x,t,k);

u = 273 + 200/pi*sum(u_k(K,X,T),3);

У вас, похоже, ошибки в формуле (1), т.к. при внутренних $x$ результат не сходится с вашей таблицей.

 Профиль  
                  
 
 Re: Моделирование уравнения теплопроводности - Matlab
Сообщение20.10.2015, 07:47 
Аватара пользователя


26/09/13
648
Таджикистан
vasya321
Вроде получается вот код
код: [ скачать ] [ спрятать ]
Используется синтаксис Matlab M
syms k
 
l = 0.1; a = 1.14e-04;
 
u = @(x,t)(273+200/pi*(symsum((1/(2*k-1)*exp((-((pi*(2*k-1)*a)/l)^2)*t)*sin((2*k-1)*pi*x/l)),k, 1, Inf)));
 
t0 = 10;
t = [t0/2, t0, 2*t0, 10*t0];
x = [0, l/4, l/2, 3*l/4, l];
 
for i = 1:length(x)
    for j = 1:length(t)
        res(j,i) = vpa(u(x(i),t(j)*10000),7);
    end;
end;
vpa(res,7)
 


Но вопрос вот
Код:
t(j)*10000
тут умножена 10000 не знаю почему

-- 20.10.2015, 09:48 --

Хочу добавит сам файл PDF но не знаю как?

 Профиль  
                  
 
 Re: Моделирование уравнения теплопроводности - Matlab
Сообщение20.10.2015, 13:33 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
Maik2013 в сообщении #1064617 писал(а):
Хочу добавит сам файл PDF но не знаю как?
Загрузите его на сторонний файлообменник, а здесь приведите ссылочку для скачивания. Можете использовать RGhost, например.

 Профиль  
                  
 
 Re: Моделирование уравнения теплопроводности - Matlab
Сообщение20.10.2015, 19:33 
Аватара пользователя


26/09/13
648
Таджикистан
Aritaborian
Спасибо.

http://rghost.ru/69dKdhXHr

 Профиль  
                  
 
 Re: Моделирование уравнения теплопроводности - Matlab
Сообщение20.10.2015, 21:45 


21/03/10
43
Проверил формулу (1) — действительно верная. Поведение распределения температуры в стержне с течением времени — физичное. Параметры материала стержня (медь) взяты верно. Похоже, что авторы неправильно указали $t_0$. При $t_0=24$ часа результаты соответствуют приведенным в вашей таблице. Похоже, что стержень так медленно остывает т.к. не учитывается теплоотвод с боков стержня. Кроме того, на поверхности стержень остывает быстро (железную сковородку можно трогать руками минут через 5 после того, как она стояла на плите).

 Профиль  
                  
 
 Re: Моделирование уравнения теплопроводности - Matlab
Сообщение21.10.2015, 08:51 
Аватара пользователя


26/09/13
648
Таджикистан
vasya321
Спасибо.
Очень радовался!

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group