Matlab floating point problem

3 次查看(过去 30 天)
KK
KK 2018-12-10
编辑: per isakson 2018-12-10
Hello. I am using Matlab R2007b. I have a floating point problem in it. I am using x=rotx(45*pi/180)*[1 2 3]' and its value is x =[1.0000; 3.5355; 0.7071]. And i am doing reverse rotation of x which is y=rotx(-45*pi/180)*x. And i am doing y==[1; 2; 3]. Logically it is showing 1 1 0. I want all 1's when y==[1; 2; 3]. Can any one help with this problem.

回答(1 个)

per isakson
per isakson 2018-12-10
编辑:per isakson 2018-12-10
The script
%%
x = rotx(45*pi/180)*[1 2 3]';
y = rotx(-45*pi/180)*x;
is1 = abs((y-[1;2;3])<eps(10))
returns
is1 =
1
1
1
with R2018b

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by