Plotting a Sum of Series

1 次查看(过去 30 天)
Ítalo Barros
Ítalo Barros 2017-12-2
I have to plot these equations about the heat in a aluminium bar:
But for some reason, my graph of u(x,t)(in this case u on the code) is showing something different (i think the correct would be a exponential). Can someone review my code and see if is there any mistakes? Obs: n is the value where sin=0, for example sin(n*pi)=0 like in pi, 2pi, 3pi...
clc
clear all
syms x k t n
for n=1:1:20
cn=(100/(n*pi))*(cos(pi*x/4)-cos(3*pi*x/4));
for t=0:5
num=(cos(pi*x/4)-cos(3*pi*x/4));
t1=exp((-(k^2)*(pi^2)*t)/1600);
t2=sin(k*pi*x/40);
S1=symsum((num*t1*t2),k,1,inf);
u=((100/pi)*S1);
end
end
fplot(cn)
figure
fplot(u)
  1 个评论
David Goodmanson
David Goodmanson 2017-12-2
Hi Italo,
One thing for sure, the integral in the top equation is incorrect. I believe it should be
(100/(n*pi))*( cos(n*pi/4) - cos(3*n*pi/4) )
and a sign of something wrong was that the c_n can't depend on x.
Could you state the actual problem, in particular the length of the bar?

请先登录,再进行评论。

回答(2 个)

Roger Stafford
Roger Stafford 2017-12-2
You have forgotten to divide by k in calculating 'u' within your for-loop. You should have:
S1=symsum((num/k*t1*t2),k,1,inf);
  1 个评论
Ítalo Barros
Ítalo Barros 2017-12-2
Tkx for the answer! But, even putting the 'k', the result is really strange:

请先登录,再进行评论。


Vidya Bhadgaonkar
Vidya Bhadgaonkar 2019-10-10
I think you have one mistake in
t1=exp((-(k^2)*(pi^2)*t)/1600);
write it as
t1=exp((-(n^2)*(pi^2)*t)/1600);

类别

Help CenterFile Exchange 中查找有关 Thermal Analysis 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by