petsc-3.14.6 2021-03-30
PetscMemcpy
Copies n bytes, beginning at location b, to the space beginning at location a. The two memory regions CANNOT overlap, use PetscMemmove() in that case.
Synopsis
PETSC_STATIC_INLINE PetscErrorCode PetscMemcpy(void *a,const void *b,size_t n)
Not Collective
Input Parameters
| b | - pointer to initial memory space
|
| n | - length (in bytes) of space to copy
|
Output Parameter
| a | - pointer to copy space
|
Compile Option
PETSC_PREFER_DCOPY_FOR_MEMCPY will cause the BLAS dcopy() routine to be used
for memory copies on double precision values.
PETSC_PREFER_COPY_FOR_MEMCPY will cause C code to be used
for memory copies on double precision values.
PETSC_PREFER_FORTRAN_FORMEMCPY will cause Fortran code to be used
for memory copies on double precision values.
Note
Prefer PetscArraycpy()
This routine is analogous to memcpy().
Not available from Fortran
Developer Note: this is inlined for fastest performance
See Also
PetscMemzero(), PetscMemcmp(), PetscArrayzero(), PetscArraycmp(), PetscArraycpy(), PetscMemmove(), PetscStrallocpy()
Level
intermediate
Location
include/petscsys.h
Examples
src/ksp/ksp/tutorials/ex74.c.html
src/ts/tutorials/ex10.c.html
src/ts/tutorials/ex11.c.html
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages