Since evenvectors will (almost always) be dense vectors you will  
want to use a MPIDENSE matrix to store them. So create a MPIDENSE  
matrix with the same row layout as the eigenvector then on each  
process use VecGetArray() to access that processes part of the vector  
and MatGetArray() to access that part of the matrix and copy the  
values over from the vector array to the matrix array.

    Barry

On Nov 29, 2009, at 7:41 PM, ming zhu wrote:

> HI
> I am trying to solve an eigenvalue problem. A = U * LAMBDA*U'.   
> While SLEPC proivdes a solver to get an eigenvector and the related  
> eigenvalue, I have to fill the eigenvector to form the eigen matrix.  
> However, there seems no such function to do this directly. I was  
> trying to use VecGetValues and filled the matrix one by one.  
> Howevevr, it can not do that in parallel.
>
>    Is there anyone can help me ?
>
> Thank you
>
>
> ?????????????????

Reply via email to