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

Fallunterscheidung

 

noppoel
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 52
Anmeldedatum: 27.10.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.03.2010, 13:31     Titel: Fallunterscheidung
  Antworten mit Zitat      
Hallo,

vielleicht kann mir jemand weiterhelfen. Mein folgender Code interpoliert mir meine Windgeschwindigkeiten mit Hilfe von TriScatteredInterp.
Da einige punkte ausserhalb der aufgespannten Fläche liegen erhlaten ich dafür ein NaN. Die betroffenen Werte finde ich über tri und T.

Jetz will ich eine Fallunterscheidung einfügen die für Fall 1: Punkt innerhalb der Fläche eine lineare Interpolation ausführt oder Fall2: Punkt liegt ausserhalb der Grundfläche eine 'nearest' Interpolation durchführt.
am sChluss sollen die Werte aus beiden Interpolationen in eine matrix gespeichert werden.
Code:

% The interpolation creates a delaunay triangulation between the different
% wind measuring stations. With the wind speeds as a z-axis a convex hull
% is set up. The wind speeds are then linearly interpolated to the farm
% latitude an longitude.
% If wind farm is outside the meshed station grid 'nearest neighbour'
% interpolation is used.
%
% Output:
% w_avg_int: Interpolated wind speed
%

%Creates a zero matrix for length farm with size w_avg
w_avg_int = zeros(length(farm),size(w_avg,1));

%File Conversion of Station latitude and longitude
xx = struct2cell(station);
xx = cell2mat(squeeze(xx(4:5,1,:))');

%Sets up the triangulation area based on Station
tri = delaunay(xx(:,2),xx(:,1));
T = tsearch(xx(:,2),xx(:,1),tri,[farm.lon]',[farm.lat]');

for i = 1:size(w_avg,1)
    F = TriScatteredInterp(xx(:,2),xx(:,1),(w_avg((i,j),:))','nearest');
    w_avg_int(:,(i,j)) = F([farm.lon]',[farm.lat]');
    end
end
Private Nachricht senden Benutzer-Profile anzeigen


noppoel
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 52
Anmeldedatum: 27.10.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.03.2010, 13:47     Titel:
  Antworten mit Zitat      
Sorry- hier der richtige Code:

Code:

% The interpolation creates a delaunay triangulation between the different
% wind measuring stations. With the wind speeds as a z-axis a convex hull
% is set up. The wind speeds are then linearly interpolated to the farm
% latitude an longitude.
% If wind farm is outside the meshed station grid 'nearest neighbour'
% interpolation is used.
%
% Output:
% w_avg_int: Interpolated wind speed
%

%Creates a zero matrix for length farm with size w_avg
w_avg_int = zeros(length(farm),size(w_avg,1));

%File Conversion of Station latitude and longitude
xx = struct2cell(station);
xx = cell2mat(squeeze(xx(4:5,1,:))');

%Sets up the triangulation area based on Station
tri = delaunay(xx(:,2),xx(:,1));
T = tsearch(xx(:,2),xx(:,1),tri,[farm.lon]',[farm.lat]');

for i = 1:size(w_avg,1)
        F = TriScatteredInterp(xx(:,2),xx(:,1),(w_avg((i,:))','nearest');
        w_avg_int(:,(i,j)) = F([farm.lon]',[farm.lat]');
end


w_avg_int = w_avg_int';
 
Private Nachricht senden Benutzer-Profile anzeigen
 
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 - 2025 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.