Me estoy volviendo loca
Publicado por lindawarrior90 (1 intervención) el 17/11/2022 19:30:32
Buenas tardes!!
Acudo a vosotros como último recurso. Debo hacer para la universidad una programación en python. El caso que necsito imprimir el polinomio que obtengo con la interpolación de neville, podríais ayduarme a saber cual es el código?
el código que tengo correcto es este, pero no ocnsigo imprimir el polinomio, pero sí los coeficientes:
gracias <3
Acudo a vosotros como último recurso. Debo hacer para la universidad una programación en python. El caso que necsito imprimir el polinomio que obtengo con la interpolación de neville, podríais ayduarme a saber cual es el código?
el código que tengo correcto es este, pero no ocnsigo imprimir el polinomio, pero sí los coeficientes:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
def interpolacion_polinomica_Neville(xa,ya,x):
n = len(xa)
p = n*[0]
for k in range(n):
for i in range(n-k):
if k == 0:
p[i] = ya[i]
else:
p[i] = ((x-xa[i+k])*p[i]+(xa[i]-x)*p[i+1])/(xa[i]-xa[i+k])
return p[0]
xa = np.array([5.0,7.0])
ya = np.array([2.0,4.0])
punto_a_calcular = 6
pendiente = (ya[1] - ya[0] )/(xa[1]-xa[0]);
ordenada =ya[0] - pendiente*xa[0];
y = interpolacion_polinomica_Neville(xa,ya,punto_a_calcular)
n = xa.size
p = np.polyfit(xa,ya, n-1)
print ('Vamos a interpolar los puntos (x,y)')
for i in range(n):
print('(',xa[i],',',ya[i],')')
print('y obtener el valor y=f(x)=f(',punto_a_calcular,')')
print(' ')
print('Resultado de la interpolación usando nuestra implementación del algoritmo de Neville:')
print('y=f(',punto_a_calcular,')=',y)
print('Resultado de la interpolación usando la librería numpy:')
print('y=f(',punto_a_calcular,')=',np.polyval(p,punto_a_calcular))
print(50*'-')
gracias <3
Valora esta pregunta


0