|
|
Impulsfunktion darstellen |
|
thunder |
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 27.08.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2010a Unix (Ubuntu)
|
|
|
|
|
|
Verfasst am: 03.03.2009, 07:43
Titel: Impulsfunktion darstellen
|
|
Hallo,
ich habe da mal eine bestimmt ganz banale frage:
wie kann ich eine impulsantwort darstellen?
das problem ist das sie aus einem dirac impuls und einer Sprun besteht.
g(t)=0,5*delta(t)+s(t)exp(-2*t)
mit delta(t)=diracimpuls und s(t)=step (also ab 0 gleich1).
ich steh irgendwie aufm schlauch. wäre nett wenn mir da jemand weiterhelfen könnte wie das in matlab umsetze.
also ich denke mein problem ist wie ich dem delta hier sage das es bei t=0 zu 1 wird (bzw. inf) und das s(t) ab t=1 zu 1 wird und vorher null ist.
t=-100:0.01:100;
edit by steve: Ich hoffe du meintest "banale Frage"
|
|
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 03.03.2009, 08:50
Titel:
|
|
Moin,
das könnte man mit einem SWITCH lösen:
Gruß
Alex
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
thunder |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 27.08.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2010a Unix (Ubuntu)
|
|
|
|
|
|
Verfasst am: 03.03.2009, 09:08
Titel:
|
|
super danke, funzt einwandfrei mit ones(size(t))
|
|
|
Gast |
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.03.2009, 09:10
Titel:
|
|
Wenn du die Symbolic Math Toolbox hast könnten dir auch
weiterhelfen.
|
|
|
thunder |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 27.08.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2010a Unix (Ubuntu)
|
|
|
|
|
|
Verfasst am: 03.03.2009, 20:30
Titel:
|
|
mit dirac und heaviside funktioniert es auch. das war genau das was ich gesucht habe.
habe jetzt nur noch das problem das ich jetzt das Faltungsintegral mit dem eingangssignal
x(t)=heaviside*x1*sin(omega*t) berechnen möchte.
dazu verschiebe ich ja die fkt x(t-tau).
mein t läuft von t=-10:0.01:10;
wie kann ich jetzt diese zeitliche verschiebung in meiner integralunfktion berücksichtigen?
bzw. wie muss ich in dem fall tau definieren?
soweit hab ich meinen Code schon geschrieben. der plot ist auch stimmig.
Aber wie kann ich möglicht elegant eine zeitlich everschiebung und faltung des signals erreichen???
danke für eure hilfe
|
|
|
thunder |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 27.08.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2010a Unix (Ubuntu)
|
|
|
|
|
|
Verfasst am: 03.03.2009, 22:07
Titel:
|
|
ok hab mal was probiert.
also die faltung von g und x bekomme ich mit conv(g,x) hin. soweit so gut.
das problem ist nun, das die werte in nem array? oder Vektor? stehen der 1x4001 einträge hat. miene zeit t hat aber nur 1x2001 werte.
wie kann ich mir das ergebnis von conv(g,x) anzeigen lassen. wenn ich das mit irgendeiner zeit machen lasse, hab ich das problem das nicht das ergebnis rauskommt, welches ich haben will im vgl. zur lösung mit hand und dann plot.
hab hier mal den code:
ein weiteres problem ist, dass ich in y dann nur NaN stehen, was beim typ double soviel heißt wie kein input (so hab ichs jedenfalls verstanden). wieso hat er keine werte nach der faltung???
|
|
|
thunder |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 27.08.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2010a Unix (Ubuntu)
|
|
|
|
|
|
Verfasst am: 04.03.2009, 08:50
Titel:
|
|
Kann ich eigentlich mit Matlab ein Integral auch symbolisch auswerten?
zum beispiel:
y(t)=Integrla[x(t-tau)]g(tau)dtau
(minus unendlich bis plus unendlich)
wobei g(t)=0,5*dirac(t)+heaviside(t)exp(-2t)
und
x(t)=heaviside(t)*x_dach sin(w*t).
|
|
|
Pingu |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.10.2009, 10:07
Titel: Heaviside-Fkt
|
|
Hallo,
ich beschäftige mich seid kurzem erst mit Matlab und wollte eine
Heaviside Funktion über mehreren Perioden darstellen. Über eine
ist es mir bereits gelungen mit:
function y = heaviside(x);
y = ( x >= 0 )
ich verwende dann diese Funktion um ein Signal zu erstellen, der über mehrere Perioden läuft, im idealen Fall unendlich? Geht das und wenn ja, kann mir einer helfen?
Wäre supi lieb
*danke*
|
|
|
|
|
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.
|
|