# [vorbis-dev] Dot Product

programmer_ted ted at fusionapple.com
Wed Feb 18 11:18:11 PST 2004

```
At 10:18 AM 2/18/2004, you wrote:
> > I don't exactly understand what they mean by "multiply each element of
> > the floor curve by each element of that channel's residue vector"?
> > Supposing one channels floor vector is (3,2,1) and the according residue
> > is (1,0,2), the resulting "dot-producted" vector will be (3,0,2)?
> > However, that's how I've implemented but it seems to be wrong. So what't
> > the correct interpretation of this dot-product?
>
>The dot product is a vector multiplication that is calculated as follows:
>(Ax,Ay,Az) dot (Bx,By,Bz) = Ax*Bx + Ay*By + Az*Bz
>
>So the result is not a vector, but a number. For your example:
>(3,2,1) dot (3,0,2) = 3*3 + 2*0 + 2*1 = 11
>
>The 3dica 3d programming tutorial has quite a good introduction to vector
>calculations, you can find it, for example, at
>http://tfpsly.planet-d.net/Docs/3dIca/3dica.htm
>
>Simeon

I think the formal definition for the dot product is

vector X . vector Y = |X||Y| cos theta

where |X| is the norm of X and theta is the angle between the two vectors
are put tail to tail.  I like yours a lot more though.

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.

```