Mesh problems for large aspect ratio object
Show older comments
I want to produce a thermal model for a thin film heater. The thin film is 1.11 cm wide and I have modeled it as being 1 um thick [which is thicker than it actually is], so the aspect ratio is approximately 10,000 to 1. When I try to run the code below it comes back with this message:
Unable to compute geometry-mesh associativity because the geometry is invalid or the mesh size is insufficient for capturing all geometric details. Try adjusting Hmax and Hmin.
I have tried to play around with Hmax and Hmin but I don't know what the guiding principles should be. Any help would be appreciated.
thank you
thermalmodel = createpde("thermal","steadystate");
% Define the geometry components
Rtfh2 = [3,4,[-1.19,1.19,1.19,-1.19,-0.166,-0.166,-0.165,-0.165]/1000]'; % Active heating volume
% Combine the geometry data
gdm = [Rtfh2];
ns = char('Rtfh2');
g = decsg(gdm, 'Rtfh2', ns');
% Create geometry from edges
geometryFromEdges(thermalmodel, g);
% Create a larger figure window
figure('Position', [100, 100, 1200, 800]);
% Plot with edge labels
pdegplot(thermalmodel, "EdgeLabels", "on", "FaceLabels", "on");
% Adjust limits and aspect ratio for better visibility
% Smaller region around thin film heater
%xlim([-0.007 0.007]);
xlim([-0.002 0.002]);
ylim([-0.00017 -0.00016])
daspect([500 1 1]);
% Properties assigned assuming corresponding order as per above
% Thin film heater- metal- use SS properties
thermalProperties(thermalmodel,"ThermalConductivity",14);
% Boundary conditions
% Edge 1 is bottom edge of active thin film heater- adiabatic
thermalBC(thermalmodel,"Edge",1,"HeatFlux",0);
% Edge 2 is right side of active thin film heater- convection to ambient
thermalBC(thermalmodel,"Edge",2,...
"ConvectionCoefficient",hambient,...
"AmbientTemperature",20)
% Edge 3 is top edge of active then film heater- adiabatic
thermalBC(thermalmodel,"Edge",3,"HeatFlux",0);
% Edge 4 is left side of active thin film heater- convection to ambient
thermalBC(thermalmodel,"Edge",4,...
"ConvectionCoefficient",hambient,...
"AmbientTemperature",20)
Heatgenerationpervolumerate= 1.7e11;
Volume= (2.38e-3)*(1.11e-2)*(0.001e-3)
generateMesh(thermalmodel);
figure
%pdemesh(thermalmodel)
pdemesh(thermalmodel,'Hmax',1e-7);
title("Mesh with Quadratic Triangular Elements")
Accepted Answer
More Answers (0)
Categories
Find more on Heat Transfer in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!