Mit dieser Dokumentation stelle ich in GeoGebra CAS mögliche Verfahren zur Beschreibung und Darstellung der Objekte der analytischen Geometrie zusammen. Mittels CAS möchte ich die im schriftlichen Bearbeiten von Aufgabenstellungen der analytischen Geometrie üblichen Verfahren anwenden, auch wenn es für deren Lösung einen GeoGebra-Befehl geben sollte. Ich möchte damit die Überprüfung und Visualisierung eines Lösungsweges inklusive aller Zwischenschritte möglich machen.
Bei der Umsetzung von mathematischen Sachverhalten für GeoGebraCAS treten Unterschiede in der Schreibweise auf Papier und im Programm auf.
Ich baue die Aufgabenblätter so auf, dass sie nach Möglichkeit "durchrechnen": Ein Ergebnis wie x=2 übertrage in die Gleichung x+y+z = 0 mittels Ersetze-Befehl damit bei veränderten Aufgabenparametern ein sich dynamisch anpassendes Aufgabenblatt entsteht.
Wer von einen CAS zu GGB wechselt wird sich am meisten darüber wundern, dass Variablen nur einmal belegt/definiert weren können, aber nicht geändert/überschrieben werden können. Das hat eine ganz eigenwillige Programmierung zufolge (z.B. kann man nicht auf einem Matrixfeld rechnen, sondern erzeugt immer neue Matrizen mit den zu ändernden Elementen)
Aufgrund der exzessiven Produktpflege werden immer wieder Funktionalitäten verschlimmbessert oder verschwinden komplett - machmal kann ein Bug-Report Abhilfe schaffen.
[list][*]Eingabehilfen: In der Zeile Input werden nach 3 Zeichen Auswahlisten für die passenden Befehlsfunktionen angezeigt. Die Platzhalter für die Argumente beschreiben welche Datentypen erwartet werden, z.B. Plane( <Point>, <Vector>, <Vector> ) - die Auswahl eines dieser Muster verlangt aber trotzdem von User, das er Sorge dafür trägt das auch der verlangte Datentyp übergeben wird! [/*]
[*]LISTEN indexieren, statt umständlich mit ELEMENT(LISTE,nr) zu hantierten konnte man einfach LISTE(nr) schreiben um Element nr auszulesen - diese Funktionalität scheint nicht gesichert. [/*][*]→Es ist allerdings fast unmöglich bestehende Anwendungen umzuschreiben - müssten komplett neu aufgebaut werden...[/*]
[*]VEKTOR/PUNKT Es entsteht der Eindruck, dass ggb keinen Unterschied macht (z.B. Skalarprodukt) - das ist aber nicht so, besonders bei Matrix*Vektor(Punkt)+Vektor(Punkt) ist es bisweilen schwierig vernünftige/konsistente Ergebnisse zu erhalten[/*]
[*]VEKTOR/PUNKT/LISTE Vektoren/Punkte sind beschränkt auf die grafische Darstellung (x,y),z). Zur Bearbeitung höherdimensionaler Vektorräume muss auf Listen/Matrizen-Formen umgestellt werden und die notwendigen Transformationen werden nicht unterstützt. Es sind zum Teil recht aufwändige Konstruktionen notwendig.[/*]
[*]MATRIX Nur rudimentäre Unterstützung für Matrizen-Operationen. Indizierung von Matrixelementen a(i,j) nur mittels ELEMENT() möglich - macht komplexe Matrixterme sehr unübersichtlich. Spaltenoperationen (Indizierung bzw. einfügen/entfernen) werden nicht unterstützt.[/*]
[*]Die Stabilität lässt zum Teil (Classic CAS) sehr zu wünschen übrig - fast jedes Update bring neue Unwägbarkeiten (z.B. werden x(),y(),z()Koordinatenfunktionen ab einer bestimmten Version immer mal wieder in eine Multiplikation x*() aufgelöst - es kann auch passieren, dass man plötzlich vor einem leeren CAS-Fenster sitzt oder das CAS keine Eingaben mehr annimmt- usw. [/*]
[/list]
Funktionen mit unbestimmten Variablen müssen unbedingt mittels "Behalte Eingabe", bzw. "Keep Input", eingegeben werden, damit die Abhängigkeiten nicht ausgewertet werden (was wird multipliziert: Skalar oder Vektor), soll erst zur Laufzeit mit konkreten Werten entschieden werden:
Beispiel:
[math]lsg(a,b,c):=Löse(a x^2+b x +c=0) [/math] [Alt+Eingabe] [icon]/images/ggb/toolbar/mode_keepinput.png[/icon]
lsg(1,2,-3) [Strg+Eingabe] Berechne Numerisch
Es ist unbedingt darauf zu achten, dass auch in den verwendeten Variablen und Übergabeparameter KEINE Konflikte mit existierenden/anderweitig verwendeten Variablen entstehen! Insbesondere ist auf unterschiedliche Namen für Argument bzw. Sequence-Index-Variablen bei verschachtelten Funktionsaufrufen
a(aa):=i(1...n), b(bb):=j(1...n) -> a(b(...))
zu achten
GGB6 (ggb App)
CAS ist auf Touch-Geräten und in der Online App nur eingeschränkt nutzbar, z.B. gibt es kein Copy&Paste. Das Scrollen des CAS-Fensters ist sehr fragil - Touch Zeilennummer, erst dann versuche das Fenster zu ziehen. Achtung: Click-Kopie-Feature - beim Editieren von CAS-Zeilen bleibt die Arbeitszeile aktiv und wird evtl. beim nächsten Touch in eine leere/belegte Zeile kopiert - am besten man tippt nach jedem Edit einer Zeile in Grafik-Fenster um den Vorgang abzuschließen (ggb5/ggb6)
Buch II ====>
[url=https://www.geogebra.org/m/BpqJ28eP] CAS 4 lineare Gleichungssysteme[/url]