WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Exponentialfunktion

 

vlplayer

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 12:01     Titel: Exponentialfunktion
  Antworten mit Zitat      
Moin moin,

habe ein Problem, und zwar ist es schon länger her dass ich mit Matlab gearbeitet habe. Jedoch schreib ich grad meine Bachelorarbeit und mit Matlab sehen die Graphen einfach wissenschaftlicher aus als mit excel-

Nun will ich die folgende "Badewannenkurve" plotten.

mit der Formel : F(t)= 1-exp^(-lamda*t));
soll die unten angehängte grafik entstehen.

kann mir da jemand mal eine codevorlage geben? Wäre super

Danke schonmal

badewann.gif
 Beschreibung:

Download
 Dateiname:  badewann.gif
 Dateigröße:  5.76 KB
 Heruntergeladen:  2571 mal


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 07.03.2012, 12:29     Titel:
  Antworten mit Zitat      
in deiner grafik ist lamda in abhängigkeit von t deine funktion hat aber ein konstantes lamda. darum versteh ich die frage nicht ganz. willst du einfach nur wissen wie du sowas plottest?
Code:

lamda=2;
F=@(t) 1-exp(-lamda*t);
t=0:0.1:100;
plot(t,F(t))
 
Private Nachricht senden Benutzer-Profile anzeigen
 
vlplayer

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 13:52     Titel:
  Antworten mit Zitat      
ich möchte einfach diese Kurvenform als beispiel Grafisch hinterlegen, die Werte sind vorerst egal.
 
vlplayer

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 14:03     Titel:
  Antworten mit Zitat      
und bei deinem code hast du vergessen das es heißen soll 1-exp^(-lamda*t)
 
vlplayer

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 14:05     Titel:
  Antworten mit Zitat      
sry.... e^ = exp(x) ....
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 07.03.2012, 14:21     Titel:
  Antworten mit Zitat      
wenn du so eine badewanne willst geht das aber nicht mit deiner funktion die du gepostest hast. die ist ja monoton
Private Nachricht senden Benutzer-Profile anzeigen
 
vlplayer

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 14:25     Titel:
  Antworten mit Zitat      
ja ... das wäre die nächste frage ....


mmh...... hast du ne idee wie ich die hinbekomme
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.03.2012, 14:29     Titel:
  Antworten mit Zitat      
Hallo,

hier hättest du z.B. eine Wannenfunktion:

Code:
lamda=2;
F=@(t) 1 + exp(-lamda*t) + exp(lamda*t);
t=-5:0.1:5;
plot(t,F(t))


In der Regel kann man ja aber nicht einfach "irgendwas" plotten??

Bitte die Fragen immer so konkret wie möglich stellen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
vlplayer

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 14:50     Titel:
  Antworten mit Zitat      
könnt ihr mir sagen was daran falsch ist :

Code:


lamda=1;
k= 0.5;
t= 0:0.1:2.5;


f(t)= lamda*k*(lamda*t)^(k-1)*exp(-(lamda*t)^k );

plot(t,f(t))

 
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 07.03.2012, 14:59     Titel:
  Antworten mit Zitat      
Zitat:
könnt ihr mir sagen was daran falsch ist :
einiges.
Code:
f(t)= lamda*k*(lamda*t)^(k-1)*exp(-(lamda*t)^k );
 
ist keine gültige funktions deklaration. sihe dazu unsere beispiele oben. sihe dazu Anonymous Functions.
außerdem ist t ein vektor und t^k funktioniert dann nur bei der richtigen dimension von t. das ist aber auch nicht das was du machen wolltenst. du wolltest sicher t.^k machen
Private Nachricht senden Benutzer-Profile anzeigen
 
vlplayer

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 16:13     Titel:
  Antworten mit Zitat      
danke schonmal,

nochmal kurz ausführlicher, bin momentan immer noch nicht schlauer.

nun will ich die Dichtefunktion anhand dieser Formel plotte:

h = (b/T)*(t/T)^(b-1) * e^-((t/T)^b)

für b=0.5 T=1 für eine dauer von t=2

mein Code läuft einfach nicht keine Ahnung wieso
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.03.2012, 16:16     Titel:
  Antworten mit Zitat      
Hallo,

dann zeige uns doch bitte deinen Code und die Fehlermeldung, die dabei auftritt.

Hast du, wie von Winkow vorgeschlagen, darauf geachtet .^ statt ^ zu verwenden?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
vlplayer

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 17:40     Titel:
  Antworten mit Zitat      
Sry für die unwissenheit aber ist sehr sehr lange her mit Matlab und damals war ich auch nicht der beste darin

Code:


clear all, close all; clc;

b=0.5;
T=1;

h=@(t) (b/T)*(t/T)^(b-1)*exp(-(t/T).^b);
t=0:0.1:2;

plot(t,h(t))

??? Error using ==> mpower
Inputs must be a scalar and a square matrix.
To compute elementwise POWER, use POWER (.^) instead.

Error in ==> @(t)(b/T)*(t/T)^(b-1)*exp(-(t/T).^b)


Error in ==> test2 at 9
plot(t,h(t))

 
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 07.03.2012, 17:46     Titel:
  Antworten mit Zitat      
Zitat:
Hast du, wie von Winkow vorgeschlagen, darauf geachtet .^ statt ^ zu verwenden?

nein hast du nicht ^^ jedenfalls nicht konsequent Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.03.2012, 20:01     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Sry für die unwissenheit aber ist sehr sehr lange her mit Matlab

Das Problem ist weniger die Unwissenheit als dass man den Code sehen muss, um die Fehler darin zu diagnostizieren.

Wie von Winkow gesagt und von der Fehlermeldung sogar noch deutlicher: alle ^ durch .^ ersetzen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen

Gehe zu Seite 1, 2  Weiter

Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 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.