Похоже что исходная функция не является гладкой, больше похоже на дискретные числа. А значит гладкая функция на выходе пытается смоделироать дискретную разрывную функцию исходных данных - конечно на разрывах ее клинить будет. Может сглаживание какое для исходных данных добавить?