Раздел «Язык Си».SymPyODE:
Задачник: Филиппова

def apply_ics(sol, ics, x, known_params):
....: """
....: Apply the initial conditions (ics), given as a dictionary on
....: the form ics = {y(0): y0, y(x).diff(x).subs(x, 0): yp0, ...},
....: to the solution of the ODE with independent variable x.
....: The undetermined integration constants C1, C2, ... are extracted
....: from the free symbols of the ODE solution, excluding symbols in
....: the known_params list.
....: """
....: free_params = sol.free_symbols - set(known_params)
....: eqs = [(sol.lhs.diff(x, n) - sol.rhs.diff(x, n)).subs(x, 0).subs(ics)
....:     for n in range(len(ics))]
....: sol_params = sympy.solve(eqs, free_params)
....: return sol.subs(sol_params)

In [22]: ode_sol
In [23]: apply_ics(ode_sol, ics, t, [k, Ta])

IDEA! Чтобы в Input[23] первого примера получить ответ в виде [{C1:T0−Ta}], добавьте функцию solve аргумент dict=True, то есть C_sol = solve(C_eq, dict=True)

Решения 2019 года:

Attachment sort Action Size Date Who Comment
ODE_1Temperature.ipynb manage 44.5 K 23 Apr 2017 - 23:20 TatyanaDerbysheva dT/dt = -k(T-Ta), notebook
ODE_1Temperature.py.txt manage 3.9 K 23 Apr 2017 - 23:20 TatyanaDerbysheva dT/dt = -k(T-Ta), python file
ODE_1Temperature.html manage 279.2 K 24 Apr 2017 - 00:35 TatyanaDerbysheva dT/dt = -k(T-Ta), html
ODE_2Garmonic.ipynb manage 57.4 K 24 Apr 2017 - 00:36 TatyanaDerbysheva колебания груза на пружине, находим C1 и C2 отдель
ODE_2Garmonic.py.txt manage 4.2 K 24 Apr 2017 - 00:37 TatyanaDerbysheva колебания груза на пружине, находим C1 и C2 отдель
ODE_2Garmonic-Copy1.ipynb manage 54.7 K 24 Apr 2017 - 00:37 TatyanaDerbysheva колебания груза на пружине, находим C1 и C2 вместе
ODE_2Garmonic-Copy1.py.txt manage 3.5 K 24 Apr 2017 - 00:38 TatyanaDerbysheva колебания груза на пружине, находим C1 и C2 вместе
ODE_2Garmonic-Copy1.html manage 288.0 K 24 Apr 2017 - 00:38 TatyanaDerbysheva колебания груза на пружине, находим C1 и C2 вместе
ODEsystem-Filippov786.ipynb manage 7.1 K 15 Nov 2018 - 11:23 TatyanaDerbysheva Филиппов задача 786 (решение системы линейных ОДУ)
ODEsystem-Filippov786.html manage 246.9 K 15 Nov 2018 - 11:24 TatyanaDerbysheva Филиппов задача 786 (решение системы линейных ОДУ)
ODE-2example1.ipynb manage 33.0 K 15 Nov 2018 - 11:27 TatyanaDerbysheva Филиппов пример на текстовые задачи (концентрация)
ODE-2example1.html manage 270.8 K 15 Nov 2018 - 11:28 TatyanaDerbysheva Филиппов пример на текстовые задачи (концентрация)
FilippovDU.pdf manage 8469.9 K 15 Nov 2018 - 11:29 TatyanaDerbysheva Филиппов (pdf)
kasatelnaya1.ipynb manage 25.1 K 23 Oct 2019 - 09:07 TatyanaDerbysheva Построение графика касательной к функции в точке
ODE_1Temprature_simple.ipynb manage 21.4 K 20 Nov 2019 - 08:19 TatyanaDerbysheva dT/dt = -k(T-Ta), notebook, попроще решение
ODE_ex_concentration.ipynb manage 25.5 K 20 Nov 2019 - 08:20 TatyanaDerbysheva Филиппов пример на текстовые задачи (концентрация)