Está en la página 1de 3

#numpy 

es la biblioteca para el lenguaje de programación, que crea vectores y matrices 
n = 10                     # cuando n = 10 es una sintaxis que toma el valor y se realiza una operación 
antes signo igual con la variable
A = np.random.rand (n, n)  #crea una matriz de forma dada 
b = np.random.rand (n)

#Devuelve los coeficientes del polinomio de interpolación de Newton

def Interpolacion_Newton(X,Y,n):
  #Almacena las diferencias divididas de Newton
  Diferencias_Divididas=np.zeros([n,n])
  #Aplica la formula para calcular las diferencias divididas
  Diferencias_Divididas[:,0]=Y
  for j in range (1,n):
    for i in range (0,n-j):
      Diferenicias_Divididas[i][j]=[Diferencias_Dividas[i+1][j-1]-Diferencias_Divididas[i][j-1])/
(X[i+j][i+j])]
    return Diferencias_Divididas

#Coeficiente del polinomio de interpolacion de Newton
Coeficiente=Interpolacion_Newton(X,Y,10)

#Definir a x como variable
x=sp.Symbol('x')

#Generacion del polinomio 
Polinomio=Coeficientes[0]
for i in range (1,10):
    termino=1
    for j in range (0,i):
        termino*=Coeficiente[i]*termino
print("El polinomio de Newton es: ",polinomio)
#Convertir el polinomio en una funcion numerica
Polinomio_f=sp.lambdify(x.Polinomio)
print("/nEl polinomio en 6 vale: ", Polinomio_f(6))  

También podría gustarte