
3D conduction equation in cylinder
29 views (last 30 days)
Show older comments
I want know if there is a way to solve the PDE for diffusion in a cylinder with 0.3 metre radius and 1.6 metre height. I am trying to create a cylindrical coordinate with this code.
%cylinder
% n = linspace(-pi,pi,30);
% m = linspace(0,1.6,20);
% [theta,z] = meshgrid(n,m);
% r = 1 .* cos(theta);
% [X,Y,Z] = pol2cart(theta,r,z);
% surf(X,Y,Z)
% axis equal
But this one I can't define the radius.

This is the equation that I have to work with (Unsteady state - 3d) I would like to work with with the discretization of partial differential equations. How I can solve this problem with Matlab? Thank you
0 Comments
Answers (2)
Ravi Kumar
on 10 Apr 2018
You can solve the 3-D conduction equation on a cylindrical geometry using the thermal model workflow in PDE Toolbox. Here is an example which you can modify to suite your problem. Note that PDE Toolbox solves heat conduction equation in Cartesian coordinates, the results will be same as for the equation in cylindrical coordinates as you have written.
% Create a model object.
model = createpde('thermal','transient');
% Create a cylinder geometry and assign it to the model.
gm = multicylinder(0.3,1.6);
model.Geometry = gm;
generateMesh(model);
%Plot the geometry with face labes displayed.
figure
pdegplot(model,'FaceLabels','on')
%Define thermal material properties.
Cp = 920;
rho = 2700;
k = 210;
thermalProperties(model,'ThermalConductivity',k,'SpecificHeat',Cp,'MassDensity',rho)
%Define boundary conditions
thermalBC(model,'Face',1,'Temperature',100)
thermalBC(model,'Face',2,'Temperature',200)
% Set IC as 25 and solve for from 0 to 300 time units.
thermalIC(model,25)
tlist = 0:100:300;
R = solve(model,tlist);
figure
pdeplot3D(model,'ColorMapData',R.Temperature(:,4))

11 Comments
Ravi Kumar
on 16 Nov 2020
OK. Yes, you need a newer version of MATLAB this feature did not exist in R2015b.
Kyrillos Atallah
on 9 Jun 2020
Ravi Kumar , i'm trying to solve the same Problem with T=200 C° at a Point on the face (not all the Face, just a Point in the middel).
my you help me?
your help would be appreicaited
0 Comments
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!