Как записать начальные условия в функции scipy.integrate.ode (или другой)?

Поскольку mySoundFile является Stream, вы можете воспользоваться перегруженным конструктором SoundPlayer, который принимает объект Stream:

System.IO.Stream str = Properties.Resources.mySoundFile;
System.Media.SoundPlayer snd = new System.Media.SoundPlayer(str);
snd.Play();

Документация класса SoundPlayer (MSDN)

0
задан DuckPunk 17 January 2019 в 09:05
поделиться

1 ответ

Это проблема с граничными значениями, вам необходимо использовать solve_bvp

from scipy.integrate import solve_bvp
import matplotlib.pyplot as plt
import numpy as np

def eq(t,u): return [u[1], -0.106*u[1]-0.006*u[0]] #return u' and u''
def bc(u0,u1): return [u0[0], u1[1]-1 ]

res = solve_bvp(eq, bc, [0,1], [[0,1],[1,1]])
time = np.linspace(0, 10) 

plt.plot(time, res.sol(time)[0])
plt.xticks(range(0,11))
plt.grid(True)
plt.xlabel('time')
plt.ylabel('u(t)')
plt.show()

. Обратите внимание, что продолжением является экстраполяция и значения в 1 имеют допуск 1e-3. Таким образом, можно получить лучший результат на большом интервале, используя solve_ivp с вычисленными значениями при t = 1 в качестве начальных значений. Разница в этом примере составляет около 0,01.

0
ответ дан LutzL 17 January 2019 в 09:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: