Страница 1 из 1

Тип данных FFT

Добавлено: 25 ноя 2018, 14:25
Fancnc
Здравствуйте!
Библиотека которая используется в LV, насколько понял переваривает только dbl, какой тип данных не подай внутри он сам переделает в dbl или не прав? Из-за этого получается избыточная точность и она просто не нужна при работе с 16 разрядными АЦП и сжирает лишние ресурсы. Есть ли сторонние библиотеки под LV и м.б. кто-нибудь их использовал?

Re: Тип данных FFT

Добавлено: 25 ноя 2018, 21:07
Kosist
А на каком железе будет "бежать" финальная программа? И какое количество данных "за один подход" Вы будете "скармливать" для FFT? В чем смысл экономии ресурсов, если по-сути их потребление может быть будет мало?

Re: Тип данных FFT

Добавлено: 26 ноя 2018, 01:22
Fancnc
Цап: 200+ каналов, fd 150000 генерация сигналов с бпф,обработка и обпф. Во временной области пытался делать, не все получается сделать так как надо.
Для ацп похожая задача, только без обпф, но с 50% перекрытием + вторичная обработка. Выборка 8192.

Re: Тип данных FFT

Добавлено: 26 ноя 2018, 01:23
Fancnc
Железо pxi8880

Re: Тип данных FFT

Добавлено: 26 ноя 2018, 14:35
Borjomy_1
Компьютер все равно оперирует 32-битными или 64 битными переменными, как бы исходные данные ни были-бы упакованы. Операции с плавающей точкой по быстродействию сравнимы с целочисленными, особенно при поточных вычислениях. А точность вычисления очень важна. Так как, по сути, вычисляется среднее. Т.е при 100 отсчетах вычислительная ошибка при операциях с плавающей арифметикой будет 0.01, а при целочисленной - 1. И чем больше точек, тем больше будет разница в точности.
Если вас это не волнует, то делайте ресемплинг. Это гораздо более эффективный способ поднять быстродействие. Также для вычисления амплитуды/фазы одной гармоники существуют гораздо более эффективные способы. Поэтому все зависит от задачи.

Re: Тип данных FFT

Добавлено: 27 ноя 2018, 22:51
Fancnc
Странно, запускал простой пример с множеством арифметический действий с разными форматами dbl, sgl, int32. dbl считается медленней sgl от 18 до 30% в зависимости от задачи, а dbl относительно int32 на 40-60%. Точность на одни и те же вычисления между dbl и sgl по тому же примеру отличаются 2-3%.
Также для вычисления амплитуды/фазы одной гармоники существуют гораздо более эффективные способы
Если бы одна гармоника, то и лезть в частотную область не надо.