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

Interpolation von Werten bei nicht uniformen Gitter

 

Gerti

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.04.2022, 14:39     Titel: Interpolation von Werten bei nicht uniformen Gitter
  Antworten mit Zitat      
Hallo zusammen,

ich hab aus einer Simulation eine Inputdatei (data.mat) mit x,y, und z-Koordinaten sowie einer Variablen. Die y-Koordinate ist konstant, weshalb ich gerne einen Surface-Plot mit x,z als Koordinaten und der Variablen als Wert haben möchte.
Im Teil hinter dem V liegen sehr, sehr viele Datenpunkte und weiter weg nur noch wenige.

Bei Möglichkeit 1 wollte ich es ganz einfach mit einem scatter-Befehl machen, bei Möglichkeit 2 über eine Interpolation auf ein rechteckiges Gitter.

Beide Male treten Sprünge im Bild auf, die insbesondere im schwarz umformten Bereich nicht sein sollten. Wie könnte ich es schaffen, dass die Interpolation glatt wird?

Code:

figure
scatter(E(:,1),E(:,3),[],E(:,4),'filled');
export = E;

Solidx = export(:,1);
Solidy = export(:,3);
SolidTemperature = export(:,4);


%% Möglichkeit 1:
figure
scatter(Solidx,Solidy,[],SolidTemperature,'filled');
colormap(cmap)
colorbar
shading interp
caxis([310 325])

%% Möglichkeit 2:
%% Grid erstellen
dxdy = 0.000393447;
[xq,yq] = meshgrid(0.555:dxdy:0.725, -0.06:dxdy:0.06);
OberflTemperature = griddata(Solidx,Solidy,SolidTemperature,xq,yq);
cmap = jet(256);

figure
mesh(xq,yq,OberflTemperature(:,:,:))
view(2)
colormap(cmap)
colorbar
caxis([310 325])
xlabel('$x-Richtung$ / $m$','interpreter','latex')
ylabel('$z-Richtung$ / $m$','interpreter','latex')
xlim([0.555 0.725])

 


Viele Grüße und besten Dank
Gerti

data.mat
 Beschreibung:
Input

Download
 Dateiname:  data.mat
 Dateigröße:  265.84 KB
 Heruntergeladen:  1517 mal
2.jpg
 Beschreibung:
griddata

Download
 Dateiname:  2.jpg
 Dateigröße:  28.45 KB
 Heruntergeladen:  238 mal
1_1.jpg
 Beschreibung:
scatter

Download
 Dateiname:  1_1.jpg
 Dateigröße:  157.8 KB
 Heruntergeladen:  240 mal


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 12.04.2022, 20:48     Titel:
  Antworten mit Zitat      
Hallo,

Interpolanten gehen ja durch die vorhandenen Werte. Wenn diese also Sprünge beinhalten, wird die Interpolante also immer auch die Sprünge abbilden.
Wenn es in erster Linie um die Optik geht, könnte man die interpolierten Daten glätten, z.B. mit filter2. Als H würde ich da ones(n)./n^2 nehmen mit ungeradem n. Wie groß n sein soll, müsste man ausprobieren.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Gerti

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.04.2022, 08:43     Titel:
  Antworten mit Zitat      
Hallo Harald,

das stimmt natürlich. Das mit der Filterung scheint zu funktionieren, da es mir tatsächlich hier nur um eine optische Nachkorrektur geht.

Besten Dank und viele Grüße
Gerti
 
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.