xref: /petsc/src/sys/utils/ftn-kernels/fcopy.F90 (revision 1b37a2a7cc4a4fb30c3e967db1c694c0a1013f51)
1!
2!
3!    Fortran kernel for the copy vector routine
4!
5#include <petsc/finclude/petscsys.h>
6!
7      subroutine FortranCopy(n,x,y)
8      implicit none
9      PetscScalar  x(*),y(*)
10      PetscInt n
11      PetscInt i
12      PETSC_AssertAlignx(16,x(1))
13      PETSC_AssertAlignx(16,y(1))
14      do 10,i=1,n
15        y(i) = x(i)
16 10   continue
17      return
18      end
19
20      subroutine FortranZero(n,x)
21      implicit none
22      PetscScalar  x(*)
23      PetscInt n
24      PetscInt i
25      PETSC_AssertAlignx(16,x(1))
26      do 10,i=1,n
27        x(i) = 0.0
28 10   continue
29      return
30      end
31