1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 EN">
<HTML>
<HEAD> <link rel="canonical" href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Vec/VecDot.html" />
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>VecDot</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<div id="version" align=right><b>petsc-3.7.5 2017-01-01</b></div>
<div id="bugreport" align=right><a href="mailto:petsc-maint@mcs.anl.gov?subject=Typo or Error in Documentation &body=Please describe the typo or error in the documentation: petsc-3.7.5 v3.7.5 docs/manualpages/Vec/VecDot.html "><small>Report Typos and Errors</small></a></div>
<A NAME="VecDot"><H1>VecDot</H1></A>
Computes the vector dot product.
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petscvec.h"
PetscErrorCode VecDot(Vec x,Vec y,PetscScalar *val)
</PRE>
Collective on <A HREF="../Vec/Vec.html#Vec">Vec</A>
<P>
<H3><FONT COLOR="#CC3333">Input Parameters</FONT></H3>
<DT><B>x, y </B> -the vectors
<br>
<P>
<H3><FONT COLOR="#CC3333">Output Parameter</FONT></H3>
<DT><B>val </B> -the dot product
<br>
<P>
<H3><FONT COLOR="#CC3333">Performance Issues</FONT></H3>
<pre>
per-processor memory bandwidth
</pre>
<pre>
interprocessor latency
</pre>
<pre>
work load inbalance that causes certain processes to arrive much earlier than others
</pre>
<P>
<H3><FONT COLOR="#CC3333">Notes for Users of Complex Numbers</FONT></H3>
For complex vectors, <A HREF="../Vec/VecDot.html#VecDot">VecDot</A>() computes
<pre>
val = (x,y) = y^H x,
</pre>
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.
<P>
Use <A HREF="../Vec/VecTDot.html#VecTDot">VecTDot</A>() for the indefinite form
<pre>
val = (x,y) = y^T x,
</pre>
where y^T denotes the transpose of y.
<P>
<P>
<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
<A HREF="../Vec/VecMDot.html#VecMDot">VecMDot</A>(), <A HREF="../Vec/VecTDot.html#VecTDot">VecTDot</A>(), <A HREF="../Vec/VecNorm.html#VecNorm">VecNorm</A>(), <A HREF="../Vec/VecDotBegin.html#VecDotBegin">VecDotBegin</A>(), <A HREF="../Vec/VecDotEnd.html#VecDotEnd">VecDotEnd</A>(), <A HREF="../Vec/VecDotRealPart.html#VecDotRealPart">VecDotRealPart</A>()
<BR><P><B><P><B><FONT COLOR="#CC3333">Level:</FONT></B>intermediate
<BR><FONT COLOR="#CC3333">Location:</FONT></B><A HREF="../../../src/vec/vec/interface/rvector.c.html#VecDot">src/vec/vec/interface/rvector.c</A>
<BR><A HREF="./index.html">Index of all Vec routines</A>
<BR><A HREF="../../index.html">Table of Contents for all manual pages</A>
<BR><A HREF="../singleindex.html">Index of all manual pages</A>
<P><H3><FONT COLOR="#CC3333">Examples</FONT></H3>
<A HREF="../../../src/vec/vec/examples/tutorials/ex1.c.html">src/vec/vec/examples/tutorials/ex1.c.html</A><BR>
<A HREF="../../../src/vec/vec/examples/tutorials/ex18.c.html">src/vec/vec/examples/tutorials/ex18.c.html</A><BR>
<A HREF="../../../src/vec/vec/examples/tutorials/ex1f.F.html">src/vec/vec/examples/tutorials/ex1f.F.html</A><BR>
<A HREF="../../../src/vec/vec/examples/tutorials/ex1f90.F.html">src/vec/vec/examples/tutorials/ex1f90.F.html</A><BR>
<A HREF="../../../src/vec/vec/examples/tutorials/ex20f90.F90.html">src/vec/vec/examples/tutorials/ex20f90.F90.html</A><BR>
<A HREF="../../../src/ksp/ksp/examples/tutorials/ex49.c.html">src/ksp/ksp/examples/tutorials/ex49.c.html</A><BR>
<A HREF="../../../src/snes/examples/tutorials/ex15.c.html">src/snes/examples/tutorials/ex15.c.html</A><BR>
<A HREF="../../../src/tao/constrained/examples/tutorials/maros.c.html">src/tao/constrained/examples/tutorials/maros.c.html</A><BR>
<A HREF="../../../src/tao/bound/examples/tutorials/jbearing2.c.html">src/tao/bound/examples/tutorials/jbearing2.c.html</A><BR>
<A HREF="../../../src/tao/pde_constrained/examples/tutorials/elliptic.c.html">src/tao/pde_constrained/examples/tutorials/elliptic.c.html</A><BR>
<A HREF="../../../src/tao/pde_constrained/examples/tutorials/parabolic.c.html">src/tao/pde_constrained/examples/tutorials/parabolic.c.html</A><BR>
</BODY></HTML>
|