dh-Materialien
Maple   
Übersicht
 

Datentypen
(ausgewählte Datentypen)


algebraic

Der Datentyp algebraic umfasst die Datentypen rational, integer, fraction, float, complex, polynom, name, symbol, indexed, series, uneval sowie `+``*``^``!` und  `.`

Beispiele für algebraische Ausdrücke:
  a*b, -34, 34.007, ln(2), sqrt(7);
  z/n + 1, x^n, f(x), A[i], infinity

Datentyp, mit dem rationale Zahlen dargestellt werden.
Der Datentyp rational umfasst die Datentypen integer und fraction.
Eine rationale Zahl ist gleichzeitig auch vom Typ numeric.

Beispiele für rationale Zahlen:
  -67, -3, -1/2, 0, 2/3, 1/infinity

Datentyp, mit dem ganze Zahlen dargestellt werden.

Beispiele für ganze Zahlen:
  -67, -3, 0, 1, 2345, 100000000

type(-67, integer);
      true

Maximale Länge einer in Maple darstellbaren integer-Zahl (systemabhängig):
kernelopts(maxdigits);
     268435448

convert(45, float);
     45.

Mögliche Eigenschaften von integer-Zahlen:

 even gerade ganze Zahl
 odd ungerade ganze Zahl
 posint positive ganze Zahl
 negint negative ganze Zahl
 nonposint nicht-positive ganze Zahl
 nonnegint nicht-negative ganze Zahl  
 prime Primzahl

type (7, prime);
      true

Datentyp, mit dem Brüche dargestellt werden.

Beispiele für Brüche:
  -2/3, -1/1000, 1/2, 2/4, 675/13

type(-2/3, fraction); 
      true
convert(1/3, float);
   0.3333333333

Datentyp, mit dem Gleitkommazahlen dargestellt werden.
Eine Gleitkommazahl ist gleichzeitig auch vom Typ numeric.

Beispiele für Gleitkommazahlen:
  -45.046, -0.007, 2367.6499, 0.79E23

type(0.46, float);
      true
convert(0.33, fraction);
  

Mögliche Eigenschaften von Gleitkommazahlen:

 positive positive reelle Zahl
 negative negative reelle Zahl
 nonnegative nicht-negative reelle Zahl 

Datentyp, mit dem komplexe Zahlen dargestellt werden.

Beispiele für komplexe Zahlen:
  I, -3*I, 2+5*I, a+b*I

type(2+5*I, complex);
      true
type(a+b*I, complex(name));
      true
type(1/2-3*I, complex(rational));
      true

Einige mögliche Eigenschaften komplexer Zahlen:

 real reelle Zahl
 realcons reelle Konstante
 imaginary Realteil ist gleich 0
 GaussianInteger Real- und Imaginärteil sind vom Typ integer
 NumeralNonZero von 0 verschiedene komplexe Zahl

Datentyp, mit dem Polynome dargestellt werden.

Beispiele für Polynome:
  4*x^3+x^2-7, 2*x^5, a*x^4+b*x

Mögliche Eigenschaften von Polynomen:

 polynom(integer) Polynom, nur mit ganzen Koeffizienten
 polynom(rational)   Polynom, nur mit rationalen Koeffizienten

type(1/2*x^3 + 2*x, polynom(rational));
      true

Datentyp, mit dem Bezeichner dargestellt werden.
Der Datentyp name umfasst die Datentypen symbol und indexed;

Beispiele für Bezeichner:
  x3, P||i, _envVariable, y~, a[10]

type(x3, name);
      true
type(etwas(x), name);
      true
convert(name, string);
      "name"

Datentyp, mit dem symbolische Bezeichner dargestellt werden.

Beispiele für symbolische Bezeichner:
  x3, P||i, _envVariable, y~, Pi

type(x3, symbol);
      true

Es gibt sieben symbolische Konstanten: false, gamma, infinity, true, Catalan, FAIL, Pi.

Datentyp, mit dem indizierte Bezeichner dargestellt werden.

Beispiele für indizierte Bezeichner:
  a[10], B[2][3]

type(a[10], indexed);
      true
 

Datentyp, mit dem Reihenentwicklungen dargestellt werden.

Beispiele für Reihenentwicklungen:
  taylor(sqrt(x), x=2, 3), series(x+1/x, x=1, 4)

type(taylor (sqrt(x), x = 2, 3), series);
      true

Datentyp, mit dem unbewertete Ausdrücke dargestellt werden.

Beispiele für unbewertete Ausdrücke:
  'x+y', '3',
nicht zu verwechseln mit "x+y" oder "3" vom Typ string.

type(’’x+y’’, uneval);
      true
type("x+y", string);
      true
type(x+y, algebraic);
      true
a:= 3:
  a;

      3
a:= ’a’:
  a;

      a

Datentyp, mit dem Summenterme dargestellt werden.

Beispiele für Summenterme:
  x+y, x+3, x*y + z^2

type(x+y, `+`);
      true

Datentyp, mit dem Produktterme dargestellt werden.

Beispiele für Produktterme:
  x*y, 2*(a+b)*z

type(x*y, `*`);
      true

Datentyp, mit dem Potenzterme dargestellt werden.

Beispiele für Potenzterme:
  x^n, 3^(n+1)

type(x^n, `^`);
      true

Datentyp, mit dem Fakultätsterme dargestellt werden.

Beispiele für Fakultätsterme:
  x!, (n-4)!

