2016-04-06 10 views
1

Ich möchte Variablen in Maxima eine bestimmte Reihenfolge in einer Gleichung geben. Dies ist nur zu Anzeigezwecken.Wie bestelle ich Variablen in Maxima?

Zum Beispiel:

(%i1) E=(h*c)/%lambda; 
           c h 
(%o1)      E = ------- 
           %lambda 

Ich mag die h und c Variablen in dieser Reihenfolge sein, wenn sie angezeigt werden. Ich schaute auf ratvars() und ordergreat(), aber sie scheinen hier nicht relevant zu sein.

Danke für Ihre Hilfe.

+0

ich eine Lösung haben kann unter Verwendung des 'alias gefunden()' Funktion. Leider ist es in meiner Implementierung keine verfügbare Funktion. Irgendwelche anderen Vorschläge? – whanrott

+0

Ich fand auch 'declare (, mainvar)' aber das ist auch nicht verfügbar. – whanrott

Antwort

1

Es scheint, dass declare(<var>, mainvar) war was ich suchte. Wenn mainvar attribute für eine Variable deklariert ist, "succeeds all other constants and variables".

Ich habe dies mit dem STACK-Plugin für Moodle versucht. Ich musste das Schlüsselwort mainvar aus der verbotenen Liste in der Datei casstring.class.php entfernen.

1

Eigentlich, ich denke, ordergreat() ist die Funktion, die Sie brauchen, vielleicht haben Sie eine Sortierung zuvor, die unorder() musste zuerst ro Dinge zurückgesetzt. Versuchen

unorder()$ ordergreat (h, c)$ E=(h*c)/%lambda; 

und

unorder()$ ordergreat (c, h)$ E=(h*c)/%lambda; 
+0

Ja und nein. Ihre Lösung funktionierte in Befehlszeilen-Maxima (5.37.2 + CLISP 2.49 + Ubuntu 15.10 und 5.36.0), aber nicht in WXMaxima 16.04. Deklarieren mit Mainvar hat in allen Kontexten funktioniert. Ich habe deine Antwort neu gewählt, weil sie immer noch nützlich ist. Vielen Dank. – whanrott

Verwandte Themen