interp1 returns finite value when input is NaN
Ältere Kommentare anzeigen
Dear sirs,
Consider the following two examples:
>> interp1([1 2 3 4 5], [48 47 1 1 1], NaN)
ans =
NaN
>> interp1([1 2 3 4 5], [48 48 1 1 1], NaN)
ans =
48
In the first case, it behaves as I would expect, i.e. an undefined input gives an undefined output. However in the second, the output is suddenly finite.
When trying different combinations. it seems:
If the two first "y" samples in the x/y data to interpolate are equal, then this is given as the answer as output for NaN as input. Which to me makes completely no sense at all.
3 Kommentare
"Dear sirs and ladies" would sound more polite.
Please specify your Matlab version. R2009a replies NaN in both cases.
Opening interp1.m in the editor and stepping through it line by line by the debugger should reveal the cause of this strange behavior.
dpb
am 15 Nov. 2016
>> interp1([1 2 3 4 5], [48 48 1 1 1], NaN)
ans =
NaN
>> interp1([1 2 3 4 5], [48 47 1 1 1], NaN)
ans =
NaN
>>
Which release?
>> version
ans =
8.0.0.783 (R2012b)
>>
Looks like a bug to me...but check release notes to see if there is some documented change (altho I'd certainly not expect this one to be intended, there have been some revisions to interp1)
KSSV
am 16 Nov. 2016
It returns NaN in both of the cases. My version 2015a.
Antworten (1)
Cosmin Ionita
am 1 Feb. 2018
Bearbeitet: Cosmin Ionita
am 1 Feb. 2018
0 Stimmen
This issue has been fixed in MATLAB R2017a:
Kategorien
Mehr zu Interpolation of 2-D Selections in 3-D Grids finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!