|
|
Symbolisch Integrieren: heaviside(...)*(1-heaviside(...)) |
|
XEM |
Forum-Newbie
|
|
Beiträge: 2
|
|
|
|
Anmeldedatum: 26.12.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 26.12.2011, 16:12
Titel: Symbolisch Integrieren: heaviside(...)*(1-heaviside(...))
|
|
|
|
|
Hallo zusammen,
ich versuche für den Bewegungsverlauf eines Elektrogefährts die Bewegungsgleichungen aufzustellen.
Zugrunde liegen die Datenreihen der Distanzwerte. Der Bewegungsvorgang ist immer gleich. D.h. näherungsweise gleichmäßige Beschleunigung, halten der konstanten Geschwindigkeit, näherungsweise gleichmäßige Abbremsung. All das in Geradeausfahrt.
Für den angehängten Plot wurden die Distanzdaten einfach differenziert.
Ich würde gerne für Fittingzwecke eine Gleichung aufstellen, die dem Distanzvektorverlauf nahe kommt. Diese könnte man dann z.B. mit dem Fitting Tool als "Custom Equation" angeben.
Ich habe bereits den Beschleunigungsverlauf in eine Gleichung gepackt: Dieser stellt im Endeffekt zwei Rechtecke dar.
Das erste Rechteck besitzt die Höhe a1, beginnt bei T0 und endet bei T1. Das Zweite ist a2 hoch beginnt bei T2 und endet bei T3.
Nun ist meine Frage: Matlab kann die oben gezeigte Funktion nicht integrieren da bereits
Probleme macht. Es gibt kein explizites Integral dafür. Per Hand komme ich auch nicht wirklich weiter...
Habt ihr eine Idee wie ich das ganze noch integrieren kann, wenn möglich symbolisch, sodass ich es als "custom equation" in der Fitting Toolbox verwenden kann?
Beschreibung: |
|
Download |
Dateiname: |
Plot.png |
Dateigröße: |
15.11 KB |
Heruntergeladen: |
768 mal |
|
|
|
|
|
Coja |
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 26.12.2011, 22:46
Titel:
|
|
Hallo,
naja die Sprungfunktion ist ja eine nichstetige Funktion. Matlab weis nicht welche Zeiten (T0,T1,T2,T3) vorliegen und kann daher die Gelichungen nicht vereinfachen. Gibst man direkt Zeitpunkte an, so ist die Lösung kein Problem:
Du solltest dir überlegen, ob du es mit der Sprungfunktion machen willst oder vielleicht die Optimization Toolbox nutzen, zum Beispiel
.
Per Hand sollte die Lösung auch kein Problem darstellen, das Integral von 1 sollte bekannt sein, du musst nur noch den Einschaltzeitpunkt einbringen
Viele Grüße
Coja
|
|
|
XEM |
Themenstarter
Forum-Newbie
|
|
Beiträge: 2
|
|
|
|
Anmeldedatum: 26.12.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.12.2011, 13:36
Titel:
|
|
Zunächst einmal vielen Dank für Ihre rasche Antwort.
Ich habe das Integrieren, so wie Sie es erwähnt haben ausprobiert. Leider wird auch dann kein explizites Integral gefunden...?
Mach ich da was falsch oder funktioniert das nicht?
Könnten Sie evtl. den Vorschlag mit lsqnonlin etwas konkretisieren? Ich habe zwar etwas recherchiert, habe aber keine Vorgehensweise gefunden die ich auf mein Problem anwenden könnte. Dafür wäre ich sehr dankbar.
Grüße XEM
|
|
|
Coja |
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.01.2012, 23:23
Titel:
|
|
Hallo,
also das explizite Integral beinhaltet natürlich wieder eine Sprungfunktion:
Mit
kannst du eine selbstdefinierte Funktion mit Messdaten füttern und dir Parameter (LS-)optimieren lassen.
Sprungfunktionen sind hierfür jedoch nicht geeignet.
Viele Grüße
COja
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|