Количество операций
noperations(q)
noperations(q)
количество операций квантования во время вызова quantize(q,...)
для объекта quantizer
q
. Это значение накапливается по последовательным вызовам quantize
. Вы сбрасываете значение noperations
, чтобы обнулить путем выдачи команды resetlog(q)
.
Каждый раз, когда любой элемент данных квантуется, noperations
постепенно увеличивается одним. Действительные и комплексные части считаются отдельно. Например, (complex * complex)
считает четыре операции квантования для продуктов и два за сумму, because(a+bi)*(c+di) = (a*c - b*d) + (a*d + b*c)
. Напротив, (real*real)
считает одну операцию квантования.
Кроме того, действительные и комплексные части входных параметров квантуются индивидуально. В результате для комплексного входа длины 204 элемента, noperations
считает 408 квантизации: 204 для действительной части входа и 204 для комплексной части.
Если какие-либо входные параметры, состояния или коэффициенты с комплексным знаком, они все расширены от действительных значений до комплексных чисел с соответствующим увеличением количества операций квантования, зарегистрированных noperations
. Строго говоря (real*real)
требует меньшего количества квантизации, чем (real*complex)
и (complex*complex)
. Изменение всех значений, чтобы объединить, потому что каждый является комплексным, таким как коэффициент, превращает (real*real)
в (real*complex)
, повышая количество noperations
.