Verfasst am: 26.10.2011, 21:37
Titel: Schrittweise Faltung für beliebige Funktionen
Hallo,
habe eine Funktion zur schrittweisen Faltung (Animation) zweier Funktionen geschrieben, wobei eine immer die rect-Funktion ist.
Bei den Versuchen die Faltung für beliebige Funktionen zu verallgemeinern scheitert's aber immer bei der "schrittweisen" Durchführung.
Code:
t = -10 : 0.1 : 10;
faltung(rect(t, 1, 0), t);
function y = rect(t, Tp, To)% Zeitachse, Impulsbreite, Verschiebung
y = double(abs(t-To) <= Tp/2);
end
Was genau scheitert wo und mit welcher Fehlermeldung oder welchem unerwarteten Ergenbis? Ist der gezeigte Code in Ordnung? Wenn ja, was möchtest Du genau verändern?
Hallo Jan,
der angegebene Code funktioniert und soll nur veranschaulichen wie das Ergebnis aussehen soll. Die Faltung ist in der for-Schleife implementiert, wobei der Index bei jedem Durchlauf an die rect-Funktion als Verschiebungsfaktor übergeben wird.
Nun möchte ich die schrittweise Faltungsoperation nicht nur für rect(), sondern für beliebige Funktionen verallgemeinern. Allerdings finde ich keinen funktionierenden Ansatz.
Bitte zeige noch die Zeile, in der der Fehler auftritt. Natürlich muss nicht der Function-Handle selbst multipliziert werden, sondern der Output nach dem Aufruf des Function-Handles als Funktion. Also ist noch etwas Feinarbeit am Programm nötig.
Man kann statt @rect natürlich auch beliebiege andere Funktionen übergeben, z.B. auch anonyme. Wenn das mit allen Integratoren, Nullstellen-Findern, Optimierern, ARRAYFUN, CELLFUN etc funktioniert, sollte das auch für Dein Problem machbar sein.
Gruß, Jan
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
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.