### 1.46.4 Ρητός πίνακας `Jordan``:` `rat_jordan`

`rat_jordan` παίρνει ως όρισμα έναn τετραγωνικό πίνακα A μεγέθους n με ακριβείς συντελεστές.
`rat_jordan` επιστρέφει :

- στους τρόπους λειτουργίας `Xcas`, `Mupad` και `TI`
  μια ακολουθία δυο πινάκων : έναν πίνακα P (οι στήλες του P είναι τα ιδιοδιανύσματα εάν ο A είναι διαγωνοποιήσιμος στο σώμα των συντελεστών του) και τον ρητό πίνακα `Jordan` J του A, που είναι ο πιο ανηγμένος πίνακας στο σώμα των συντελεστών του A (ή στο μιγαδικοποιημένο σώμα στον τρόπο λειτουργίας για μιγαδικούς), όπου

  J=P−1AP

- στον τρόπο λειτουργίας `Maple` τον πίνακα `Jordan` J του A. Μπορούμε επίσης να αποθηκεύσουμε σε μια μεταβλητή τον πίνακα P που ικανοποιεί την σχέση J=P−1AP περνώντας ως δεύτερο όρισμα την μεταβλητή αυτή, για παράδειγμα
  `rat_jordan``([[1,0,0],[1,2,-1],[0,0,1]],’``P``’)`

Σχόλιο

- η σύνταξη του `Maple` είναι επίσης έγκυρη σε άλλους τρόπους λειτουργίας, για παράδειγμα, στον τρόπο λειτουργίας `Xcas` εισάγετε
  `rat_jordan``([[4,1,1],[1,4,1],[1,1,4]],’``P``’)`
  Έξοδος :
  `[[6,0,0],[0,3,0],[0,0,3]]`
  μετά ο `P` επιστρέφει
  `[[1,2,-1],[1,0,2],[1,-2,-1]]`
- οι συντελεστές (τα στοιχεία) του P και του J ανήκουν στο σώμα των συντελεστών του A.
  Για παράδειγμα, στον τρόπο λειτουργίας `Xcas`, εισάγετε :
  `rat_jordan([[1,0,1],[0,2,-1],[1,-1,1]])`
  Έξοδος :
  `[[1,1,2],[0,0,-1],[0,1,2]],[[0,0,-1],[1,0,-3],[0,1,4]]`
  Εισάγετε (δείτε και 1.46.10) :
  `companion(pcar([[1,0,1],[0,2,-1],[1,-1,1]],x),x)`
  Έξοδος :
  `[[0,0,-1],[1,0,-3],[0,1,4]]`
  Είσοδος :
  `rat_jordan([[1,0,0],[0,1,1],[1,1,-1]])`
  Έξοδος :
  `[[-1,0,0],[1,1,1],[0,0,1]],[[1,0,0],[0,0,2],[0,1,0]]`
  Είσοδος :
  `factor(pcar([[1,0,0],[0,1,1],[1,1,-1]],x))`
  Έξοδος :
  `-(x-1)*(x```^```2-2)`
  Είσοδος :
  `companion((x```^```2-2),x)`
  Έξοδος :
  `[[0,2],[1,0]]`
- Όταν ο A είναι συμμετρικός και έχει ιδιοτιμές πολλαπλής τάξης, το `Xcas` επιστρέφει ορθογώνια ιδιοδιανύσματα (όχι πάντα με νόρμα ίση με 1) π.χ. ο `tran(P)*P` είναι ένας διαγώνιος πίνακας όπου η διαγώνιος είναι το τετράγωνο της νόρμας ( `norm` ή `l2norm`) των ιδιοδιανυσμάτων, για παράδειγμα :
  `rat_jordan([[4,1,1],[1,4,1],[1,1,4]])`
  επιστρέφει :
  `[[1,2,-1],[1,0,2],[1,-2,-1]],[[6,0,0],[0,3,0],[0,0,3]]`

Εισάγετε στον τρόπο λειτουργίας `Xcas`, `Mupad` ή `TI` :

`rat_jordan([[1,0,0],[1,2,-1],[0,0,1]])`

Έξοδος :

`[[0,1,0],[1,0,1],[0,1,1]],[[2,0,0],[0,1,0],[0,0,1]]`

Εισάγετε στον τρόπο λειτουργίας `Xcas`, `Mupad` ή `TI` :

`rat_jordan([[4,1,-2],[1,2,-1],[2,1,0]])`

Έξοδος :

`[[[1,2,1],[0,1,0],[1,2,0]],[[2,1,0],[0,2,1],[0,0,2]]]`

Στον τρόπο λειτουργίας για μιγαδικούς και `Xcas`, `Mupad` ή `TI` , εισάγετε :

`rat_jordan([[2,0,0],[0,2,-1],[2,1,2]])`

Έξοδος :

`[[1,0,0],[-2,-1,-1],[0,-i,i]],[[2,0,0],[0,2+i,0],[0,0,2-i]]`

Εισάγετε στον τρόπο λειτουργίας `Maple` :

`rat_jordan``([[1,0,0],[1,2,-1],[0,0,1]],’``P``’)`

Έξοδος :

`[[2,0,0],[0,1,0],[0,0,1]]`

μετά εισάγετε :

`P`

Έξοδος :

`[[0,1,0],[1,0,1],[0,1,1]]`