#python-3.x #scipy
Вопрос:
Уравнение: y»=40x — 10(x^2)
Граничное условие: y(0)=0,004 и y(1)= 0,007
Необходимо построить график x против y
def fun(x, y):
return np.vstack((y[1], (40000*x)-(20000*(x**2)/2)))
def bc(ya, yb):
return np.array([ya[0], yb[0]])
x = np.linspace(0, 1, 11)
y_a = np.zeros((2, x.size))
y_b = np.zeros((2, x.size))
y_a[0] = 0.004
y_b[0] = 0.007
res_a = solve_bvp(fun, bc, x, y_a)
res_b = solve_bvp(fun, bc, x, y_b)
x_plot = np.linspace(0, 1, 11)
y_plot_a = res_a.y[0]
y_plot_b = res_b.y[0]
plt.plot(x_plot, y_plot_a, label='y_a')
plt.plot(x_plot, y_plot_b, label='y_b')
plt.show()
Ошибка значения: x и y должны иметь одинаковое первое измерение, но иметь формы (11,) и (13,)
- Когда у x 11 элементов, почему у y 13 элементов
- Правильно ли применяется граничное условие?