[petsc-users] Forming a matrix from vectors

Jose E. Roman jroman at dsic.upv.es
Mon Feb 17 03:24:30 CST 2020


I would use MatDenseGetColumn() and VecGetArrayRead() to get the two pointers and then copy the values with a loop.

Jose

> El 17 feb 2020, a las 9:35, Eda Oktay <eda.oktay at metu.edu.tr> escribió:
> 
> Hello all,
> 
> I am trying to form a matrix whose columns are eigenvectors I have calculated before U = [v1,v2,v3]. Is there any easy way of forming this matrix? My matrix should be parallel and I have created vectors as below, where nev i s the number of requested eigenvalues. So each V[i] represents an eigenvector and I should form a matrix by using V.
> 
> Vec *V;
>   VecDuplicateVecs(vr,nev,&V); 
>   for (i=0; i<nev;i++){
>   ierr = EPSGetEigenpair(eps,i,&kr,NULL,V[i],NULL);  
>   }
> 
> Thanks!
> 
> Eda



More information about the petsc-users mailing list