HDL Reciprocal

Вычислите обратную величину с методом приближения Ньютона-Raphson

Библиотека

Отдельно оплачиваемые предметы Simulink / Дополнительная Математика

  • HDL Reciprocal block

Описание

Блок HDL Reciprocal использует итерационный метод Ньютона-Raphson, чтобы вычислить обратную величину входа блока. Метод Ньютона-Raphson использует линейную аппроксимацию, чтобы последовательно найти лучшие приближения к корням действительной функции.

Обратная величина вещественного числа a задан как нуль функции:

f(x)=1xa

HDL Coder™ выбирает первоначальную оценку в области значений 0<x0<2a когда это - область сходимости для функции.

Чтобы последовательно вычислить корни функции, задайте параметр Number of iterations в диалоговом окне Block Parameters. Процесс повторяется как:

xi+1=xif(xi)f'(xi)=xi+(xiaxi2)=xi.(2axi)

f'(x) производная функции f(x).

Следующая таблица показывает сравнение поведения симуляции HDL Reciprocal с блоком Math Reciprocal:

Math ReciprocalHDL Reciprocal

Вычисляет обратную величину, когда 1/N при помощи HDL делит оператор (/), чтобы реализовать деление.

Использует итерационный метод Ньютона-Raphson. Блок вычисляет приближенное значение обратной величины входа блока и может дать к различным результатам симуляции по сравнению с блоком Math Reciprocal.

Чтобы совпадать с результатами симуляции блоку Math Reciprocal, увеличьте число итераций для блока HDL Reciprocal.

Параметры

Number of iterations

Количество итераций Ньютона-Raphson. Значение по умолчанию равняется 3.

Порты

Блок имеет следующие порты:

Входной параметр
  • Поддерживаемые типы данных: фиксированная точка, целое число (подписанный или без знака), дважды, один

  • Минимальная битная ширина: 2

  • Максимальная битная ширина: 128

Вывод

Тип входных данныхТип выходных данных
'double''double'
единственныйединственный
встроенное целое числовстроенное целое число
встроенная фиксированная точкавстроенная фиксированная точка

fi (value, 0, word_length, fraction_length)

fi (value, 0, word_length, word_length –fraction_length–1)

fi (value, 1, word_length, fraction_length)

fi (value, 1, word_length, word_length –fraction_length–2)

Вопросы совместимости

развернуть все

Не рекомендуемый запуск в R2021a

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Смотрите также

|

Введенный в R2014b