Thermal deflection of beam due to temperature gradient
16 次查看(过去 30 天)
显示 更早的评论
Hi,
I am trying to simulate the deformation of a beam caused by thermal load due to a temperature gradient between upper and lower surface. The beam has fixed supports at the very left and right surface.
Questions I have:
- Why does the plot of the deformed shape not show a bending of the beam in z direction? The beam is supposed to bend to the warmer surface side.
- What exactly is the purpose of the "reference temperature" that is necessary to run the code. The results depend heavily on the reference temperature and not really on the temperature gradient that I set between upper and lower surface. Why?
- How can I show the deformed shape in only x, y or z direction?
Here is the code:
% Create thermal model for PDE toolbox
thermalmodel = createpde("thermal");
L = 1500/1000; % m
W = 10/1000; % m
H = 100/1000; % m
% gm = multicuboid(L,W,[H,H],'Zoffset',[0,H]);
gm = multicuboid(L,W,H);
thermalmodel.Geometry = gm;
% Mesh geometry
mesh = generateMesh(thermalmodel,'Hmax',0.030);
% Material properties
thermalProperties(thermalmodel,'ThermalConductivity',247);
% Plot Thermal Geometry
figure
pdegplot(thermalmodel,'faceLabels','on','FaceAlpha',0.25)
% Boundary conditions
thermalBC(thermalmodel,'Face',1,'Temperature',63);
thermalBC(thermalmodel,'Face',2,'Temperature',60);
% Mesh the geometry and solve the problem
generateMesh(thermalmodel);
thermalresults = solve(thermalmodel);
pdeplot3D(thermalmodel,"ColorMapData",thermalresults.Temperature)
%% Structural Analysis with Thermal Load
structuralmodel = createpde('structural','static-solid');
structuralmodel.Geometry = gm;
structuralmodel.Mesh = generateMesh(structuralmodel,'Hmax',0.030);
% Specify Young's modulus, Poisson's ratio, and the coefficient of thermal expansion.
Ec = 7E10; % N/m^2
nuc = 0.334;
CTEc = 23.60E-6; % m/m-C
structuralProperties(structuralmodel,'Cell',1, ...
'YoungsModulus',Ec, ...
'PoissonsRatio',nuc, ...
'CTE',CTEc);
% Apply a fixed boundary condition on face 3,5
structuralBC(structuralmodel,'Face',3,'Constraint','fixed');
structuralBC(structuralmodel,'Face',5,'Constraint','fixed');
% Apply a body load using the transient thermal model solution. By default, structuralBodyLoad uses the solution for the last time step.
structuralBodyLoad(structuralmodel,'Temperature',thermalresults);
% Specify the reference temperature.
structuralmodel.ReferenceTemperature = 25;
% Solve the structural model.
thermalstressresults = solve(structuralmodel);
% Plot the deflected shape with the magnitude of displacement as the color map data.
figure()
pdeplot3D(structuralmodel,'ColorMapData',thermalstressresults.Displacement.Magnitude, ...
'Deformation',thermalstressresults.Displacement,...
"DeformationScaleFactor",10000)
0 个评论
回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!