Home Login  |   Contact  |   About Us       Thursday, November 28, 2024   

j0110924 - Back to Home
   Skip Navigation LinksHOME ›  AREAS OF EXPERTISE  #3 ›   Multiple Eigenvalue  ›  ~ Eigenvalue Power



Skip Navigation Links.



"Eigenvalue Solutions"
Power Method
λ =
x =

Matrix A = { { , , }, { , , }, { , , } }



[ Initial Values: {4,3,6},{3,7,1},{6,1,9} ]

IMPLEMENTATION
Power Method

The power iteration is an eigenvalue algorithm. For any given real symmetric matrix A, the algorithm will generate an eigenvalue λ and a non zero eigenvector x, such that,

Ax = λ

The power iteration is probably the simplest method for finding the eigenvalue and eigenvector of a real symmetric matrix. However, it will find only a single eigenvalue (the one with the largest absolute value) and it may converge slowly.

Algorithm Creation

Suppose A is an [n x n] real symmetric matrix and v0 is any vector of length n.

We perform the following operations: (v-vector, A-matrix)

  • Multiply v0 by A.

  • Normalize the new vector Av0 to unit length.

  • Repeat the above process.

The above operations generate a series of vectors, v0, v1, v2,... . It turns out that these vectors converge to the eigenvector that corresponds to the eigenvalue with the largest absolute. The proof to confirm this theory is not shown.

The Power method is a method for finding the largest eigenvalue (in absolute value) and the corresponding eigenvector.

Running this set up produces the results shown above.

We believe the best way to show how our Power algorithm works is by running real-time and showing results ready to compare. The reader can try variations above by entering new values.

Testing the Eigenvalue Power Method

In order to test the Power method as defined above, a new TestPower() static method has been added and executed. Supporting code and methods are not shown.

           static void TestPower();
              {
                 ListBox1.Items.Clear();
                 ListBox2.Items.Clear();
                 double[] x;
                 MatrixR A = new MatrixR(new double[,] { { t1, t2, t3 }, { t4, t5, t6 },
                  { t7, t8, t9 } });
                 VectorR x;
                 double lambda;
                 Eigenvalue.Power(A, 1e-5, out x, out lambda);
                 ListBox1.Items.Add(" " + lambda);
                 ListBox2.Items.Add(" " + x);
              }



Other Implementations...


Object-Oriented Implementation
Graphics and Animation
Sample Applications
Ore Extraction Optimization
Vectors and Matrices
Complex Numbers and Functions
Ordinary Differential Equations - Euler Method
Ordinary Differential Equations 2nd-Order Runge-Kutta
Ordinary Differential Equations 4th-Order Runge-Kutta
Higher Order Differential Equations
Nonlinear Systems
Numerical Integration
Numerical Differentiation
Function Evaluation

   Quotes

Consulting Services - Back to Home


Home

Home Math, Analysis,
  expertise..."

EIGENVALUE
SOLUTIONS...


> Rayleigh-Quotient Method

> Cubic Spline Method

 

Applied Mathematical Algorithms

Home

ComplexFunctions

Home

NonLinear
Home

Differentiation
Home

Integration
About Us


KMP Software Engineering is an independent multidisciplinary engineering consulting company specializing in mathematical algorithms.

      (About Us) →
Areas of
Expertise


SpecialFunctions
VectorsMatrices
OptimizationMethods
ComplexNumbers
Interpolation
CurveFitting
NonLinearSystems
LinearEquations
DistributionFunctions
NumericalDifferentiation
NumericalIntegration
DifferentialEquations
Smalltalk
FiniteBoundary
Eigenvalue
Graphics
Understanding
Mining


MiningMastery
MineralNews
MineralCommodities
MineralForum
Crystallography
Services


NumericalModeling
WebServices
MainframeServices
OutsourceServices

LINKED IN
MINE REVIEW(by G.Pacheco)
Brand





Home

Login

Contact
Since 2006 All Rights Reserved  © KMP Software Engineering LINKS | PRIVACY POLICY | LEGAL NOTICE