MeanAndVarOnTheFly
Вычисление среднего и дисперсии данных по алгоритму Велфорда без хранения отдельных значений в памяти
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:629542630e6db2498929181b4b463d95069d608cb9532771f0a78a1be57f6653MeanAndVarOnTheFly-1.1.0-62954263.zipОписание
Когда нужно отслеживать среднее и разброс данных с датчиков, но памяти под хранение всех отсчётов нет, выручает алгоритм Велфорда. Эта библиотека вычисляет среднее и дисперсию (как смещённую, так и несмещённую) налету, не сохраняя в памяти отдельные значения. Работает с любыми знаковыми целыми типами данных. Есть шаблонный класс MeanAndVar для одной переменной — добавляешь отсчёты методом add(), потом извлекаешь результаты через getMean(), getVariance() и getUnbiasedVariance(). Для многомерного анализа предусмотрен CovarianceMatrix (поддерживает int32_t, int64_t и double), который считает ковариации между переменными. В примерах показано применение для фильтрации показаний АЦП. Если нужны новые расчёты, просто вызови reset() и начни заново.