type(x!, `!`);
      true

Datentyp, mit dem (nicht-kommutative) Punktproduktterme dargestellt werden.

Beispiele für Punktproduktterme:
  a.b, (x+1).y

type(a.b, `.`);
      true
evalb(a.b = b.a);
      false


boolean

Der Datentyp boolean umfasst die Datentypen logical und relation.


Datentyp, mit dem Boole'sche Ausdrücke unter Benutzung der logischen Operatoren and, or, xor, implies und not dargestellt werden.

Beispiele für logische Ausdrücke:
  p and q or r, p implies q, not p

type(ToBe or NotToBe), logical);
      true

Datentyp, mit dem Boole'sche Ausdrücke unter Benutzung der Vergleichsoperatoren  <, <=, >, >=, = und <> dargestellt werden.

Beispiele für vergleichende Ausdrücke:
x > 5, x < y

type(5 < 3), relation);
      true

Es gibt drei logische Konstanten: true, false und FAIL.

        


string

Der Datentyp string dient zur Darstellung von Zeichenketten.

Beispiele für Zeichenketten:
  "Maple 2019", "CAS", "", "  ", "123"

type("12345"), string);
      true
type("12345"), integer);
      false


array

Der Datentyp array dient zur Darstellung von mehrdimensionalen Feldern.

Beispiele für Felder:
  array(2..4, 1..2, 0..5), array([[a, b], [c, d]])

type(array(2..4, 1..2) ), array);
      true
a:= array(2..4, 1..2) ) :
  print(a);

   
feld:= array([[a, b], [c, d]]);
   

  matrix

Datentyp, mit dem Matrizen dargestellt werden.
Matrizen sind in Maple 2-dimensionale Felder mit Zeilen und Spalten, die stets ab 1 indiziert sind.

Beispiele für Matrizen:
  array(1..3, 1..3), matrix([[a, b], [c, d]]), matrix(2, 2,[5,4,6,3])

type(array(1..3, 1..3), matrix);
      true

Einige mögliche Eigenschaften von Matrizen:

 SquareMatrix quadratische Matrix
 symmetric symmetrische Matrix
 antisymmetric antisymmetrische M.
 ElementaryMatrix  Elementarmatrix
 IdentityMatrix identische Matrix
 triangular Dreiecksmatrix
 UpperTriangular obere Dreiecksmatrix
 LowerTriangular untere Dreiecksmatrix
 diagonal Diagonalmatrix
 ScalarMatrix Skalarmatrix
 NullMatrix Nullmatrix

  vector

Datentyp, mit dem 1-dimensionale Felder dargestellt werden.

Beispiele für 1-dimensionale Felder:
  array(1..5), array([x1, x2, x3], vector([2, 3, 4]

type(array(1..5), vector);
      true


Vector

Der Datentyp Vector dient zur Darstellung von Vektoren

.
  Vector[row]

Datentyp, mit dem Zeilenvektoren dargestellt werden.

Beispiele für Zeilenvektoren:
<5| 4| -6>, Vector[row]([5, 4, -6])

type(<5| 4| -6>, Vector[row]);
      true
<5| 4| -6| 3>;
     [5, 4, -6, 3]

  Vector[column]

Datentyp, mit dem Spaltenvektoren dargestellt werden.

Beispiele für Spaltenvektoren:
  <5, 4, -6>, Vector[column]([5, 4, -6]), Vector([5, 4, -6])

type(<5, 4, -6>, Vector[column]); 
      true
<5, 4, -6, 3>;
 


set

Der Datentyp set dient zur Darstellung von (endlichen) Mengen.
Die Elemente einer Menge sind nicht geordnet.

Beispiele für Mengen:
  {Element, nochnElement}, {}

type({}, set);
      true


list

Der Datentyp list dient zur Darstellung von (endlichen) Listen.
Die Elemente einer Liste sind geordnet.

Beispiele für Listen:
  [erstesElement, zweitesElement], []

type([], list);
      true


exprseq

Der Datentyp exprseq dient zur Darstellung von (endlichen) Folgen.

Beispiele für Folgen:
  seq(i, i = 1..10), seq (a[i], i = 5..25), NULL

whattype(seq (i, i = 1..10));
     exprseq


procedure

Der Datentyp procedure dient zur Darstellung von Prozeduren und Funktionen.

Beispiele für Prozeduren bzw. Funktionen:
  (proc(n) (n+1)! end), (x-> x^2), sin

type((proc(n) (n+1)! end), procedure);
      true
type(sin, procedure);
      true

Einige mögliche Eigenschaften von Funktionen:

 EvenMap gerade Funktion
 OddMap ungerade Funktion
 unary unäre Funktion
 binary binäre Funktion
 continuous stetige Funktion
 differentiable   differenzierbare Funktion
 monotonic monotone Funktion auf den reellen Zahlen
 operator Abbildung einer Funktion auf eine Funktion


function

Der Datentyp function dient zur Darstellung von Funktionstermen.

Beispiele für Ausdrücke vom Typ function:
  sin(x), f(x), (x -> sqrt(x))(x), n!
nicht  x^2 oder 3!

type(sin(x), function);
      true
type(etwas(x), function);
      true

Mögliche Eigenschaften von Funktionstermen:

 evenfunc (x)  gerader Funktionsterm
 oddfunc (x) ungerader Funktionsterm 

type(x^4 - 5*x^2, evenfunc(x));
      true
type(sin(x), oddfunc(x));
      true