Difference between revisions of "ApCoCoA-1:Num.EigenValues"

From ApCoCoAWiki
(Added ApCoCoAServer note)
(Updated the docu)
Line 1: Line 1:
 
   <command>
 
   <command>
     <title>Numerical.EigenValues</title>
+
     <title>Num.EigenValues</title>
     <short_description>eigenvalues of a matrix</short_description>
+
     <short_description>Computes the eigenvalues of a matrix</short_description>
 
<syntax>
 
<syntax>
$numerical.EigenValues(A:Matrix):List
+
Num.EigenValues(A:Matrix):[B:Matrix]
 
</syntax>
 
</syntax>
 
     <description>
 
     <description>
Line 9: Line 9:
  
 
This function returns a matrix, containing numerical approximation to A's eigenvalues.  
 
This function returns a matrix, containing numerical approximation to A's eigenvalues.  
Therefore the input matrix A has to be quadratic!
+
The input matrix A has to be quadratic!
It is implemented in the ApCoCoA server, so you need a running server. It was not implemented in version 0.99.4 or previous. Also please keep in mind this method is based on blas/Lapack's eigenvalue solver and uses floating point arithmetic. This is not an exact, algebraic method!
+
The output contains a matrix B. Each B's columns describe one of the eigenvalues of A. The first row of B contains the real part of the eigenvalues, the second row the imaginary ones.  
The output contains a matrix B. Each of the columns in B describe one of the eigenvalues of A. The first row of B contains the real part of the eigenvalues, the second row the imaginary ones.  
 
  
 
<example>
 
<example>
 
A:=Mat([[1,2,7,18],[2,4,9,12],[23,8,9,10],[7,5,3,2]]);
 
A:=Mat([[1,2,7,18],[2,4,9,12],[23,8,9,10],[7,5,3,2]]);
Numerical.EigenValues(A);
+
Dec(Num.EigenValues(A),3);
-- CoCoAServer: computing Cpu Time = 0.0049
+
-- CoCoAServer: computing Cpu Time = 0.015
 
-------------------------------
 
-------------------------------
 
Mat([
 
Mat([
   [4077234895954899/140737488355328, -3850002255576291/281474976710656, 3186113456591853/9007199254740992, 3186113456591853/9007199254740992],
+
   ["28.970", "-13.677", "0.353", "0.353"],
   [0, 0, 6871934657603045/2251799813685248, -6871934657603045/2251799813685248]
+
   ["0", "0", "3.051", "-3.051"]
 
])
 
])
 
-------------------------------
 
-------------------------------
 +
 
</example>
 
</example>
 
     </description>
 
     </description>
Line 35: Line 35:
 
       <type>cocoaserver</type>
 
       <type>cocoaserver</type>
 
     </types>
 
     </types>
     <key>heldt</key>
+
     <key>Num.EigenValues</key>
     <key>numerical.eigenvalues</key>
+
     <key>EigenValues</key>
 
     <wiki-category>Package_Numerical</wiki-category>
 
     <wiki-category>Package_Numerical</wiki-category>
 
   </command>
 
   </command>

Revision as of 13:39, 30 March 2009

Num.EigenValues

Computes the eigenvalues of a matrix

Syntax

Num.EigenValues(A:Matrix):[B:Matrix]

Description

Please note: The function(s) explained on this page is/are using the ApCoCoAServer. You will have to start the ApCoCoAServer in order to use

it/them. Please also note that you will have to use an ApCoCoAServer with enabled BLAS/LAPACK support.

This function returns a matrix, containing numerical approximation to A's eigenvalues.

The input matrix A has to be quadratic!

The output contains a matrix B. Each B's columns describe one of the eigenvalues of A. The first row of B contains the real part of the eigenvalues, the second row the imaginary ones.

Example

A:=Mat([[1,2,7,18],[2,4,9,12],[23,8,9,10],[7,5,3,2]]);
Dec(Num.EigenValues(A),3);
-- CoCoAServer: computing Cpu Time = 0.015
-------------------------------
Mat([
  ["28.970", "-13.677", "0.353", "0.353"],
  ["0", "0", "3.051", "-3.051"]
])
-------------------------------

See also

Introduction to CoCoAServer

Numerical.QR

Numerical.SVD

Numerical.EigenValuesAndVectors

Numerical.EigenValuesAndAllVectors