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

Aufstellen von mehreren Polynomfunktionen mit LGS

 

Samil
Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 20.08.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.08.2013, 23:16     Titel: Aufstellen von mehreren Polynomfunktionen mit LGS
  Antworten mit Zitat      
Hallo,

ich möchte mehrere Polynomfunktionen 3. Ordnung aufstellen. Jedoch weis ich nicht wie ich dies in Matlab darstellen kann.

Eine Polynomfunktion 3.Ordnung mit einem LGS aufzustellen ist kein Problem.
Im folgenden Code sind Bedingungen für die Polynomfunktion gegeben:
f(19) = 3.2 , f(27) = 24 , f'(19) = 0 , f'(27) = 4

4 Randbedingungen, 4 Unbekannte

LGS:
A*p = b --> p = A^-1*b

Soweit kann ich die erste Polynomfunktion aufstellen.

Code:

A = 19^3,19^2,19,1;27^3,27^2,27,1;3*19^2,2*19,1,0;3*27^2,2*27,1,0];
b = [3.2;24;0;4];
p = A^-1*b;
p = p';

k = 1;
for t = 1:1:500
    v_fit(1,k)= p(1,1)*t^3 + p(1,2)*t^2 + p(1,3)*t + p(1,4);
    k=k+1;
end

for i=1:1:500
        t(i)=i;
end

plot(t,v_fit,'-')

 


Die nächsten Randbedingungen für die zweite Polyfunktion:
f(27) = 24 , f(32) = 32.4 , f'(27) = 4 , f'(32) = 0

Nun möchte ich dies in den obigen Code einbauen. Und wenn ich noch eine weitere Polynomfunktion möchte, diese soll dann auch eingebaut werden.

Ich wäre für jede Hilfe sehr dankbar.

Viele Grüße

Samil
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 28.08.2013, 09:17     Titel:
  Antworten mit Zitat      
Zitat:
Nun möchte ich dies in den obigen Code einbauen
ist mir noch nicht ganz klar. mit variablen oder duch eine abfrage im output oder oder willst du eine forschleife über alle eingangs parameter damit er selber erkennt wie viel polynome oder wie ?

anmerkung:
die beiden forschleifen kannst du dir spaaren in matlab
Code:

t = 1:1:500
v_fit= p(1,1)*t.^3 + p(1,2)*t.^2 + p(1,3)*t + p(1,4);
 

_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Samil
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 20.08.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.08.2013, 11:53     Titel:
  Antworten mit Zitat      
Hallo Winkow,

ich hatte gedacht über eine for-schleife, damit er erkennt wieviele polynome und er soll mir dann für die jeweiligen polynome die Koeffizienten ausspucken.

Bsp.: p1 = [a1,b1,c1,d1]
p2 = [a2,b2,c2,d2]
usw.


Also wie schon erwähnt, für eine Polynomfunktion ist es durch den unteren Befehl anschaulich.

Konnte ich es verständlich darstellen Wink

VG
Samil
Private Nachricht senden Benutzer-Profile anzeigen
 
Samil
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 20.08.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.08.2013, 11:57     Titel:
  Antworten mit Zitat      
und ja danke für die Anmerkung Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 28.08.2013, 12:10     Titel:
  Antworten mit Zitat      
meinst du sowas in der art ?
Code:
clear
t=1:500;
M=[19,27,27,32;...
    3.2,24,24,32.1;...
    0,4,4,0];
for k=1:size(M,2)/2
A = [M(1,2*k-1)^3,M(1,2*k-1)^2,M(1,2*k-1),1;...
    M(1,2*k)^3,M(1,2*k)^2,M(1,2*k),1;...
    3*M(1,2*k-1)^2,2*M(1,2*k-1),1,0;...
    3*M(1,2*k)^2,2*M(1,2*k),1,0];
b = [M(2,2*k-1);M(2,2*k);M(3,2*k-1);M(3,2*k)];
p(:,k) = A^-1*b;
plot(t,polyval(p(:,k),t))
hold all
end

_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Samil
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 31
Anmeldedatum: 20.08.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.08.2013, 13:52     Titel:
  Antworten mit Zitat      
Danke Winkow,

hat super geklappt Smile


Beste Grüße
Samil
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.