WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Schnitte darstellen mit pdeplot3d

 

SteffenB
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 03.11.22
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.11.2022, 16:45     Titel: Schnitte darstellen mit pdeplot3d
  Antworten mit Zitat      
Hallo,

ich versuche mich gerade an der der Lösung der 3D Wärmeleitungsgleichung mit einem dem in Matlab implementierten pde solver. Das Skript sieht folgendermaßen aus:

Code:
clc
clear all
close all
% Create a model object.
model = createpde('thermal','transient');
% Create a cuboid geometry and assign it to the model.
L=0.1;
H=0.1;
B=0.1;
gm = multicuboid(L,B,H);
model.Geometry = gm;
generateMesh(model);
%Plot the geometry with face labes displayed.
f = figure(1);
fontSize = 22;
f.Position(3:4) = [540 420];
subplot(1,2,1)
pdegplot(model,'FaceLabels','on')
hold on
%Define thermal material properties.
Cp = 920;
rho = 2700;
k = 210;
thermalProperties(model,'ThermalConductivity',k,'SpecificHeat',Cp,'MassDensity',rho)
%Define boundary conditions
thermalBC(model,'Face',1,'Temperature',100) % Face 1 = unten
thermalBC(model,'Face',2,'Temperature',300) % Face 2 = oben
thermalBC(model,'Face',3,'Temperature',200) % Face 3 = positive x Richtung
thermalBC(model,'Face',4,'Temperature',200) % Face 4 = positive y Richtung
thermalBC(model,'Face',5,'Temperature',200) % Face 5 = negative x Richtung
thermalBC(model,'Face',6,'Temperature',200) % Face 6 = negative y Richtung
% Set IC as 25 and solve for from 0 to 300 time units.
thermalIC(model,25)
tlist = 0:100:300;
R = solve(model,tlist)
subplot(1,2,2)
hold on
pdeplot3D(model,'ColorMapData',R.Temperature(:,4))


Das funktioniert soweit auch. Ich würde jetzt gerne die Temperatur in Schnitten darstellen etwa so wie in den angehängten Bildern.

bei der Darstellung von Schnitten bzw. contourplots von Schnittebenen bin ich leider nicht weitergekommen. Vielleicht hat ja im Forum jemand eine Idee.

VG
Steffen

c.png
 Beschreibung:

Download
 Dateiname:  c.png
 Dateigröße:  81.45 KB
 Heruntergeladen:  161 mal
z.png
 Beschreibung:

Download
 Dateiname:  z.png
 Dateigröße:  89.42 KB
 Heruntergeladen:  160 mal
y.png
 Beschreibung:

Download
 Dateiname:  y.png
 Dateigröße:  100.74 KB
 Heruntergeladen:  145 mal
Private Nachricht senden Benutzer-Profile anzeigen


Rickpat

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.12.2022, 13:40     Titel:
  Antworten mit Zitat      
Hallo,

ich hatte das so gelöst....
Code:
[XXX,YYY,ZZZ] = meshgrid(-0.25:0.01:0.25, -0.1:0.01:0.35, 0.0:0.01:0.5);


V = interpolateTemperature(R,XXX,YYY,ZZZ,600);
V = reshape(V,size(XXX));


figure
colormap jet
slice(XXX,YYY,ZZZ,V,[],0.15:0.02:0.15,[])

xlabel('x')
ylabel('y')
zlabel('z')
colorbar
view(-11,14)
axis equal
 
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.