[Maple]: Abschnittw. Funktion < Maple < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 16:40 Mi 28.06.2006 | Autor: | achso |
Hi,
kann mir jemand aushelfen, wie ich in Maple abschnittweise definierte Funktionen der Form [mm] \begin{cases} 1, & \mbox{für } n \in \mathbb{N} \\ 0, & \mbox{sonst } \end{cases} [/mm] plotten kann? Wenn ich das versuche wird zwar der Anfangs- und Endwert korrekt abgebildet, aber dazwischen klappt das nie. Gibt es hierfür ggf. besondere Befehle?
Danke!
Gruß,
achso
|
|
|
|
Hallo,
da du deinen Lösungsansatz hier nicht gepostet hast, knalle ich dir einfach mal so meine Lösung hin. Hier definiere ich eine Funktion stückweise mittels "piecewise". Das funktioniert hier wie If-Then-Else. Es wird der Typ des Arguments überprüft. Wenn er passt, gibt die Funktion 1 zurück, sonst 0.
f := x -> piecewise(type(x,posint), 1, 0);
Gruß
Martin
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:17 Mi 28.06.2006 | Autor: | achso |
Hallo Martin243,
mein "Ansatz" war das Klicken auf das ensprechende Symbol in Maple und dann die Funktion (wie oben) mit Symbolen zu definieren ;)
Leider funktioniert dein Ansatz aber auch nicht. Ich habe mir mal die Dokumentation zu piecewise durchgelesen, aber irgendwie klappt das nicht. Beim Plotten erhalte ich:
> plot(f, x = 0 .. 10)
Error, (in plot) invalid plotting of procedures, perhaps you mean plot(f, 0 .. 10)
Wenn ich das dann wie von Maple vorgeschlagen mache, erscheint ein senkrechter Strich bei 10.
Vielleicht könntest du mal eine komplette Befehlszeile inkl. Plotbefehl posten?
Würde mich freuen - ist aber nicht allzu dringend.
Dankeschön,
achso
|
|
|
|
|
Hi,
Zuerst einmal änden wir unsere Funktion mal etwas ab, denn die Typen bei Maple sind etwas zu eindeutig. f(1) ergibt zwar 1, aber f(1.0) liefert 0, was wir ja nicht wollen. Also:
f := x -> piecewise(x=floor(x), 1, 0);
Zum Plotten musst du die Funktion mit dem Argument benutzen, also in deinem Fall:
plot(f(x),x=0..10);
Aber den einen senkrechten Strich bei 10 bekomme ich auch. Das liegt wohl daran, dass die einzelnen Stellen von Maple nicht erkannt werden, da Maple nur eine endliche Anzahl an Punkten plotten kann.
Das einzige, was mir dazu einfällt, ist eine anschauliche Näherungslösung der Form:
plots[pointplot]([seq([x,f(x)], x=0..10,0.01)]);
Da man mit dem letzten Argument die Schrittweite einstellt, sieht der Plot recht kontinuierlich aus...
Na ja, mehr fällt mir im Moment nicht ein.
Gruß
Martin
|
|
|
|