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 und Auswertung komplizierter Funktion

 

niels

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.11.2013, 13:53     Titel: Interpolation und Auswertung komplizierter Funktion
  Antworten mit Zitat      
Hallo Leute, ich habe ein Problem bei dem ich nicht weiterkomme. Ich versuche die Lösung einer Gleichung greifbar zu machen, da ich mich für die Steigung ihrer Lösungsäste interesiere. Mein bester Ansatz ist bis jetzt das Lösen der Gleichung für verschiedene Punkte und das anschließende Fitten der einzelnen Lösungsäste, um handhabbare Funktionen zu erhalten. Mit dem polyfit Befehl wäre dies kein Problem, nur kommt der Polyfit schelcht mit der Divergenz des untersten Astes klar. Der einzig vertretbare Fit ist hier die Splineinterpolation. Meine konkrete Frage wäre nun, kennt jemand eine Möglichkeit aus dem Splinefit eine Funktion zu erhalten mit der man weiterrechnen kann (differenzieren, intergrieren)?

Code:
clear all;
close all;
clc;
syms E;
counter=0;
counterb=0;
hold on;


for b=1.1:2.0:10.1
counter=0;
counterb=counterb+1;

% evaluate equation

    for a=0.1:0.05:3
       
        counter=counter+1;
        s=vpasolve(sqrt(2)*gamma(-E/2+3/4)/(gamma(-E/2+1/4))-1/a, E, b);
        mat(counter,1)=a;
        mat(counter,2)=s;
   
    end
   
% Fit solutions with splines

xx=linspace(0.1,3,2000);
pp = spline(mat(:,1),mat(:,2));


% Plot solutions + splines
plot(mat(:,1),mat(:,2),'+',xx,ppval(pp,xx))

axis([0,3,-40,24]);


 
end


Harald
Forum-Meister

Forum-Meister


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

spricht etwas dagegen, direkt diff bzw. trapz zu verwenden? Dadurch, dass man künstlich Datenpunkte erzeugt, werden die Ergebnisse ja schließlich nicht genauer - eher im Gegenteil.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.11.2013, 08:32     Titel:
  Antworten mit Zitat      
Hey Harald, schonmal danke für die Idee!

Das Problem wenn ich direkt nach E ableite ist, dass mein a als konstante betrachtet wird und einfach "wegfällt". Meine Gleichung hat für jedes a unendlich viele diskrete Lösungen in E, ich muss also erstmal die einzelnen "Lösungäste" extrahieren um klassische Funktionen E(a) zu erhalten, die ich dann wirklich ableiten kann. Deswegen erzeuge ich die Datenpunkte, ich bin nicht sicher ob es einen direkteren Weg gebt.

Beste Grüße, Niels
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.11.2013, 21:21     Titel:
  Antworten mit Zitat      
Hallo,

wenn du Datenpunkte auf einem Lösungsast hast bzw. errechnest, dann kannst du doch mit diesen Datenpunkten auch ableiten bzw. integrieren?

Grüße,
Harald
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.