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

stetige Fläche durch Messpunkte

 

AlC
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 21.10.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.12.2013, 14:11     Titel: stetige Fläche durch Messpunkte
  Antworten mit Zitat      
Hallo,

ich habe für verschiedene 3 Temperaturen T und 4 Anregungsfrequenzen f 12 Messwerte MW erhalten. Die liegen nun diskret im Raum und ich würde nun gerne ein stetige Fläche (also ohne Knicke) durch diese Punkte legen. Ich habe es bereits mit einem Ansatz à la MW= c + a1*T+a2*f+a3*T*f..... versucht.

Allerdings liefert mir dieser Ansatz eine nahezu singuläre Matrix, mit der ich nicht weiterarbeiten kann.

Wie würdet Ihr vorgehen? Ich hätte gedacht, dass das eine Anwendung ist, die recht häufig gebraucht wird, ich konte aber nichts zu dem Thema finden.

Danke für eure Hilfe!

Edit: eine angenäherte Lösung (Methode der kleinsten Quadrate?) wäre auch in Ordnung.
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 09.12.2013, 14:24     Titel: Re: stetige Fläche durch Messpunkte
  Antworten mit Zitat      
Hallo AlC,

Zitat:
Ich habe es bereits mit einem Ansatz à la MW= c + a1*T+a2*f+a3*T*f..... versucht.
Allerdings liefert mir dieser Ansatz eine nahezu singuläre Matrix, mit der ich nicht weiterarbeiten kann.

Bitte schreibe konkret, was Du versucht hast. Auf eine solche ungefähre Beschreibung kann man nicht antworten oder einen Verbesserungsvorschlag machen.

Suchst Du nach dem POLYFIT-Befehl?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
AlC
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 21.10.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.12.2013, 18:57     Titel:
  Antworten mit Zitat      
Hey Jan,

danke für deine Antwort.

Hier mein Code (in leicht angepasster Form)

Code:
% Gleichung der Form:
% c+a_1*T+a_2*f+a_3*T*f+a_4*T^2+a_5*f^2+a_6*T*f^2+a_7*T^2*f+a_8*T^2*f^2+a_9*f^3+a_10*T^3+a_11*f^4=MW
% in Matrix/Vektorschreibweise: Koeffizientenvektor*Matrix_der_Ansatzfunktionen=Messwertevektor

temp=[45 65 85]; % Versuche durchgeführt bei 45,65,85 °C
freq=[0.1 1 5 10]; % Versuche durchgeführt bei 0.1, 1, 5, 10 Hz

% Messwertevektor(1) zu temp1&freq1, Messwertevektor(2) zu
% temp1&freq2,...., Messwertevektor(11) zu temp3&freq3, Messwertevektor(12) zu temp3&freq4,


Messwertevektor=[3.1,0.47,0.134,0.07,2.42,0.46,0.17,0.09,1.6,0.3,0.12,0.06]*10^4;


Matrix_der_Ansatzfunktionen=zeros(length(Messwertevektor));

spalte=0;

for nr_temp=1:3
    for nr_freq =1:4
        spalte=spalte+1;
       
        t=temp(nr_temp);
        f=freq(nr_freq);
       
        Matrix_der_Ansatzfunktionen(1,k)=1;
        Matrix_der_Ansatzfunktionen(2,k)=t;
        Matrix_der_Ansatzfunktionen(3,k)=f;
        Matrix_der_Ansatzfunktionen(4,k)=t*f;
        Matrix_der_Ansatzfunktionen(5,k)=t^2;
        Matrix_der_Ansatzfunktionen(6,k)=f^2;
        Matrix_der_Ansatzfunktionen(7,k)=t*f^2;
        Matrix_der_Ansatzfunktionen(8,k)=t^2*f;
        Matrix_der_Ansatzfunktionen(9,k)=t^2*f^2;
        Matrix_der_Ansatzfunktionen(10,k)=f^3;
        Matrix_der_Ansatzfunktionen(11,k)=t^3;
        Matrix_der_Ansatzfunktionen(12,k)=f^4;
       
    end
end

% Koeffizientenvektor*Matrix_der_Ansatzfunktionen=Messwertevektor

Koeffizientenvektor=Messwertevektor/(Matrix_der_Ansatzfunktionen);
 


Polyfit legt ja nur eine Funktion durch Werte, die nur von einer Variable abhängig sind (z.B. nur die Frequenz). Ich möchte aber eine Funktion die von 2 Variablen abhängig ist. Das ist doch mit Polyfit nicht möglich, oder?

Viele Grüße

Alex
Private Nachricht senden Benutzer-Profile anzeigen
 
AlC
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 21.10.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.12.2013, 13:03     Titel:
  Antworten mit Zitat      
Hat sich erledigt. Ich mache das mit der Curve Fitting Toolbox.
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.