using ismembertol contradictory results

2 visualizzazioni (ultimi 30 giorni)
Luca cadalo
Luca cadalo il 5 Mar 2017
Risposto: Jan il 6 Mar 2017
when I write this I get the following results
>>ismembertol(117 , 115 , 1e-2)
ans =
0
and when I write this I get the following results
>> ismembertol(117 ,[ 115 366], 1e-2)
ans =
1
for me the results are contradictory maybe it is because i do not understand properly the function

Risposta accettata

Jan
Jan il 6 Mar 2017
According to the doc s the tolerance is applied as:
abs(u-v) <= tol*max(abs([A(:);B(:)]))
In your case this is:
abs(117 - 115) <= 1e-2 * max(abs([117; 115])))
2 <= 1e-2 * 117 % ==> FALSE
But when the maximum of the values is 366 you get:
abs(117 - 115) <= 1e-2 * max(abs([117; 115, 336])))
2 <= 1e-2 * 336 % ==> TRUE
This means, that the results are as explained in the doc ismembertol: relative to the largest input value.

Più risposte (0)

Categorie

Scopri di più su Object Containers in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by