требуют одновременного выполнения большого количества операций (вроде построения искусственных нейронных сетей)
class CubicInterpolator extends AbstractInterpolator
interpolate: (t) ->
k = Math.floor t
m = [(@getTangent k), (@getTangent k+1)] #get tangents
p = [(@getClippedInput k), (@getClippedInput k+1)] #get points
#Translate t to interpolate between k and k+1
t -= k
t2 = t*t #t^2
t3 = t*t2 #t^3
#Apply cubic hermite spline formula
return (2*t3 - 3*t2 + 1)*p[0] + (t3 - 2*t2 + t)*m[0] + (-2*t3 + 3*t2)*p[1] + (t3 - t2)*m[1]
+ [''] * 3
- молча проглатываем ошибки в случае ввода менее трех переменных.[:3]
- молча проглатываем ошибки в случае ввода более трех переменных.