Search   Memberlist   Usergroups
 Page 1 of 1 [8 Posts]
Author Message
Skunk
science forum beginner

Joined: 19 Jul 2006
Posts: 2

Posted: Wed Jul 19, 2006 10:19 pm    Post subject: Power Method and negative eigenvalues

Hi,

I implemented the power method algorithm in C++ in order to find the
leading eigenvalue of a real square matrix and its associated eigenvector.
My problem is that this method compute the eigenvalue with the largest
*absolute* value and that i would it to compute the largest *positive*
eigenvalue.

Is there a possiblity to adapt the power method to find the largest
positive eigenvalue ? Any ideas i can explore or should i use another
algorithm ?

Thank you very much !
Roy Stogner
science forum beginner

Joined: 13 Jun 2005
Posts: 38

Posted: Thu Jul 20, 2006 3:22 am    Post subject: Re: Power Method and negative eigenvalues

On Thu, 20 Jul 2006 00:19:11 +0200, Skunk wrote:

 Quote: Is there a possiblity to adapt the power method to find the largest positive eigenvalue ? Any ideas i can explore or should i use another algorithm ?

The first idea that comes to mind: if the largest magnitude negative
eigenvalue of A is -g, can you use the power method to find the largest
magnitude eigenvalue of (A + gI) then subtract g to get the corresponding
eigenvalue of A?
---
Roy Stogner
Gottfried Helms
science forum Guru

Joined: 24 Mar 2005
Posts: 301

Posted: Thu Jul 20, 2006 7:27 am    Post subject: Re: Power Method and negative eigenvalues

Am 20.07.2006 00:19 schrieb Skunk:
 Quote: Hi, I implemented the power method algorithm in C++ in order to find the leading eigenvalue of a real square matrix and its associated eigenvector. My problem is that this method compute the eigenvalue with the largest *absolute* value and that i would it to compute the largest *positive* eigenvalue. Is there a possiblity to adapt the power method to find the largest positive eigenvalue ? Any ideas i can explore or should i use another algorithm ? Thank you very much ! Would it be possible to compute the matrix-exponential EA of A

first? Then the negative eigenvalues of A transform to the
lowest eigenvalues of EA. Then find the highest eigenvalue
of EA with the power-method and take its log.

Just sketch, no warranty, that this is efficient ...

Gottfried Helms
Jeremy Watts
science forum Guru Wannabe

Joined: 24 Mar 2005
Posts: 239

Posted: Thu Jul 20, 2006 8:47 am    Post subject: Re: Power Method and negative eigenvalues

"Skunk" <skunk@ag.com> wrote in message
news:44beafcc\$0\$12612\$5402220f@news.sunrise.ch...
 Quote: Hi, I implemented the power method algorithm in C++ in order to find the leading eigenvalue of a real square matrix and its associated eigenvector. My problem is that this method compute the eigenvalue with the largest *absolute* value and that i would it to compute the largest *positive* eigenvalue. Is there a possiblity to adapt the power method to find the largest positive eigenvalue ? Any ideas i can explore or should i use another algorithm ? Thank you very much !

why not just use the QR algorithm to find the whole spectrum and then search
it to find the largest positive eigenvalue?
iandjmsmith@aol.com
science forum beginner

Joined: 13 Sep 2005
Posts: 15

Posted: Thu Jul 20, 2006 8:48 am    Post subject: Re: Power Method and negative eigenvalues

Skunk wrote:

 Quote: Hi, I implemented the power method algorithm in C++ in order to find the leading eigenvalue of a real square matrix and its associated eigenvector. My problem is that this method compute the eigenvalue with the largest *absolute* value and that i would it to compute the largest *positive* eigenvalue. Is there a possiblity to adapt the power method to find the largest positive eigenvalue ? Any ideas i can explore or should i use another algorithm ? Thank you very much !

In
there is some discussion on finding the largest positive eigen value of
a real symmetric matrix.

Ian Smith
Skunk
science forum beginner

Joined: 19 Jul 2006
Posts: 2

