В настоящее время я написал код, который генерирует полином для интерполяции нескольких наборов данных, которые у меня есть. Теперь я хочу вычислить ошибку в полиномиальных коэффициентах, но не уверен, как это сделать go.
Мой текущий код ниже:
import numpy.polynomial.polynomial as poly
import matplotlib.pyplot as plt
import numpy as np
f = [0,5,16,18.5,30,50]
a = [1.41,1.43,0.72,0.78,0.8,0.86]
b = [3.80e-5,5.40e-5,5.14e-5,5.16e-5,8.5e-5,1.58e-4]
c = [1.6e-2,1.54e-2,10.523e-2,14.589e-2,11.1e-2,5.66e-2]
f_new = np.linspace(f[0], f[5], num=len(f)*10)
coefs_a = poly.polyfit(f, a, 3)
coefs_b = poly.polyfit(f, b, 2)
coefs_c = poly.polyfit(f, c, 2)
ffit_a = poly.polyval(f_new, coefs_a)
ffit_b = poly.polyval(f_new, coefs_b)
ffit_c = poly.polyval(f_new, coefs_c)
print(coefs_a)
print(coefs_b)
print(coefs_c)
plt.plot(f,a)
plt.show()
plt.plot(f_new, ffit_a)
plt.title('a')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Coefficient value')
plt.show()
plt.plot(f,b)
plt.show()
plt.plot(f_new, ffit_b)
plt.title('b')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Coefficient value)')
plt.show()
plt.plot(f,c)
plt.show()
plt.plot(f_new, ffit_c)
plt.title('c')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Coefficient value')
plt.show()
Итак, в настоящее время я генерирую значения коэффициентов и, следовательно, многочлены для величин с именами '' a '', '' b '' и '' c '' и теперь хочу получить ошибки в этих коэффициентах, чтобы я мог вычислить общую ошибку для каждой из величин '' a '', '' b '' и '' c ''.