Matlab funktion zeitwert bestimmen

Gast #6634484
Lesenswert?

Hallo zusamen,

ich Hoffe, das ich hier im richtigen Bereich bin.

Ich versuche gerade in Matlab den Zeitwert t einer Funktion zu 
bestimmen.

Also, ich habe eine e-Funktion und ich soll, wenn der Wert der Funktion 
auf 45% abgesunken ist denn dazugehörigen Zeitwert ausgeben.

Leider bekomme ich ständig ein falsches Ergebnis heraus:

Hier der code:
1
t = 0:0.1:10;
2
f1 = exp(-0.2*t);
3
plot(t, u1);grid

Ich habe folgendes gemacht:
1
[v, i] = min(u1 - u1(1) * 0.63)
2
t(i)

Leider kommt ein falsches Ergebnis raus.
Kann mir da jemand weiterhelfen.
Für mich ist das ganz neu.
Gast #6634500
Lesenswert?

Was Du suchst, ist die Zeitkonstante!

Der Befehl lautet
t(find(f1 < f1(1)*0.63, 1, 'first'))
-> der Zeitwert, bei dem die Funktion f1 das erste mal kleiner als 63 % 
des Anfangswerts ist (zumindestens in der Näherung, da der Zeitvektor 
sehr grob ist).
#6667101
Lesenswert?

Stimmt, wenn es eine Übung in Matlab ist, dann ist das die Lösung.
Ansonsten:
f(t) = exp(-0.2 * t)   // für t >= 0
// 63 % vom Maxwert gesucht:
0.63 = exp(-0.2 * t)  // beide Seiten mit dem natürlichen logarithmus
                      // logarithmieren

ln 0.63 = -0.2 * t    // ln(e) = 1  ... e fällt weg

t = ln(0.63) / -0.2 = 2.31 .

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren