Регистрируйте максимумы
y = maxlog(a)
y = maxlog(q)
y = maxlog(a)
возвращает самое большое реальное значение объекта fi
a
, поскольку журналирование было включено или с прошлого раза, когда журнал был сброшен для объекта.
Включите журналирование путем установки свойства LoggingMode
объекта fipref
на on
. Сбросьте журналирование для объекта fi
с помощью функции resetlog
.
y = maxlog(q)
максимальное значение после квантования во время вызова quantize(q,...)
для объекта quantizer
q
. Это значение является максимальным значением, с которым сталкиваются по последовательным вызовам quantize
, поскольку журналирование было включено и сбрасывается с resetlog(q)
. maxlog(q)
эквивалентен get(q,'maxlog')
и q.maxlog
.
P = fipref('LoggingMode','on'); format long g a = fi([-1.5 eps 0.5], true, 16, 15); a(1) = 3.0; maxlog(a) Warning: 1 overflow occurred in the fi assignment operation. > In embedded.fi.fi at 510 In fi at 220 Warning: 1 underflow occurred in the fi assignment operation. > In embedded.fi.fi at 510 In fi at 220 Warning: 1 overflow occurred in the fi assignment operation. ans = 0.999969482421875
Самое большое значение, которое может возвратить maxlog
, является максимальным представимым значением своего входа. В этом примере a
является объектом fi
со знаком с размером слова 16
, дробная длина 15
и область значений:
- 1 ≤ x ≤ 1 – 2-15
fi
a
с помощью функции range
:format long g r = range(a) r = -1 0.999969482421875
q = quantizer; warning on format long g x = [-20:10]; y = quantize(q,x); maxlog(q) Warning: 29 overflows. > In embedded.quantizer.quantize at 74 ans = .999969482421875
Самое большое значение, которое может возвратить maxlog
, является максимальным представимым значением своего входа. Можно получить область значений x
после квантования с помощью функции range
:
format long g r = range(q) r = -1 0.999969482421875
fipref
| minlog
| noverflows
| nunderflows
| reset
| resetlog