<div dir="ltr"><div>I am using PETSc 3.7.6 and Fortran.</div><div><br></div><div>I am trying to output a PETSc vector that contains the solution of a linear system. I am using VecView with the PETSC_VIEWER_ASCII_INDEX format as follows:</div><div><br></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><font face="monospace, monospace">call PetscViewerASCIIOpen(PETSC_COMM_WORLD,"output.dat",viewer,ierr)</font></div><div><font face="monospace, monospace">call PetscViewerPushFormat(viewer,PETSC_VIEWER_ASCII_INDEX,ierr)</font></div><div><font face="monospace, monospace">call VecView(myVec,viewer,ierr)</font></div></blockquote><div><br></div><div>When I run with 4 processors, my output file looks like:</div><div><br></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><font face="monospace, monospace">Vec Object: 4 MPI processes</font></div><div><font face="monospace, monospace">  type: mpi</font></div><div><font face="monospace, monospace">Process [0]</font></div><div><font face="monospace, monospace">0: 30.7501</font></div><div><font face="monospace, monospace">1: 164.001</font></div><div><font face="monospace, monospace">2: 41.0001</font></div><div><font face="monospace, monospace">3: 164.001</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">Process [1]</font></div><div><font face="monospace, monospace">4988: 60.1443</font></div><div><font face="monospace, monospace">4989: 157.257</font></div><div><font face="monospace, monospace">4990: 271.518</font></div><div><font face="monospace, monospace">4991: 366.669</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">Process [2]</font></div><div><font face="monospace, monospace">9977: 114.948</font></div><div><font face="monospace, monospace">9978: -77.2896</font></div><div><font face="monospace, monospace">9979: 823.142</font></div><div><font face="monospace, monospace">9980: -1096.19</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">Process [3]</font></div><div><font face="monospace, monospace">14916: 0.</font></div><div><font face="monospace, monospace">14917: 4.4056</font></div><div><font face="monospace, monospace">14918: 2.08151</font></div><div><font face="monospace, monospace">14919: -0.110862</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">.</font></div><div><font face="monospace, monospace">19843: 0.</font></div></blockquote><div><br></div><div>My question is: each processor outputs the part of the vector that it owns? Or does PETSc collects each processor's parts and then processor 0 sequentially outputs the 1st quarter of the global vector, processor 1 outputs the 2nd quarter of the global vector, processor 2 outputs the 3rd quarter of the global vector, and so on? Or, does PETSc do something else?</div><div><br></div><div>Thank you!</div><div><br></div><div>Paula</div><div><br></div></div>