ONYX and MAXIMA

Last modified by Anna Paul-Hasenfuss on 30.06.2024

To perform more complex calculations and to fulfill specific requirements, the computer algebra system MAXIMA, which is linked to ONYX, can be used. The Netzwerk Mathematik has gathered a number of Good-Practice-Examples. This collection of typical applications, tricks and pitfalls will help you understand how to use the MAXIMA connection in ONYX. Please find below a selection of topics that are described in detail.

Rechnen mit vorzeichenbehafteten Variablen

If an ONYX variable is used in MAXIMA calculations, it is always recommended to enclose it with parentheses (⋅).

Example: Variable {a} squared:

If {a}=-5 then {a}^2=-5^2=-25, whereas ({a})^2=(-5)^2=25.

The comparison of the two variants – with and without parentheses – can be seen in the example image below.

MAXIMA - Zusätzliche Klammer_de.png

ONYX connects the CAS MAXIMA as an external application. MAXIMA requests are sent to MAXIMA in a form defined by the user without being interpreted or modified. If you choose a numeric data type as the variable and thus as the result data type, only the float expression will be added. 

If it is intended that {var1} can assume any value of the user, then "3+4" or any other expression is also conceivable. If {var1} is now used in a MAXIMA request, e. g. {var1}^2, this is inserted corresponding to a placeholder without further intervention and transmitted to MAXIMA for calculation. Therefore, to preserve the intended overall context, additional parentheses around ONYX variables are necessary.

 

Analyse von Teilnehmerantworten mit Hilfe von Variablen

Durch Maxima-Abfragen im Tab Variablen ist ein Zugriff auf die vom Teilnehmer gewählte Antwort und die korrekte Aufgabenlösung möglich.  Einen Einblick gibt die Seite Expertenbewertung.

 

Automatische Ergänzung ungültiger MAXIMA-Terme

Gibt der Anwender beim Erstellen oder Bearbeiten einer Variable einen nicht gültigen MAXIMA-Ausdruck in das Feld zur Wert-Ermittlung ein, wandelt ONYX den Ausdruck vor Übergabe an MAXIMA in einen gültigen Ausdruck um.

Wert einer numerischen Variable

Bei Ermittlung eines numerischen (Variablen-) Wertes, wird die durch den Autor definierte "ungültige" Berechnung um einen float-Befehl ergänzt: float(...);.

Beispiel

  • Die Berechnung "1+2" wird in den MAXIMA-Befehl "float(1+2);" geändert.
  • Der Datentyp der Variable wird für die Ergebnisausgabe unabhängig der erfolgten MAXIMA-Berechnung beachtet.
  • Wird durch die Berechnung "1+2" der Wert einer Variable vom Typ "Ganze Zahl" gesetzt, ist der Ergebniswert der MAXIMA-Berechnung "3.0", der Variablenwert wird entsprechend auf "3" als ganzzahliger Wert gesetzt.
  • Zu Berücksichtigen sind mögliche Grenzen des Wertebereichs im gewählten Datentyp. Soll der erweiterte Datenbereich ganzzahliger Werte genutzt werden, sollte die MAXIMA-Berechnung mit einem gültigen Ausdruck entsprechend formuliert werden, beispielsweise "2^53+1;".
  • Ausnahme: Beginnt die "ungültige" Berechnung bereits mit einem float-Befehl, erfolgt nur die Ergänzung mit einem Semikolon gleich zur Ergänzung von "ungültigen" Berechnungen von textbasierten Werten.

 

Editor - Variable Maxima_de.png

Editor - Variable Maxima1_IMS_de.png

Player - Variable Maxima1_de.png

Eingabe im Textfeld

Ansicht im IMS QTI Quellcode

Ansicht in der Vorschau mit Ausgabe der Maxima Berechnung

 

Wert einer Text-Variable

Bei Ermittlung eines textbasierten (Variablen-) Wertes, wird die durch den Autor definierte "ungültige" Berechnung um ein Semikolon ergänzt.

Beispiel

  • Die Eingabe "a" wird in den MAXIMA-Befehl "a;" geändert.
  • Der Datentyp der Variable wird für die Ergebnisausgabe unabhängig der erfolgten MAXIMA-Berechnung beachtet.
  • Wird der Wert der Variable auf den Typ "Text" gesetzt, ist der Ergebniswert der MAXIMA-Berechnung "a", der Variablenwert wird entsprechend auf "a" gesetzt.

 

Editor - Variable Maxima3_de.png

Editor - Variable Maxima3_IMS_de.png

Player - Variable Maxima3_de.png

Eingabe im Textfeld

Ansicht im IMS QTI Quellcode

Ansicht in der Vorschau mit Ausgabe der Maxima Berechnung

 

  • Ist eine Ausgabe eines Terms statt des Berechnungswertes gewünscht, so muss die Eingabe durch Hochkomma eingeschlossen werden. Wird der Wert der Variable beispielsweise mit "1+2" angegeben, ist der Ergebniswert der MAXIMA-Berechnung "1+2", der Variablenwert wird entsprechend auf "1+2" gesetzt.

Editor - Variable Maxima2_de.png

Editor - Variable Maxima2_IMS_de.png

Player - Variable Maxima2_de.png

Eingabe im Textfeld

Ansicht im IMS QTI Quellcode

Ansicht in der Vorschau mit Ausgabe der Maxima Berechnung