[petsc-users] How_to_get_other_processor's_portion_of_a_vector

Jed Brown jed at jedbrown.org
Sun Jul 29 23:36:37 CDT 2018


See VecScatter.

Youjun Hu <youjunhu at gmail.com> writes:

> Hi all,
>
> The man-page for VecGetValues subroutine states that:
> "VecGetValues gets values from certain locations of a vector. Currently can
> only get values on the same processor ".
>
> I am wondering whether there is a subroutine that can be used to get values
> from any portion of a vector, rather than limited to the current
> processor's portion of the vector?
>
> It seems natural to expect that PETSc provides this kind of capability,
> which is already there for some subroutines, e.g., VecSetValues.
>
> When using VecSetValues to set the values of a vector, one processor can
> set other processors' portion of the vector. The communication is handled
> by PETSc when VecAssembly is called.
>
> Am I missing something obvious?
> Cheers,
> Youjun


More information about the petsc-users mailing list