EvaluateInSymja

Aus JACK Wiki
Version vom 22. Mai 2017, 12:23 Uhr von Mbuttgereit (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „===Beschreibung=== Mit der Funktion ''EvaluateInSymja'' lassen sich Befehle explizit in dem Computer Algebra System ''Symja'' auswerten. Das Argument der Funkt…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Beschreibung

Mit der Funktion EvaluateInSymja lassen sich Befehle explizit in dem Computer Algebra System Symja auswerten. Das Argument der Funktion ist ein String, welcher Symja übergeben wird. Es kann sich also auch um eine Kette von Befehlen handeln, die durch Semikolons getrennt sind.

Syntax

Eine Variable Test wird dann folgendermaßen beschrieben:

 <option name="Test" type="Typ" cas="Evaluator" value="evaluateInSymja('argument')" />

Parameter

  • Typ - Entspricht dabei dem Typen der Variable.
  • argument - Symja-Befehl

Symja-Syntax

  • Identifiers sind vom Benutzer gewählte oder in Symja integrierte Namen für Variablen, Funktionen oder Konstanten. Dabei wird nur bei Identifiers, die aus lediglich einem Buchstaben bestehen, zwischen Groß- und Kleinschreibung unterschieden, bei allen anderen nicht. Bei der Ausgabe beginnen alle integrierten Funktionen und Konstanten mit einem Großbuchstaben.
  • Operatoren werden zum Erzeugen mathematischer Ausdrücke verwendet. Symja kennt die gängigen mathematischen Operatoren: Addition +, Subtraktion -, Skalarmultiplikation *, Division /, Potenzieren ^, Matrixmultiplikation .
  • Strings werden mit Anführungszeichen angegeben.
  • Ausdrücke können in Symja durch Semikolons getrennt werden. Bei der Eingabe 100!;32+8+2 werden zwar beide Ausdrücke ausgewertet, allerdings nur das zweite Ergebnis zurückgegeben: 42. Es gibt die folgenden Typen von Ausdrücken:
Typ Beschreibung Eingabebeispiel
Integer Ganzzahl 42
Rational rationale Zahl 13/17
Complex komplexe Zahl 2+I*(1/3)
Real doppelte Genauigkeit 0.5
Complex Real komplexe Zahl mit doppelter Genauigkeit 0.5-I*0.25
Evaluation Precedence Auswertungspriorität mit (...) (a+b)*c
Lists Durch Kommata getrennt Liste von Elementen in geschweiften Klammern {...} {a, b, c, d}
Vectors Vektoren sind wie Listen, dürfen jedoch keine Unterlisten beinhalten {...} {1, 2, 3, 4}
Matrices Matrizen enthalten die einzelnen Reihen als Unterlisten. { {1, 2}, {3, 4} }
Predefined Functions Vordefinierte Funktionen beginnen mit einem Großbuchstaben, die Argument werden in runden Klammern ( ... ) geschrieben. Sin(0)PrimeQ(13)
Predefined Constants Vordefinierte Konstanten beginnen mit einem Großbuchstaben. DegreeEPiFalseTrue
Userdefined variables Identifiers bzw. Bezeichner, denen man einen Wert zuweisen möchte, beginnen mit $ $a=42
Userdefined rules Identifiers bzw. Bezeichner, denen man einen Vorschrift zuweisen möchte, beginnen mit $ $f(x_,y_):={x,y}
Pattern Symbols Identifiers/Bezeichner, denen man einen Wert zuweisen möchte, beginnen mit $ $a=42


Beispiele

Weitere Links