数理知识向量数乘,内积,外积,matlab代码实现
Posted Zhao-Jichao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数理知识向量数乘,内积,外积,matlab代码实现相关的知识,希望对你有一定的参考价值。
1 | 【数理知识】向量数乘,内积,外积,matlab代码实现 |
2 | 【数理知识】矩阵普通乘积,哈达玛积,克罗内克积,点乘,点积,叉乘,matlab代码实现 |
文章目录
1. 向量基本形式
形如 ( a 1 a 2 ⋮ a n ) \\left(\\beginmatrix a_1 \\\\ a_2 \\\\ \\vdots \\\\ a_n \\\\ \\endmatrix\\right) a1a2⋮an 的形式称之为向量。
2. 向量的数乘
指用一个数乘以向量中的每个元素
b ∗ ( a 1 a 2 ⋮ a n ) = ( a 1 a 2 ⋮ a n ) ∗ b = ( a 1 ∗ b a 2 ∗ b ⋮ a n ∗ b ) \\beginaligned b * \\left(\\beginmatrix a_1 \\\\ a_2 \\\\ \\vdots \\\\ a_n \\\\ \\endmatrix\\right) &= \\left(\\beginmatrix a_1 \\\\ a_2 \\\\ \\vdots \\\\ a_n \\\\ \\endmatrix\\right) * b &= \\left(\\beginmatrix a_1 * b \\\\ a_2 * b \\\\ \\vdots \\\\ a_n * b \\\\ \\endmatrix\\right) \\endaligned b∗ a1a2⋮an = a1a2⋮an ∗b= a1∗ba2∗b⋮an∗b
3. 向量的内积
等于对应位置相乘再相加,两个向量的内积的结果是变成一个标量(也叫点乘)
a ⋅ b = ( a 1 a 2 ⋮ a n ) ⋅ ( b 1 b 2 ⋮ b n ) = ( a 1 a 2 ⋯ a n ) ( b 1 b 2 ⋮ b n ) = a 1 b 1 + a 2 b 2 + ⋯ + a n b n \\beginaligned a \\cdot b = \\left(\\beginmatrix a_1 \\\\ a_2 \\\\ \\vdots \\\\ a_n \\\\ \\endmatrix\\right) \\cdot \\left(\\beginmatrix b_1 \\\\ b_2 \\\\ \\vdots \\\\ b_n \\\\ \\endmatrix\\right) =\\left(\\beginmatrix a_1 & a_2 & \\cdots & a_n & \\endmatrix\\right) \\left(\\beginmatrix b_1 \\\\ b_2 \\\\ \\vdots \\\\ b_n \\\\ \\endmatrix\\right) &= a_1 b_1 + a_2 b_2 + \\cdots + a_n b_n \\endaligned a⋅b= a1a2⋮an ⋅ b1b2⋮bn =(a1a2⋯an) b1b2⋮bn =a1b1+a2b2+⋯+anbn
a = [1;
2;
3];
b = [4;
5;
6];
Matlab语法:dot(a, b)
>> dot(a, b)
ans =
32
>> a .* b
ans =
4
10
18
>> a * b
错误使用 *
用于矩阵乘法的维度不正确。请检查并确保第一个矩阵中的列数与第
二个矩阵中的行数匹配。要单独对矩阵的每个元素进行运算,请使用
TIMES (.*)执行按元素相乘。
点乘的几何意义是可以用来表征或计算两个向量之间的夹角,以及在 b b b 向量在 a a a 向量方向上的投影,有公式:
a ⋅ b = ∣ a ∣ ∣ b ∣ cos θ a \\cdot b = |a| |b| \\cos \\theta a⋅b=∣向量的内积和外积
R语言矩阵向量操作(矩阵乘法,向量内积外积(叉乘),矩阵转置,矩阵的逆)