How to plot temperature along a defined line within a 2D temperature field

15 Ansichten (letzte 30 Tage)
I can obtain 2D temperature field solutions such as the steady state example below. I would like to be able to plot the temperature along a defined line within this domain. For example, how can I produce a plot of T as a function of x for Y= 0 from X= -15 to X= 0 or for X= -12 from Y= -15 to Y= +15? I would also like to be able to do this at a defined time for a transient problem. I am aware of the slice command but I just want a simple T vs X or Y plot. Thanks
thermalmodel = createpde("thermal","steadystate");
R2= [3,4,-15,15,15,-15,-15,-15,15,15]';
geom=[R2]
g=decsg(geom)
model= createpde
geometryFromEdges(thermalmodel,g);
pdegplot(thermalmodel,"EdgeLabels","on")
xlim([-20 20])
axis equal
thermalProperties(thermalmodel,"ThermalConductivity",1);
thermalBC(thermalmodel,"Edge",1,"Temperature",100);
thermalBC(thermalmodel,"Edge",2,"Temperature",100);
thermalBC(thermalmodel,"Edge",3,"Temperature",100);
thermalBC(thermalmodel,"Edge",4,"Temperature",400);
generateMesh(thermalmodel);
figure
pdemesh(thermalmodel)
title("Mesh with Quadratic Triangular Elements")
thermalresults = solve(thermalmodel)
title("Temperature In The Plate, Steady State Solution")
xlabel("X-coordinate, meters")
ylabel("Y-coordinate, meters")
axis equal

Akzeptierte Antwort

Torsten
Torsten am 2 Sep. 2024
  4 Kommentare
John McGrath
John McGrath am 2 Sep. 2024
Thorsten
This is fantastic! Thanks so much for your help.
Is there an easy way to export the T vs x or T vs Y data as a file?
john
Torsten
Torsten am 2 Sep. 2024
Bearbeitet: Torsten am 2 Sep. 2024
Define x, y and uxy as output arguments of the function "plotAlongLine" and write them to file.
Usually, "fprintf" is used for this:
If you don't know how to proceed, I recommend MATLAB Onramp, an introductory course free-of-costs to learn the basics of the language:

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Image Analyst
Image Analyst am 2 Sep. 2024
I know you already got an answer that you've accepted but I just thought I'd mention improfile. It can give you a profile of values in a matrix from any point to any other point.

Kategorien

Mehr zu Programming finden Sie in Help Center und File Exchange

Produkte


Version

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by