opts.issym in eigs() - meaning

조회 수: 4 (최근 30일)
Ingo
Ingo 2012년 1월 2일
답변: Christine Tobler 2016년 8월 30일
Hello everyone,
I'm having trouble understanding the meaning of an option. In eigs(), one can set the option opts.issym, which by default is 0.
Am I right to understand, that using opts.issym=1 will tell Matlab that the matrix is symmetrical? If so, will this significantly increase the speed for large matrices or what effects does using this have?
Greetings
Ingo Bürk
  댓글 수: 1
Ingo
Ingo 2012년 1월 2일
I tried it for 3000-by-3000 matrices and if anything, it made eigs() a little bit slower. Makes me wonder what this option is good for at all?

댓글을 달려면 로그인하십시오.

채택된 답변

Christine Tobler
Christine Tobler 2016년 8월 30일
The options opts.issym and opts.isreal are only meant to be used when passing in a function handle for A.
When a matrix A is passed in, the options opts.issym and opts.isreal are ignored, and instead issymmetric(A) and isreal(A) are used.
For symmetric matrices, there a better algorithm is used if issymmetric(A) is true. This means that if a matrix is symmetric up to round-off error (check issymmetric(A)), it can be better to call eigs( (A + A')/2, ...) instead, as this will use the symmetric algorithm.

추가 답변 (1개)

Walter Roberson
Walter Roberson 2012년 1월 2일
You get the 'la', 'sa', 'be' options for real symmetric.
I recall from my research last year that there are algorithms that depend upon the matrix being real and symmetric. I have not, however, checked out the references to figure out which algorithm is used.
  댓글 수: 1
Ingo
Ingo 2012년 1월 2일
Thanks.
I am looking for smallest eigenvalues, but instead of 'la' and so on I'm using sigma=eps, following Example 4 on the Matlab help to correctly get several identical eigenvalues. Therefore, I can't use one of those options.
But even if I used them, I'd still be wondering what opts.issym does?
Greetings

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by