Мне нужна «двумерная» табличная функцию, где табличку будут заполнять на лету.
F(ток, обороты) => напряжение
Проблема в том, что пара [ток, обороты] никогда не попадет строго в сетку. И вообще равномерность никто не гарантирует.
Надо запоминать что есть, и по мере появления достаточно близких точек делать интерполяцию. Если близких точек нет - говорить что «тут пока данных не хватает».
С одномерной табличкой вопросов нет - там просто сортированный массив и поиск половинным делением. А с двумерной уже непонятно. Поступать как с гео-координатами (чередовать биты) не катит, т.к. параметры вообще разных типов, и непонятно как их нормализовать чтобы операции сравнения над перемешанными битами имели смысл.
И второй момент, данные могут устаревать (например щетки пылью забились, параметры поплыли). Но вероятность получить обновление в той же самой точке равна нулю. Можно попасть только «где-то рядом». Соответственно, надо как-то определять, что соседние точки сильно поехали, и как-то их корректировать или удалять.
Какие есть варианты?