2009-12-23 2 views
0

Существует таблица пар, которая определяет границы фигур. И мы используем простой алгоритм:Лучший способ программирования кусочно-линейной функции на DSP TMS320C5509

у = Р (х)

  1. индекса Рассчитать п в таблице, используя е
  2. Получить Yn и Yn + 1, вычислить линейную интерполяцию У

Y - ответ.

Так что я думаю, должен быть более эффективный метод, не могли бы вы указать мне?

+3

Более эффективный по сравнению с чем? Покажите нам какой-то код. – dirkgently

+0

Какова цель алгоритма? – ThinkJet

+1

Значения x равны друг другу? –

ответ

0

Использования binary search для шага 1.

EDIT: из-за комментарий, который вы добавили впоследствии, это не является необходимым, так как ваши интервалы равномерно разнесенные.

1

В зависимости от количества и распределения пар вы можете вместо этого хранить таблицу T, содержащую только значения Y через регулярные интервалы. Выберите интервал как мощность 2: i = 2^c. Тогда для данного X:

n=X>>c; 
Y= T[n] 
Y+= ((T[n+1]-T[n])* (X&(i-1))>>c; 

Это должно работать до тех пор, пока у вас есть место для таблицы с достаточно малыми интервалами, чтобы поймать внезапные изменения наклона Y, и достаточный запас в Y для умножения.

 Смежные вопросы

  • Нет связанных вопросов^_^