petsc-3.12.5 2020-03-29
VecDot
Computes the vector dot product.
Synopsis
#include "petscvec.h"
PetscErrorCode VecDot(Vec x,Vec y,PetscScalar *val)
Collective on Vec
Input Parameters
x, y -the vectors
Output Parameter
val -the dot product
Performance Issues
per-processor memory bandwidth
interprocessor latency
work load inbalance that causes certain processes to arrive much earlier than others
Notes for Users of Complex Numbers
For complex vectors, VecDot() computes
val = (x,y) = y^H x,
where y^H denotes the conjugate transpose of y. Note that this corresponds to the usual "mathematicians" complex
inner product where the SECOND argument gets the complex conjugate. Since the BLASdot() complex conjugates the first
first argument we call the BLASdot() with the arguments reversed.
Use VecTDot() for the indefinite form
val = (x,y) = y^T x,
where y^T denotes the transpose of y.
See Also
VecMDot(), VecTDot(), VecNorm(), VecDotBegin(), VecDotEnd(), VecDotRealPart()
Level
intermediate
Location
src/vec/vec/interface/rvector.c
Examples
src/vec/vec/examples/tutorials/ex1.c.html
src/vec/vec/examples/tutorials/ex18.c.html
src/vec/vec/examples/tutorials/ex1f.F90.html
src/vec/vec/examples/tutorials/ex1f90.F90.html
src/vec/vec/examples/tutorials/ex20f90.F90.html
src/ksp/ksp/examples/tutorials/ex49.c.html
src/snes/examples/tutorials/ex15.c.html
src/snes/examples/tutorials/ex62.c.html
src/tao/unconstrained/examples/tutorials/spectraladjointassimilation.c.html
src/tao/constrained/examples/tutorials/maros.c.html
src/tao/bound/examples/tutorials/jbearing2.c.html
Implementations
VecDot_MPICUDA in src/vec/vec/impls/mpi/mpicuda/mpicuda.cu
VecDot_MPIViennaCL in src/vec/vec/impls/mpi/mpiviennacl/mpiviennacl.cxx
VecDot_MPI in src/vec/vec/impls/mpi/pbvec.c
VecDot_Nest in src/vec/vec/impls/nest/vecnest.c
VecDot_Seq in src/vec/vec/impls/seq/bvec1.c
VecDot_SeqCUDA in src/vec/vec/impls/seq/seqcuda/veccuda2.cu
VecDot_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