Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1350463
  • 博文数量: 281
  • 博客积分: 8800
  • 博客等级: 中将
  • 技术积分: 3346
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-17 22:31
文章分类

全部博文(281)

文章存档

2013年(1)

2012年(18)

2011年(16)

2010年(44)

2009年(86)

2008年(41)

2007年(10)

2006年(65)

我的朋友

分类: LINUX

2009-09-03 16:57:42

点乘 dot product
  点乘,也叫向量的内积、数量积。顾名思义,求下来的结果是一个数。
  向量a·向量b=|a||b|cos
  在物理学中,已知力与位移求功,实际上就是求向量F与向量s的内积,即要用点乘。
  将向量用坐标表示(三维向量),
  若向量a=(a1,b1,c1),向量b=(a2,b2,c2),
  则
  向量a·向量b=a1a2+b1b2+c1c2


叉乘 cross product
  叉乘,也叫向量的外积、向量积。顾名思义,求下来的结果是一个向量,记这个向量为c。
  |向量c|=|向量a×向量b|=|a||b|sin
  向量c的方向与a,b所在的平面垂直,且方向要用“右手法则”判断(用右手的四指先表示向量a的方向,然后手指朝着手心的方向摆动到向量b的方向,大拇指所指的方向就是向量c的方向)。
  因此
  向量的外积不遵守乘法交换率,因为向量a×向量b= - 向量b×向量a
  在物理学中,已知力与力臂求力矩,就是向量的外积,即叉乘。
  将向量用坐标表示(三维向量),
  若向量a=(a1,b1,c1),向量b=(a2,b2,c2),
  则
  向量a×向量b=
  | i j k |
  |a1 b1 c1|
  |a2 b2 c2|
  =(b1c2-b2c1,c1a2-a1c2,a1b2-a2b1)
  (i、j、k分别为空间中相互垂直的三条坐标轴的单位向量)。
矢量计算
点乘出的是标量(比如能量、功)
叉乘出的是矢量(比如位置矢量,速度矢量)
向量的乘法有两种,分别成为内积和外积.
内积也称数量积,因为其结果为一个数(标量)
向量a,b的内积为|a|*|b|cos,其中表示a与b的夹角
向量外积也叫叉乘,其结果为一个向量,方向是按右手系垂直与a,b所在平面|a|*|b|sin
点乘的结果就是两个向量的模相乘,然后再与这两个向量的夹角的余弦值相乘。或者说是两个向量的各个分量分别相乘的结果的和。很明显,点乘的结果就是一个数,这个数对我们分析这两个向量的特点很有帮助。如果点乘的结果为0,那么这两个向量互相垂直;如果结果大于0,那么这两个向量的夹角小于90度;如果结果小于0,那么这两个向量的夹角大于90度。对于叉乘,它的运算公式令人头晕,下面的公式自己领悟吧……

//v3 = v1 X v2
v3.x = v1.y*v2.z – v1.z*v2.y
v3.y = v1.z*v2.x – v1.x*v2.z
v3.z = v1.x*v2.y – v1.y*v2.x
其实我们主要还是要知道叉乘的意义。和点乘的结果不一样,叉乘的结果是一个新的向量,这个新的向量与原来两个向量都垂直,至于它的方向嘛,不知大家是否还记得左手定则。按照第一个向量(v1)指向第二个向量(v2)弯曲你的手掌,这时你的拇指所指向的方向就是新向量(v3)的方向了。通过叉乘,我们很容易就得到某个平面(由两个向量决定的)的法线了。
阅读(2744) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~