petsc-3.14.5 2021-03-03
Report Typos and Errors

# VecCopy

Copies a vector. y <- x

### Synopsis

    #include "petscvec.h"
    PetscErrorCode  VecCopy(Vec x,Vec y)

Logically Collective on Vec

### Input Parameter

| x | - the vector

### Output Parameter

| y | - the copy

### Notes

For default parallel PETSc vectors, both x and y must be distributed in the same manner; local copies are done.

### Developer Notes

PetscCheckSameTypeAndComm(x,1,y,2) is not used on these vectors because we allow one of the vectors to be sequential and one to be parallel so long as both have the same local sizes. This is used in some internal functions in PETSc.

### See Also

VecDuplicate()

### Level

beginner

### Location

src/vec/vec/interface/vector.c

### Examples

src/vec/vec/tutorials/ex1.c.html
src/vec/vec/tutorials/performance.c.html
src/vec/vec/tutorials/ex1f.F90.html
src/vec/vec/tutorials/ex1f90.F90.html
src/vec/vec/tutorials/ex4f.F.html
src/vec/vec/tutorials/ex4f90.F90.html
src/vec/vec/tutorials/ex20f90.F90.html
src/mat/tutorials/ex9.c.html
src/dm/impls/stag/tutorials/ex1.c.html
src/dm/impls/stag/tutorials/ex2.c.html
src/dm/impls/stag/tutorials/ex3.c.html

### Implementations

VecCopy_Nest in src/vec/vec/impls/nest/vecnest.c
VecCopy_Node in src/vec/vec/impls/node/vecnode.c
VecCopy_Seq in src/vec/vec/impls/seq/bvec2.c
VecCopy_SeqKokkos in src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx
VecCopy_SeqCUDA in src/vec/vec/impls/seq/seqcuda/veccuda2.cu
VecCopy_SeqViennaCL in src/vec/vec/impls/seq/seqviennacl/vecviennacl.cxx
Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages