<div dir="ltr">Hi guys,<div><br></div><div>I'm just wondering if I understand how the VecScatter works. Considering (petsc 3.2-p6 manual page 53): </div><div><br></div><div><div>VecScatterCreate(Vec x,IS ix,Vec y,IS iy,VecScatter *ctx);</div>
</div><div><div>VecScatterBegin(VecScatter ctx,Vec x,Vec y,INSERT VALUES,SCATTER FORWARD);</div><div>VecScatterEnd(VecScatter ctx,Vec x,Vec y,INSERT VALUES,SCATTER FORWARD);</div><div>VecScatterDestroy(VecScatter *ctx);</div>
</div><div><br></div><div>is the following statement correct?</div><div><br></div><div>VecScatter looks into "ix" and "iy" index sets and `matches' the global indecies between the two to copy data from vector "x" to vector "y". For example, if "ix" maps local index "1" to global index "10", VecScatter looks inside "iy" to find a local index that is mapped to global index "10" and sends the data accordingly to the correct processor.</div>
<div><br></div><div>Thanks,</div><div>Mohammad</div>
</div>