pde themral model, thermally connect two cells
10 次查看(过去 30 天)
显示 更早的评论
Hi,
This question is related to one of my other quetion but would like to ask it separately.
I have this thermal model in pde. Two cell regions, no gpa between them. After assign with different conductivities (not sure if that's relevant), I solved it (code and model attached) and the result is shown below.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/212481/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/212482/image.png)
As you can see, cell 2 was thermally isolated from cell 1 (where heat flux and BC were assigned).
Any reason why matlab didn't see them as thermally connected? I check other examples on the web like this one (openExample('pde/FindThermalConductivityForCellsOf3DGeometryExample'). And no specific operation was necessary to connect the regions.
And it would be great if I can put a thermal resistance [C/(W*m2)] between them.
My code:
% Import the geometry
thermalmodel = createpde('thermal','steadystate');
importGeometry(thermalmodel,'PCBA_Dummy_PRT_2.stl');
pdegplot(thermalmodel, 'FaceAlpha',0.5)
% Mesh the Geometry and Determine the Part size
generateMesh(thermalmodel,'Hmax',.09);
thermalmodel.Mesh
% Show cell
pdegplot(thermalmodel,'FaceAlpha',0.25,'CellLabel','on')
title('Geometry with Cell Labels')
% Show face
pdegplot(thermalmodel,'FaceLabels','on','FaceAlpha',0.5);
title('Geometry with Cell Labels')
xLength = max(thermalmodel.Mesh.Nodes(1,:)) - min(thermalmodel.Mesh.Nodes(1,:))
yLength = max(thermalmodel.Mesh.Nodes(2,:)) - min(thermalmodel.Mesh.Nodes(2,:))
zLength = max(thermalmodel.Mesh.Nodes(3,:)) - min(thermalmodel.Mesh.Nodes(3,:))
% Setup the Material Properties
u = symunit;
tc = vpa(52) *u.Watt/(u.m*u.Kelvin)
tc = rewrite(tc,u.W/(u.in*u.Kelvin))
tc = double(separateUnits(tc));
thermalProperties(thermalmodel,'Cell',1,'ThermalConductivity',tc);
thermalProperties(thermalmodel,'Cell',2,'ThermalConductivity',tc*2);
% Show thermal properties
mpa = findThermalProperties(thermalmodel.MaterialProperties,'Cell',1:2);
Cell_1 = mpa(1)
Cell_2 = mpa(2)
% Set up the Boundary Conditions
htc = vpa(25) *u.Watt/(u.m^2*u.Kelvin);
htc = rewrite(htc,u.Watt/(u.in^2*u.Kelvin));
htc = double(separateUnits(htc));
thermalBC(thermalmodel,'Face',2,'Temperature',55);
thermalBC(thermalmodel,'Face',4,'Temperature',55);
thermalBC(thermalmodel,'Face',6,'HeatFlux',25);
% Solve the FEA analysis
tic
results = solve(thermalmodel);
time = toc
t_max = max(results.Temperature)
pdeplot3D(thermalmodel,'ColorMapData',results.Temperature)
title('Temperature in K')
colorbar
Thank you!
Derek
0 个评论
回答(1 个)
Ravi Kumar
2019-4-8
Hi Derek,
Multidomains in the imported geometry, using STL file, are not recoganized as connected cells of the same geometry. If the cells are concentric, then you can use multicuboid to create such a geometry.
Regards,
Ravi
2 个评论
LORIS VALENTI
2022-9-27
Ehi...I have your same problem. Did you find a solution for the problem? Thanks a lot!
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!