1D Heat equation in Matlab with heat Flux at one side
13 次查看(过去 30 天)
显示 更早的评论
I’m solving the 1D heat equation with Matlab pdepe function.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1038765/image.png)
The geometry is a steel rod of 1m length, which has a constant temperature on the right side and a constant flux on the other side.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1038770/image.png)
I’m struggeling a little bit with specifying the value of p and q.
Here is the code I use:
function [c,f,s] = heatequation(x,t,u,dudx)
rho=7850; % density
cp=420; % heat capacity
lambda=40;% conductivity
c = rho*cp;
f = lambda*dudx;
s = 0;
end
function u0 = ic(x)
Tini=300; % initial temperature at t= 0 s
u0 = Tini;
end
function [pl,ql,pr,qr] = bc(xl,ul,xr,ur,t)
pl = 0;
ql = 10; % Flux at the left end = 10 W/m2
pr = ur-300; % Temperature at the rigth end = 300 K
qr = 0
end
m = 0;
sol = pdepe(m,@heatequation,@ic,@bc,x,t);
I'm not sure if I wrote the BC's correct? The notation with p and q is still confusing
回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!