EvaluateInSage

Aus JACK Wiki
Zur Navigation springen Zur Suche springen

Beschreibung

Mit der Funktion EvaluateInSage lassen sich standardmäßige Konstruktionen der Linearen Algebra auswerten.

Syntax

Eine Variable Test wird dann folgendermaßen beschrieben:

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

Parameter

  • Typ - Entspricht dem Typen der Variable.
  • argument - Sage Befehl
argument Typ Beschreibung
matrix(QQ,n,1,[1,2,3]) matrix Vektor mit n Einträgen in Q.
matrix(QQ,n,m,[[1,2,3],[4,5,6],[7,8,9]]) matrix nxm-Matrix mit Einträgen in Q. Einträge werden Zeilenweise angegeben.
identity_matrix(QQ,n) matrix nxn-Einheitsmatrix _

--Tabelle--

Sei nun eine 3x3-Matrix variabel namens A erstellt.

<option name="A" type="matrix" cas="Evaluator" value="evaluateInSage('matrix(QQ,3,3,[[1,2,3],[4,5,6],[7,8,9]])')" />

--Tabelle--

Beispiele

<variables>
  <option name="A" type="matrix" cas="Evaluator" value="evaluateInSage('matrix(QQ,3,3,[[0,1,0],[0,0,1],[-2,1,2]])')" />
  <option name="rang" type="single" cas="Evaluator" value="evaluateInSage('[var=A].rank()')" />
</variables>

Erzeugt eine Variable A vom Typ matrix und bezieht sich auf eine 3x3-Matrix mit Einträgen in Q. Die genauen Einträge der Matrix stehen in eckigen Klammern. Außerdem wird eine Variable rang vom Typ single erzeugt, welche den Rang der Variable A berechnet. In diesen Beispielen wäre A=(Matrix) und rang=3.

<variales>
  <option name="v1" type="matrix" cas="Evaluator" value="evaluateInSage('matrix(QQ,3,1,[1,0,0])')" />
  <option name="v2" type="matrix" cas="Evaluator" value="evaluateInSage('matrix(QQ,3,1,[0,1,0])')" />
  <option name="v3" type="matrix" cas="Evaluator" value="evaluateInSage('matrix(QQ,3,1,[0,0,1])')" />
  <option name="BasismatrixRang" type="single" cas="Evaluator" value="evaluateInSage('([var=v1].augment([var=v2]).augment([var=v3])).rank())')" />
  <option name="basisTester" value="ifthenelse('[var=BasismatrixRang]==3','1','0')" />
</variables>

Prüft ob die Vektoren <math>v_1, v_2</math> und <math>v_3</math> eine Basis des R³ bilden.

Weitere Links