[petsc-dev] Vec set a block of values

Matthew Knepley knepley at gmail.com
Fri Apr 20 15:18:54 CDT 2018


On Fri, Apr 20, 2018 at 4:10 PM, Junchao Zhang <jczhang at mcs.anl.gov> wrote:

> To pad a vector, i.e., copy a vector to a new one, I have to call
> VecSetValue(newb,1,&idx,...) for each element. But to be efficient, what I
> really needs is to set a block of values in one call. It looks PETSc does
> not have a routine for that(?). I looked at VecSetValuesBlocked, but it
> looks it is not for that purpose.
> Should we have something like VecSetValuesBlock(Vec
> <http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Vec/Vec.html#Vec>
> v,PetscInt
> <http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Sys/PetscInt.html#PetscInt>
> i,PetscInt cnt,PetscScalar
> <http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Sys/PetscScalar.html#PetscScalar> *value,
> InsertMode
> <http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Sys/InsertMode.html#InsertMode>
> mode) to set cnt values starting at index i?
>

Use VecGetArray().

  Matt


> --Junchao Zhang
>



-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.caam.rice.edu/~mk51/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20180420/adf4c32e/attachment.html>


More information about the petsc-dev mailing list