Verfasst am: 21.10.2012, 12:18
Titel: Deconvolution von Verteilungsfunktionen
Hallo liebe Forenleser,
Ich habe ein Problem mit der Matlab Funktion deconv. Ich habe eine Verteilungsfunktion (A) gegeben, die aus der Faltung zweier Gauss-Verteilungen (A&B) entsteht. Von diesen ist mir eine gegeben. Die fehlende (A) möchte ich durch deconvolution von C mit B erhalten. Ich erhalte jedoch folgende Fehlermeldung:
Error using deconv (line 20)
First coefficient of A must be non-zero.
Ich habe einen Code geschrieben, um das Problem zu verdeutlichen. Hier gehe ich von zwei bekannten Gauss-Kurven 1 & 2 aus, die gefaltet Gauss 3 ergeben. Durch deconvolution von Gauss 3 mit Gauss 2 müsste ich also wieder Gauss 1 erhalten. Wer weiß rat, wo der Fehler steckt???
gauss3 = conv(gauss1,gauss2); % 3.Gauss-Kurve ergibt sich aus Faltung von 1.Gauss-Kurve mit 2.Gauss
gauss3 = gauss3(1:size(x,2)); % resize gauss3 to inital points of data
[gauss4,res] =deconv(gauss3,gauss2); % 4.Gauss Kurve ergibt sich aus deconvolution von 3.Gauss-Kurve mit 2.Gauss-Kurve % gauss4 und gauss1 sollten identisch sein
Gauss ist keine Matlab Funktion, sondern selbst geschrieben worden. Daher kennt dein Matlab die Funktion auch nicht. Du brauchst den m-file der Funktion.
danke für den Tipp, er hat mir sehr weitergeholfen. Wenn ich nun mit "conv" die Faltung berechne werden alle drei Graphen angezeigt. Jedoch interessiert mich ebenfalls die "Rückfaltung" . Dazu muss in dem beiliegenden Beispiel die Zeile 40 bzw. 41 auskommentiert werden - je nach gewünschter Richtung.
Bei "deconv" erhalte ich keine Fehler, allerdings fehlt auch die Ausgabe aller drei (!) Graphen. Kannst du mir sagen, wodran das liegt?
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.