DMUG-Archiv 2007

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Plots in Modulen in Mma 6

Hallo,

gibt es eigentlich irgendwo ein Tutorial "Umstieg auf Mma 6" oder so?
Ich habe gerade eine Änderung gefunden, die mir Mühe bereitet.

Bisher hatte ich häufig Funktionen, die als Modul definiert waren
(f[x_,y_]:=Module[{a,b},<code>]), und habe im Code der Funktion einen
Plot erzeugt und ausgegeben und dann die Funktion einen Wert zurückgeben
lassen.  In Mma 6 ist es aber so, dass die ausgegebenen Grafik der
Rückgabewert jeder Grafik-Funktion ist und sich daher mit ";" nach der
Zeile abschalten lässt.

Ich habe jetzt Mühe, eine Funktion zu schreiben, die zunächst den Plot
auf dem Bildschirm ausgibt, aber dann *nur* einen Wert zurückgibt, nicht
den Plot.  Ich habe es mit "Return[result]" versucht und nur mit
"result", ich habe (da Return AFAIK nur das Modul beendet und nicht die
Funktion) Catch und Throw verwendet, und ich habe im Plot mit
DisplayFunction gespielt ($DisplayFunction oder (Print[#];&)), aber ich
habe es nicht hingekriegt:  Entweder wird der Plot nicht ausgegeben,
oder der Rückgabewert enthält auch den Plot, oder es gibt weder Plot
noch Rückgabewert.  Das angehängte Notebook zeigt das Problem.

In den Beispielen im Notebook könnte man nun einfach nur das zweite
Element des Rückgabewerts zuweisen.  Aber wenn der Rückgabewert eine
Liste ist, dann wird auch der Plot für jedes Element der Liste einmal
gedruckt, und das ist nicht mehr handhabbar (siehe Funktion
"FuncReturnsList").

Wie kann ich das angehen?

Danke für Tipps, Frank
-- 
Frank Küster
Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich
Debian Developer (teTeX/TeXLive)

Attachment: showplot.nb
Description: Mathematica Notebook document

Antworten:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html