MATLAB Answers

Neglecting difference between two values if it is very small so that value1= value2

조회 수: 1(최근 30일)
Cutie
Cutie 2021년 7월 28일
댓글: Fangjun Jiang 2021년 7월 29일
I am working on a dataset. After some eigendecompostion process. I realise the difference between my values are as small as 1.8097e-14 which is my further implementation process.
Example
data1(1:10) = 0 0.1502 0.2970 0.4371 0.5673 0.6845 0.7863 0.8702 0.9343 0.9773
data2(1:10) = -0.0000 0.1502 0.2970 0.4371 0.5673 0.6845 0.7863 0.8702 0.9343 0.9773
C= data1(1:10)-data2(1:10)
C =
1.0e-12 *
0.0862 0.1227 0.1545 0.0772 0.1019 0.1178 -0.0174 0.0048 0.0170 0.0181
How do I code that the these difference be neglected so that values in data1 & data2 will be equal since the difference is very small

답변(1개)

Fangjun Jiang
Fangjun Jiang 2021년 7월 28일
편집: Fangjun Jiang 2021년 7월 28일
To compare element by element, abs(C) < Tolerance
To compare the two vectors as a whole, all(abs(C) < Tolerance)
or use
ismembertol(C,0,Tolerance)
  댓글 수: 7
Fangjun Jiang
Fangjun Jiang 2021년 7월 29일
I guess you could to that. The solution is clear, do whatever to get the result you need.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by