VecGetArrayReadF90#

Accesses a read only array from Fortran. For default PETSc vectors, VecGetArrayF90() returns a pointer to the local data array. Otherwise, this routine is implementation dependent. You MUST call VecRestoreArrayReadF90() when you no longer need access to the array.

Synopsis#

VecGetArrayReadF90(Vec x,{Scalar, pointer :: xx_v(:)},integer ierr)

Logically Collective

Input Parameter#

  • x - vector

Output Parameters#

  • xx_v - the Fortran pointer to the array

  • ierr - error code

Example of Usage#

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

    PetscScalar, pointer :: xx_v(:)
    ....
    call VecGetArrayReadF90(x,xx_v,ierr)
    a = xx_v(3)
    call VecRestoreArrayReadF90(x,xx_v,ierr)

Note#

If you intend to write entries into the array you must use VecGetArrayF90().

See Also#

Vectors and Parallel Data, Vec, VecRestoreArrayReadF90(), VecGetArray(), VecRestoreArray(), VecGetArrayRead(), VecRestoreArrayRead(), VecGetArrayF90()

Level#

beginner

Location#

src/vec/vec/interface/rvector.c

Examples#

src/tao/unconstrained/tutorials/eptorsion2f.F90
src/ksp/ksp/tutorials/ex14f.F90
src/snes/tutorials/ex73f90t.F90
src/tao/leastsquares/tutorials/chwirut2f.F90
src/tao/unconstrained/tutorials/rosenbrock1f.F90
src/ts/tutorials/ex22f.F90
src/ts/tutorials/ex1f.F90
src/ts/tutorials/ex22f_mf.F90
src/snes/tutorials/ex1f.F90


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