<div dir="ltr"><div><div>Well, to make sure about the results, I again just copy the example and add two lines before the Destroy code, then ,compile.<br></div><div>Example:  <a href="http://www.mcs.anl.gov/petsc/petsc-current/src/ksp/ksp/examples/tutorials/ex11.c.html">http://www.mcs.anl.gov/petsc/petsc-current/src/ksp/ksp/examples/tutorials/ex11.c.html</a><br>
</div>Run it with <br> mpirun -np 2 ./Release/spin-scenarios-petsc  -n 2<br></div><div>This is the results:<br>1+1i<br>1+1i<br>Norm of error 1.19381e-16 iterations 4<br>Vector Object: 2 MPI processes<br>  type: mpi<br>Process [0]<br>
4.16334e-17<br>0 + 1.38778e-17 i<br>Process [1]<br>0<br>1.11022e-16<br>Matrix Object: 1 MPI processes<br>  type: mpiaij<br>row 0: (0, -7.11111 + 0.0800036 i) (1, -1)  (2, -1) <br>row 1: (0, -1)  (1, -7.11111 + 0.00111359 i) (3, -1) <br>
row 2: (0, -1)  (2, -7.11111 + 0.0601271 i) (3, -1) <br>row 3: (1, -1)  (2, -1)  (3, -7.11111 + 0.0943018 i)<br><br></div><div>I am not sure about it, but the results is the same as I tried before with c++ class.<br><br></div>
<div>By the way, I install PETSc using  <br>--with-mpi-dir=/usr/local --with-scalar-type=complex --with-clanguage=cxx --with-fortran-kernels=1 --with-blas-lapack-dir=/opt/intel/composer_xe_2013_sp1.0.080/mkl --with-debugging=no<br>
<br></div><div>Isn’t it strange? Or can you run it again to make sure about it?  <br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Jan 19, 2014 at 9:11 PM, Karl Rupp <span dir="ltr"><<a href="mailto:rupp@mcs.anl.gov" target="_blank">rupp@mcs.anl.gov</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Yan,<div class="im"><br>
<br>
> Right now I test  'src/ksp/ksp/examples/<u></u>tutorials/ex11.c'  with n=2<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I rewrite the sample into a c++ class, and run it as mpirun -np 2  .....<br>
I notice that the vector x is stored in 2 processors.<br>
But the matrix A seems not as you told me 'MatView should report your<br>
matrix R as being equally split over the MPI ranks.'<br>
<br>
Norm of error 1.19381e-16 iterations 4<br>
Vector Object: 2 MPI processes<br>
   type: mpi<br>
Process [0]<br>
4.16334e-17<br>
0 + 1.38778e-17 i<br>
Process [1]<br>
0<br>
1.11022e-16<br>
</blockquote>
<br></div>
This looks good.<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Matrix Object: 1 MPI processes<br>
   type: mpiaij<br>
row 0: (0, -7.11111 + 0.0800036 i) (1, -1)  (2, -1)<br>
row 1: (0, -1)  (1, -7.11111 + 0.00111359 i) (3, -1)<br>
row 2: (0, -1)  (2, -7.11111 + 0.0601271 i) (3, -1)<br>
row 3: (1, -1)  (2, -1)  (3, -7.11111 + 0.0943018 i)<br>
</blockquote>
<br></div>
This doesn't. How to do you create the matrix and set its sizes?<br>
<br>
Best regards,<br>
Karli<br>
</blockquote></div><br></div>