Сплайн апроксимация

Здравствуйте. Нужно сделать аппроксимацию данных полученных с датчика движения.
Мне очень нравиться как это делают сплайны.
Особенно как это реализовано в alglib.

Но сейчас беда в том что алглиб можно пользовать только в личных целях. И тут он вообще не подходит никакх.

Подскажите пожалуйста каким образом можно достичь этого результата??
Желательно с кодом на С++, С#.

Интерполяцию я построил используя этот код но тут нету никакой возможности сгладить функцию. Результат стабильно включает в себя все исходные точки измерений.

Также буду благодарен если подкинете реализации МНК также на си. Я почему то сколько гуглю, результаты то на пакет математика то на питон и матлаб… (((

А с теорией в этой части мне сложно разобраться.

Спасибо.

Вот нашел на питоне апроксиматор. Переписал, вроде все работает как положено. С тестовыми данными совпадает.

Алглиб говорит что они еще применяют какое то пенальти дял сглаживания результатов.

Что это такое то?? И как его применить с учетом имеющегося кода?

Ну он до этого примера вроде бы описан alglib.net/interpolation/leastsquares.php#header10, но да, чот готовая простая реализация на питоне и т.д. не гуглится (
По “penalized regression spline fitting” выдает разные статьи. https://www.whitman.edu/Documents/Academics/Mathematics/Griggs.pdf

Я так сходу с таких формул не могу выродить код. Это прям слишком…(((

Подойдет в данной задаче и метод координитного спуска:
Аппроксимация функций. Метод спуска.

Спасибо. Но вот нашел либу на питоне и сях.
Сделал обертку на C# работает более чем отлично.