Hi, ich bin gerade etwas am Matlab programmieren und bin mir nicht sicher, ob es nicht eine elegantere Lösung gibt, als ich sie verwende. Wenn ich eine Funktion nehme, z.B. f = 1 / x, und diese plotten möchte, sieht das bei mir folgendermaßen aus: %************************************************** st = linspace(-5,5,20); %Stützstellenvektor f = zeros(0,length(st); %Nullvektor for k = 1:1:length(st) f(k) = 1 / st(k); end plot(st,f); %************************************************** Was mich daran stört, ist die for-Schleife. Gibt es da etwas eleganteres? Ich frage, da man ja bei Matlab immer schön Vektoroperationen nutzen soll, da diese schneller sind, allerdings fällt mir keine Operation ein. Grüße; P
ah... genau, vielen Dank, an sowas habe ich gedacht. aber gibt es das auch für f = 1 / (1 + x) ?
Troll? Falls nicht: RTFM. Sorry, aber das steht alles im "getting started".
Karl wrote:
> Falls nicht: RTFM.
jap...wobei ich auch den Unterschied zwischen erster und zweiter Frage
nicht sehe...
Gast wrote: > ah... genau, vielen Dank, an sowas habe ich gedacht. > > aber gibt es das auch für f = 1 / (1 + x) ? Man hält es nicht für möglich: Ja! Und zwar mit st = linspace(-5,5,20); f = 1./(1+st); oder noch knackiger mit f = 1 ./ (1 + (-5:(10/(20-1)):5));
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.