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, Супермодераторы



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

Сейчас этот форум просматривают: DariaRychenkova


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

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