How do I create and place a non-uniform heat flux (Gaussian) on a cylinder with a center hole?
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Michael Tilton
am 2 Mai 2024
Kommentiert: Michael Tilton
am 2 Mai 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 Kommentare
Akzeptierte Antwort
Ravi Kumar
am 2 Mai 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
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!