VecDuplicateVecsF90#

Creates several vectors of the same type as an existing vector and makes them accessible via a Fortran pointer.

Synopsis#

VecDuplicateVecsF90(Vec x,PetscInt n,{Vec, pointer :: y(:)},integer ierr)

Collective

Input Parameters#

  • x - a vector to mimic

  • n - the number of vectors to obtain

Output Parameters#

  • y - Fortran pointer to the array of vectors

  • ierr - error code

Example of Usage#

#include <petsc/finclude/petscvec.h>
    use petscvec

    Vec x
    Vec, pointer :: y(:)
    ....
    call VecDuplicateVecsF90(x,2,y,ierr)
    call VecSet(y(2),alpha,ierr)
    call VecSet(y(2),alpha,ierr)
    ....
    call VecDestroyVecsF90(2,y,ierr)

Note#

Use VecDestroyVecsF90() to free the space.

See Also#

Vectors and Parallel Data, Vec, VecDestroyVecsF90(), VecDuplicateVecs()

Level#

beginner

Location#

src/vec/vec/interface/rvector.c

Examples#

src/vec/vec/tutorials/ex20f90.F90
src/vec/vec/tutorials/ex1f90.F90


Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages