Calcul scientifique/Interpolation

Un livre de Wikibooks.

Exemple d'Interpolation (filtrage) de Savitsky et Golay du second et du quatrième ordre sur 11 points.... Savitsky-Golay sur Wikipedia

def F2(a,b,c,d,e,f,g,h,i,j,k):
   """This function is the base for the Savitsky Golay 2nd order smoothing """ 
   coefs=[-0.084, 0.021, 0.103, 0.161, 0.196, 0.207, 0.196, 0.161,0.103, 0.021, -0.084]
   return (a*coefs[0] + b*coefs[1] + c*coefs[2] + d*coefs[3] + e*coefs[4] + f*coefs[5] + g*coefs[6] + h*coefs[7] + i*coefs[8] +j*coefs[9] + k*coefs[10]) 
def lisse2(x):
   """Does the 2nd order savitsky Golay smoothing"""
   tx = ([ x[0] ] * 5)  + x + ([ x[-1] ] * 5)
   rx = []
   for i in range(5,len(tx)-5):
               rx.append(apply(F2,tuple(tx[i-5:i+6])))
   return rx