How do I create and place a non-uniform heat flux (Gaussian) on a cylinder with a center hole?
4 views (last 30 days)
Show older comments
Michael Tilton
on 2 May 2024
Commented: Michael Tilton
on 2 May 2024
I'm trying to add a non-uniform heat flux to my simple model of a cylinder with a center hole. I know I need to create a function that describes the heat flux (Gaussian) but not sure how to do that in the context of my model. I believe the function can be applied as a thermalBC to Face 2 as shown below.
T_initial = 20;
t_end = 100;
model=createpde('thermal','transient');
geo = multicylcinder([.3,2],.2,'void',[1,0]);
modelGeometry = geo;
pdegplot(model,'FaceLabels',on);
thermalProperties(model,'ThermalConductivity',4,'MassDensity',210,'SpecificHeat',73);
thermalIC(model,T_initial);
% Heat Flux Function
% ------------------
% function Qflux = @nonUniformHeatFlux
% ???
% ???
% ???
% end
thermalBC(model,'Face',1,'Temperature',20);
thermalBC(model,'Face',2,'HeatFlux',@nonUniformHeatFlux)
generateMesh(model)
pdemesh(model)
tlist = 0:10:t_end
modelresults = solve(model, tlist)
end
0 Comments
Accepted Answer
Ravi Kumar
on 2 May 2024
Hi Michael,
Please take look at this example:
Specifically, heatFluxSteady or heatFluxTimeDependent at the end of the example function might help you figure out the details you are looking for.
Regards,
Ravi
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!