Posted: Thu Jul 20, 2006 10:29 am    Post subject: Re: Power Method and negative eigenvalues

Roy Stogner wrote:
 Quote: On Thu, 20 Jul 2006 00:19:11 +0200, Skunk wrote: Is there a possiblity to adapt the power method to find the largest positive eigenvalue ? Any ideas i can explore or should i use another algorithm ? The first idea that comes to mind: if the largest magnitude negative eigenvalue of A is -g, can you use the power method to find the largest magnitude eigenvalue of (A + gI) then subtract g to get the corresponding eigenvalue of A? --- Roy Stogner

It works ! Simple and effective, many thanks !
Peter Spellucci
science forum Guru

Joined: 29 Apr 2005
Posts: 702

Posted: Thu Jul 20, 2006 11:14 am    Post subject: Re: Power Method and negative eigenvalues

In article <44beafcc\$0\$12612\$5402220f@news.sunrise.ch>,
Skunk <skunk@ag.com> writes:
 Quote: Hi, I implemented the power method algorithm in C++ in order to find the leading eigenvalue of a real square matrix and its associated eigenvector. My problem is that this method compute the eigenvalue with the largest *absolute* value and that i would it to compute the largest *positive* eigenvalue. Is there a possiblity to adapt the power method to find the largest positive eigenvalue ? Any ideas i can explore or should i use another algorithm ? Thank you very much !

not necessarily the best idea but simple:

with a pure power method code: compute the maxnorm of A
max_i sum_j abs(a(i,j) = N
add N to the diagonal elements of A. Now there are no negative
eigenvalues and the largest positive one is shifted by N to the right.
this might slow down convergence .
or, with inverse iteration: subtract N, use inverse iteration with shift zero
to get the reciprocal of the absolute smallest eigenvalue of the shifted
i.e. 1/(lambda_max-N)
hth
peter
Arnold Neumaier
science forum Guru

Joined: 24 Mar 2005
Posts: 379

Posted: Thu Jul 20, 2006 12:46 pm    Post subject: Re: Power Method and negative eigenvalues

Skunk wrote:
 Quote: Hi, I implemented the power method algorithm in C++ in order to find the leading eigenvalue of a real square matrix and its associated eigenvector. My problem is that this method compute the eigenvalue with the largest *absolute* value and that i would it to compute the largest *positive* eigenvalue. Is there a possiblity to adapt the power method to find the largest positive eigenvalue ? Any ideas i can explore or should i use another algorithm ?

Try the Lanczsos algorithm. It is much more efficient than the power method.

Arnold Neumaier

 Display posts from previous: All Posts1 Day7 Days2 Weeks1 Month3 Months6 Months1 Year Oldest FirstNewest First
 Page 1 of 1 [8 Posts]
 The time now is Tue Mar 26, 2019 4:35 am | All times are GMT
 Jump to: Select a forum-------------------Forum index|___Science and Technology    |___Math    |   |___Research    |   |___num-analysis    |   |___Symbolic    |   |___Combinatorics    |   |___Probability    |   |   |___Prediction    |   |       |   |___Undergraduate    |   |___Recreational    |       |___Physics    |   |___Research    |   |___New Theories    |   |___Acoustics    |   |___Electromagnetics    |   |___Strings    |   |___Particle    |   |___Fusion    |   |___Relativity    |       |___Chem    |   |___Analytical    |   |___Electrochem    |   |   |___Battery    |   |       |   |___Coatings    |       |___Engineering        |___Control        |___Mechanics        |___Chemical

 Topic Author Forum Replies Last Post Similar Topics Base Conversion - Negative Base Tapas Bose num-analysis 0 Tue Aug 03, 2010 8:47 pm Help in identifying a numerical method Don11135 num-analysis 2 Thu Jul 20, 2006 8:56 pm troubles in determination of specific surface area(air pe... eos Chem 0 Thu Jul 20, 2006 10:05 am troubles in determination of specific surface area(air pe... eos Chem 0 Thu Jul 20, 2006 10:02 am possible to use Generalized Method of Moments for this pr... comtech Math 1 Thu Jul 20, 2006 12:49 am