Clear Filters
Clear Filters

Howextract results From pdeplot3D to plotthe temperature variation in XY Plan

2 views (last 30 days)
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');

Answers (1)

darova
darova on 11 Sep 2021
You are looking for pdecont

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!