gpt4 book ai didi

python-2.7 - 求解微分方程Sympy

转载 作者:行者123 更新时间:2023-12-01 01:57:59 24 4
gpt4 key购买 nike

我一直无法找到这个微分方程的特定解。

from sympy import *

m = float(raw_input('Mass:\n> '))
g = 9.8
k = float(raw_input('Drag Coefficient:\n> '))
v = Function('v')
f1 = g * m
t = Symbol('t')
v = Function('v')
equation = dsolve(f1 - k * v(t) - m * Derivative(v(t)), 0)
print equation

对于 m = 1000 和 k = .2,它返回
Eq(f(t), C1*exp(-0.0002*t) + 49000.0)

这是正确的,但我想要求解当 v(0) = 0 时应该返回的方程
Eq(f(t), 49000*(1-exp(-0.0002*t))

最佳答案

我相信 Sympy 还不能考虑初始条件。虽然 dsolve有选项 ics对于输入初始条件(请参阅文档),它似乎用途有限。

因此,您需要手动应用初始条件。例如:

C1 = Symbol('C1')
C1_ic = solve(equation.rhs.subs({t:0}),C1)[0]

print equation.subs({C1:C1_ic})

Eq(v(t), 49000.0 - 49000.0*exp(-0.0002*t))

关于python-2.7 - 求解微分方程Sympy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38950163/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com