Skip to main content
`Ctrl`+`K`

# VecAXPY

Computes `y = alpha x + y`.

## Synopsis

    #include "petscvec.h"
    PetscErrorCode VecAXPY(Vec y, PetscScalar alpha, Vec x)

Logically Collective

## Input Parameters

- alpha - the scalar

- x - vector scale by `alpha`

- y - vector accumulated into

## Output Parameter

- y - output vector

## Notes

This routine is optimized for alpha of 0.0, otherwise it calls the BLAS routine

        VecAXPY(y,alpha,x)                   y = alpha x           +      y
        VecAYPX(y,beta,x)                    y =       x           + beta y
        VecAXPBY(y,alpha,beta,x)             y = alpha x           + beta y
        VecWAXPY(w,alpha,x,y)                w = alpha x           +      y
        VecAXPBYPCZ(z,alpha,beta,gamma,x,y)  z = alpha x           + beta y + gamma z
        VecMAXPY(y,nv,alpha[],x[])           y = sum alpha[i] x[i] +      y

## See Also

Vectors and Parallel Data, `Vec`, `VecAYPX()`, `VecMAXPY()`, `VecWAXPY()`, `VecAXPBYPCZ()`, `VecAXPBY()`

## Level

intermediate

## Location

src/vec/vec/interface/rvector.c

## Examples

src/dm/tutorials/ex10.c
src/dm/impls/stag/tutorials/ex1.c
src/ksp/ksp/tutorials/ex1.c
src/dm/tutorials/ex15.c
src/ksp/ksp/tutorials/ex11f.F90
src/ksp/ksp/tutorials/ex11.c
src/ksp/ksp/tutorials/bench_kspsolve.c
src/dm/impls/stag/tutorials/ex3.c
src/dm/impls/stag/tutorials/ex2.c
src/ksp/ksp/tutorials/ex12.c

## Implementations

VecAXPY_Nest() in src/vec/vec/impls/nest/vecnest.c
VecAXPY_Seq() in src/vec/vec/impls/seq/bvec1.c
VecAXPY_SeqKokkos() in src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx
VecAXPY_SeqViennaCL() in src/vec/vec/impls/seq/seqviennacl/vecviennacl.cxx

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