[Trilinos-Users] Question about Anasazi StatusTest

홍광우 kwangwoo at kaist.ac.kr
Tue Sep 23 01:07:36 MDT 2014


Dear Trilinos developers and users,


 Hello. I want to use Anasazi::setDebugStatusTest when I use LOBPCGSolMgr to get the unconverged Ritz vectors and Ritz values. 


To use setDebugStatusTest, I have to define Anasazi::StatusTest(). There are 5 StatusTest. 

(StatusTestCombo, StatusTestMaxIters, StatusTestOutput, StatusTestResNorm, StatusTestWithOrdering)


Which one should be selected to get the Ritz vectors and values?


Kwangwoo Hong







-----------------------원본메일-----------------------
보낸사람 : "Thornquist, Heidi K" <hkthorn at sandia.gov>
받는사람: 홍광우<yuriprime at kaist.ac.kr>,"""trilinos-users at software.sandia.gov" " " <trilinos-users at software.sandia.gov>
보낸날짜: 2014-09-06 00:27:40 GMT +0900 (Asia/Seoul)
제목: Re: [Trilinos-Users] [EXTERNAL]  QuestionaboutAnasaziBasicEigenproblem







Hi Kwangwoo,


No, there is no explicit example of how to write a status test that collects the Ritz values and vectors and pass it in to an Anasazi eigensolver.
That would have to be written by you.


Sorry,


Heidi




-- 


Heidi K. Thornquist

Electrical Models & Simulation
Sandia National Laboratories
Albuquerque, NM  87185-1323









From: 홍광우 <yuriprime at kaist.ac.kr>
Date: Thursday, September 4, 2014 8:49 PM
To: "Thornquist, Heidi K" <hkthorn at sandia.gov>, "\"\\\"trilinos-users at software.sandia.gov\\\" \"" <trilinos-users at software.sandia.gov>
Subject: Re: [Trilinos-Users] [EXTERNAL] Question aboutAnasaziBasicEigenproblem




p{margin:0;padding:0;}




p{margin:0;padding:0;}


I want to use setDebugStatusTest() function, but I don't know how to use it.



I use LOBPCGSolMgr as follows.



=========================================

Teuchos::RCP < Anasazi::BasicEigenproblem<double,MV,OP> > MyProblem = Teuchos::rcp(new Anasazi::BasicEigenproblem<double,MV,OP>(matrix, eigenvectors));

Anasazi::LOBPCGSolMgr<double, MV, OP> MySolverMan(MyProblem, MyPL);

MySolverMan.solve();

=========================================



How do I use setDebugStatusTest() to get the Ritz values and vectors? Is there any example somewhere?



Kwangwoo Hong








Kwangwoo Hong

Ph.D Candidate

Computational Quantum Molecular Science Lab.

 

 

Department of Chemistry, KAIST

 

 

 

(Tel) +82-42-350-2855

 

 

 

 

 









-----------------------원본메일-----------------------
보낸사람 : "Thornquist, Heidi K" <hkthorn at sandia.gov>
받는사람: 홍광우<kwangwoo at kaist.ac.kr>,""trilinos-users at software.sandia.gov" " <trilinos-users at software.sandia.gov>
보낸날짜: 2014-09-05 01:18:55 GMT +0900 (Asia/Seoul)
제목: Re: [Trilinos-Users] [EXTERNAL] Question aboutAnasaziBasicEigenproblem



That depends on what the status test does.  If it's a no-op, then it will have no impact on the speed of the calculations.
Looking at the Ritz values and vectors does not cost anything computationally either, but copying them will.  I still don't expect the impact with be that great.


Thanks,
Heidi




-- 


Heidi K. Thornquist

Electrical Models & Simulation
Sandia National Laboratories
Albuquerque, NM  87185-1323








From: 홍광우 <kwangwoo at kaist.ac.kr>
Date: Thursday, September 4, 2014 2:17 AM
To: "Thornquist, Heidi K" <hkthorn at sandia.gov>, "\"trilinos-users at software.sandia.gov\"" <trilinos-users at software.sandia.gov>
Subject: Re: [Trilinos-Users] [EXTERNAL] Question about AnasaziBasicEigenproblem




p{margin:0;padding:0;}



If I use setDebugStatusTest() method, does the speed of calculations become slow?







Kwangwoo Hong

Ph.D Candidate

Computational Quantum Molecular Science Lab.

 

 

Department of Chemistry, KAIST

 

 

 

(Tel) +82-42-350-2855

 

 

 

 

 









-----------------------원본메일-----------------------
보낸사람 : "Thornquist, Heidi K" <hkthorn at sandia.gov>
받는사람: 홍광우<yuriprime at kaist.ac.kr>,"trilinos-users at software.sandia.gov" <trilinos-users at software.sandia.gov>
보낸날짜: 2014-09-03 04:55:58 GMT +0900 (Asia/Seoul)
제목: Re: [EXTERNAL] [Trilinos-Users] Question about AnasaziBasicEigenproblem



Hi Kwangwoo,


Anasazi only returns the eigenvectors that are considered converged with the given criterion (usually tolerance).  Any unconverged vectors are not returned, as they do not meet the criterion for being called (approximate) eigenvectors for the problem.
  If you are interested in seeing all the Ritz vectors (and values), you can pass in a debug status test object via the setDebugStatusTest() method that monitors the iteration and candidate eigenpairs by calling getRitzValues and getRitzVectors.  That will
 give you access to those unconverged eigenpairs.


Thanks,
Heidi




-- 


Heidi K. Thornquist

Electrical Models & Simulation
Sandia National Laboratories
Albuquerque, NM  87185-1323








From: 홍광우 <yuriprime at kaist.ac.kr>
Date: Tuesday, September 2, 2014 1:05 AM
To: "trilinos-users at software.sandia.gov" <trilinos-users at software.sandia.gov>
Subject: [EXTERNAL] [Trilinos-Users] Question about Anasazi BasicEigenproblem




p{margin:0;padding:0;}



Dear Trilinos developers and users,



Hello. I use Anasazi BasicEigenproblem to iteratively diagonalize sparse matrices (Epetra_CrsMatrix).



I have a question about getSolution function.



For example, I want to compute 5 eigenpairs. When the diagonalization fails to converge due to the option "Maximum Iterations", getSolution() does not give 5 eigenvectors, but only gives the number of converged eigenvectors. 



However, I want to get the 5 eigenvectors that some of them already converge while the others do not converge yet. How can I get these eigenvectors? Is there any function that returns the whole vectors?



Kwangwoo Hong






Kwangwoo Hong

Ph.D Candidate

Computational Quantum Molecular Science Lab.

 

 

Department of Chemistry, KAIST

 

 

 

(Tel) +82-42-350-2855

 

 

 

 

 




























-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://software.sandia.gov/pipermail/trilinos-users/attachments/20140923/5895c1c0/attachment.html>


More information about the Trilinos-Users mailing list