Почему interp2 и interpn дают разные результаты в MATLAB? - PullRequest
0 голосов
/ 06 августа 2020

Я считаю, что interp2 и interpn дают разные результаты в MATLAB, несмотря на то, что я использую один и тот же метод. Пожалуйста, попробуйте эти два образца.

test1=interp2([1,2],[6,7],[0,14317;25217,45817],1.1107,6.1348,'linear');

test2=interpn([1,2],[6,7],[0,14317;25217,45817],1.1107,6.1348,'linear');

Первый дает 5078, а второй - 4815 (так же, как вычислено вручную)

Изучая функции, я обнаружил, что в interp2 используется makegriddedinterp, а в interpn используется griddedInterpolant. Может кто-нибудь отличить? Спасибо!

1 Ответ

1 голос
/ 06 августа 2020

Мне нужно время, чтобы понять: interp2 для формата сетки, а interpn для формата ngrid. Следовательно, x и y должны переключаться в interp2! (То же самое и в interp1) test3 равно test2. test3=interp2([6,7],[1,2],[0,14317;25217,45817],6.1348,1.1107,'linear');

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...