www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Maple" - Display Fkt. x-mal aufrufen
Display Fkt. x-mal aufrufen < Maple < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Maple"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Display Fkt. x-mal aufrufen: Mein Idee klappt nicht
Status: (Frage) beantwortet Status 
Datum: 20:40 Mi 12.12.2007
Autor: BiGfReAk

Aufgabe
Es sollen verschieden Funktionen (zB sin(x), cos(x), arcsin(x) etc) und ihre Ableitungen in einem Schaubild dargestellt werden.  

Hi,
also so habe ich es eigentlich gemacht und es funktioniert auch:

f11 := x->sin(x);
f12 := D(f1)(x);
p11 := plot(f11(x), x= -2*Pi..2*Pi, color=green, thickness=1):
p12 := plot(f12(x), x= -2*Pi..2*Pi, color=red, thickness=1):
display(p11,p12, title="Grün f(x)=sin(x) ---- Rot f'(x)");

dann wird mir eine Funktion und ihre Ableitung dargestellt. Ich muss diese Schritte aber immer und immer wieder machen, und da es auch nicht grad wenige Funktionen sind, wollt ich es mit einer Procedur machen.
Meine Procedur funktioniert auch, allerdings gibt es mir immer das letzte Display aus, die vorherigne überschreibt es oder so.
Wie bring ich Maple dazu, mir ALLE Displays auszugeben?

Meine Procedur sieht so aus:
zeichne_funktion:=proc()
local f1, f2, p1, p2, fkt:
fkt := {sin(x), arcsin(x)}: # erstmal 2 zum testen
anz := nops(fkt);
for i from 1 to anz
do
f1 := x->fkt[i];
f2 := diff(f1(x),x);
p1 := plot(f1(x), x= -2*Pi..2*Pi, color=green, thickness=1):
p2 := plot(f2(x), x= -2*Pi..2*Pi, color=red, thickness=1):
display({p1,p2});
od;
end;

Wenn jemand eine Idee hätt wär ich sehr dankbar. Andernfalls muss ich die längere Lösung nehmen und ständig copy paste machen :/

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

        
Bezug
Display Fkt. x-mal aufrufen: Antwort
Status: (Antwort) fertig Status 
Datum: 23:41 Mi 12.12.2007
Autor: Martin243

Hallo,

ich habe mir mal Gedanken gemacht und das Ganze in einen Einzeiler (bis auf die Definition der Funktionen) packen können:
fkt := {sin, arcsin, [mm] x->x^2, [/mm] sqrt};
display(map(plot, map(f->[f, D(f)], fkt), -2*Pi..2*Pi, y=-5..5, color=[green,red], thickness=1));

Passt das in etwa?


Gruß
Martin

Bezug
                
Bezug
Display Fkt. x-mal aufrufen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 00:10 Do 13.12.2007
Autor: BiGfReAk

Hi
Danke für deine Antwort.
Ich wollte allerdings eine Funktion zB sin(x) und die Ableitung davon in einem Schaubild anzeigen. Dadrunter wollte ich ein neues Schaubild mit zB cos(x) und der Ableitung usw.
Also nicht alle Funktionen in einem Schaubild. Da es einige mehrere Funktionen sind (8 Stück) würde man keine Übersicht mehr haben.

Kann man soetwas überhaupt in Maple machen?

Vielleicht konnt ich dir jetzt mein Problem besser schildern.

Bezug
                        
Bezug
Display Fkt. x-mal aufrufen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 00:38 Do 13.12.2007
Autor: Martin243

Hallo,

das geht natürlich auch. Ich habe aber keine Probleme mit der for-Schleife:
fkt :=  {sin, arcsin, x->x^2, sqrt}; 
for i from 1 to nops(fkt) do plot([fkt[i],D(fkt[i])], -2*Pi..2*Pi, y=-5..5, color=[green,red], thickness=1); end;


Gruß
Martin

Bezug
        
Bezug
Display Fkt. x-mal aufrufen: Antwort
Status: (Antwort) fertig Status 
Datum: 00:46 Do 13.12.2007
Autor: Laxomat

Hallo,
auch ich habe mich mal damit auseinandergesetzt! Im Prinzip liegt die Lösung einfach darin, die display-Funktion in einen print-Befehl zu setzen. Damit wird jede einzelne Display-Ausgabe erzwungen.

Die etwas abgewandelte Prozedur lautet dann (mit etwas Feinschliff):

zeichne_funktion:=proc()
local p1, p2, i:
global fkt:
for i from 1 to nops(fkt)
do
p1 := plot(fkt[i], x= -2*Pi..2*Pi, color=green, thickness=1, legend=typeset("f(x)=", fkt[i])):
p2 := plot(diff(fkt[i],x), x= -2*Pi..2*Pi, color=red, thickness=1, legend=typeset("f'(x)=", diff(fkt[i],x))):
print(display({p1,p2}));
od;
end:

Die Variable fkt würde ich global und vor dem Prozedur-Aufruf deklarieren, da man dann das eigentliche Programm nicht ändern muss. Ist aber hier nicht relevant. Der Aufruf wäre dann:

> fkt=[sin(x), arcsin(x), [mm] x^2, [/mm] sqrt(x)];
> zeichne_funktion();

Bezug
                
Bezug
Display Fkt. x-mal aufrufen: Danke
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 12:25 Do 13.12.2007
Autor: BiGfReAk

Hi
VIELEN DANK euch allen! Mit print funktioniert es genau so wie ich es wollte.

MfG

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Maple"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.mathebank.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]