与点积可能误差

9的观点(30天)
威廉凯特
威廉凯特 2021年9月22日
评论道: 威廉凯特2021年10月4日
似乎有一个问题与导函数计算两个向量之间的点积。不是,就是我不正确的使用它。
xa = -4.2162;% x分量的向量
丫= -7.1335;%分量的向量
xb = -1.4941 e-08;% x分量的向量b
yb = 1.7922 e-08;%分量的向量b
% = ai *点积b_i + a_j * b_j = | | * b | | * cos(θ)
% %以上公式得到值
dotprod1 = xa * xb + ya *
dotprod1 = -6.4852 e-08
θ= rad2deg(这些“可信赖医疗组织”((xa * xb + ya *) / (sqrt (xa丫^ ^ 2 + 2)* sqrt (xb ^ 2 + ^ 2))));
dotprod2 =√xa丫^ ^ 2 + 2)* sqrt (xb ^ 2 + ^ 2) * cos(函数(θ))
dotprod2 = -6.4852 e-08
dotprod1 = = dotprod2%应该给1
ans =逻辑
1
% %使用点函数
% = ai + a_j
% b = b_i + b_j
dotprod3 =点(xa +丫,xb + yb)%点的向量a和b
dotprod3 = -3.3833 e-08
dotprod1 = = dotprod3
ans =逻辑
0
为什么不是点产生相同的值?

接受的答案

杰夫•海斯
杰夫•海斯 2021年9月22日
威廉-从 ,这个函数返回 标量积 的两个输入向量。在你的情况下,
点(xa +丫,xb + yb)
相当于
(xa + ya) * (xb +)
这是不一样的你之前计算什么
dotprod1 = (xa * xb) + (ya *)%我增加了括号
还请注意,代码和注释
dotprod1 = = dotprod2%应该给1
对于浮点数并不一定如此。看到 浮点数比较 获取详细信息。
1评论
威廉凯特
威廉凯特 2021年10月4日
谢谢你的回应。我需要用它来计算平流和不确定如果点工作。

登录置评。

更多的答案(0)

下载188bet金宝搏


释放

R2021a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的