Howextract results From pdeplot3D to plotthe temperature variation in XY Plan
2 views (last 30 days)
Show older comments
Hello,
I crated a stationnary thermal model for thermal problem. I ploted the temperature variation in 3D by using pdeplot3D(see figure 4).
Now, I would like plot the temperature variation as a function of X and Y for a fixed value of Z. For that, I used firstly the function interpolatetemperature to calculate the corresponding values of the temperature (figure 5).
Could you help me?
The script is here:
close all;
clear all;
% modèle géométrique
modelthermalst = createpde('thermal','steadystate');
Lc=0.02;Ep=0.003;
gm=multicuboid(Ep,Ep,Lc);
modelthermalst.Geometry=gm;
figure (1);
pdegplot(modelthermalst,'FaceLabels','on')
axis equal
title 'Block Geometry With Edge Labels Displayed'
% maillage
msh=generateMesh(modelthermalst,'Hmax',0.0005);
figure (2);
pdeplot3D(modelthermalst);
axis equal
title 'Block Geometry With Edge Labels Displayed'
% paramètres du cristal laser
rho = 4220; % mass density, kg/m^3
cp = 590; % specific heat, W-s/(kg-degree C)
% thermal conductivity constante, W/(m-Kelv) % K//c=5.23; kIc=5.1; //axe z
kxx=5.1;kyy=5.1;kzz=5.23;
k0=[kxx;kyy;kzz]; %anisothrop (orthotropic material)
k = @(region,state) k0.*(T0./state.u);% en fonction de Temperature
% thermalProperties(modelthermalst,'ThermalConductivity');
thermalProperties(modelthermalst,'ThermalConductivity',k0)
% conditions aux limites: scalaire
thermalBC(modelthermalst,'Face',[3,4,5,6],'Temperature',15+273);% la tepmpérature de l'eau de refroidissemet
thermalBC(modelthermalst,'Face',[1,2],'ConvectionCoefficient',10,'AmbientTemperature',27+273);
% Conditions initiales
% T0=27+273;
% thermalIC(modelthermalst,T0)
%Plaser=10;
rL=0.00045; % rayon mm
alpha=780; % coefficient d'absorption m-1
Plaser=10;% puissance laser (W)
mu=0.24;% charge thermique frationnelle sans unité (1-(808/1064))
z0=0;
x0=0;y0=0;
% ----------charge thermique
Q0 = alpha.*mu.*2.*Plaser./(3.14.*rL.^2);
Q= @(region,state)Q0*exp(-2*((x0- region.x).^2+(y0- region.y).^2)/rL.^2).*exp(-alpha*(region.z-z0));
internalHeatSource(modelthermalst,Q);
%--------- Résolution du système;
resultst = solve(modelthermalst);
T = resultst.Temperature;
figure (4)
pdeplot3D(modelthermalst,'ColorMapData',T);
%---------------
[X,Y] = meshgrid(linspace(-Ep/2,Ep/2,500));
Z = z0.*ones(size(X));
Tintrp11st = interpolateTemperature(resultst,X,Y,Z);
figure (5)
pdeplot(modelthermalst,'XYData',Tintrp11st,'ZData',Tintrp11st,'ColorMap','jet');
0 Comments
Answers (1)
See Also
Categories
Find more on Geometry and Mesh 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!