Files
ailearning/docs/da/059.md
2020-10-27 17:39:13 +08:00

129 lines
48 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 解微分方程
In [1]:
```py
%pylab inline
```
```py
Populating the interactive namespace from numpy and matplotlib
```
## 积分求解
### 简单的例子
$$\frac{dy}{dt} = sin(t)$$In [2]:
```py
def dy_dt(y, t):
return np.sin(t)
```
积分求解:
In [3]:
```py
from scipy.integrate import odeint
t = np.linspace(0, 2*pi, 100)
result = odeint(dy_dt, 0, t)
```
In [4]:
```py
fig = figure(figsize=(12,4))
p = plot(t, result, "rx", label=r"$\int_{0}^{x}sin(t) dt $")
p = plot(t, -cos(t) + cos(0), label=r"$cos(0) - cos(t)$")
p = plot(t, dy_dt(0, t), "g-", label=r"$\frac{dy}{dt}(t)$")
l = legend(loc="upper right")
xl = xlabel("t")
```
![](data:image/png;base64,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)
### 高阶微分方程
抛物运动(竖直方向):
$$ \frac{d^2x}{dt^2} = g - \frac{D}{m}\frac{dx}{dt} $$
改写成如下形式:
$$y = \left[x, \frac{dx}{dt}\right] $$$$\begin{aligned} \frac{dy_0}{dt} &= y_1 \\\ \frac{dy_1}{dt} &= -g - \frac{D}{m} y_1 \\\ \end{aligned} $$In [5]:
```py
def dy_dt(y, t):
"""Governing equations for projectile motion with drag.
y[0] = position
y[1] = velocity
g = gravity (m/s2)
D = drag (1/s) = force/velocity
m = mass (kg)
"""
g = -9.8
D = 0.1
m = 0.15
dy1 = g - (D/m) * y[1]
dy0 = y[1] if y[0] >= 0 else 0.
return [dy0, dy1]
```
In [6]:
```py
position_0 = 0.
velocity_0 = 100
t = linspace(0, 12, 100)
y = odeint(dy_dt, [position_0, velocity_0], t)
```
In [7]:
```py
p = plot(t, y[:,0])
yl = ylabel("Height (m)")
xl = xlabel("Time (s)")
```
![](data:image/png;base64,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)
In [8]:
```py
y, infodict = odeint(dy_dt, [position_0, velocity_0], t, full_output=True, printmessg=True, )
print sorted(infodict.keys())
print "cumulative number of function evaluations at each calculated point:", infodict['nfe']
print "cumulative number of time steps", infodict['nst']
```
```py
Integration successful.
['hu', 'imxer', 'leniw', 'lenrw', 'message', 'mused', 'nfe', 'nje', 'nqu', 'nst', 'tcur', 'tolsf', 'tsw']
cumulative number of function evaluations at each calculated point: [ 45 49 51 53 55 59 61 61 63 65 67 67 69 71 73 73 75 77
77 79 79 81 81 83 85 85 87 87 89 89 91 91 93 95 95 97
97 99 99 101 101 103 103 105 107 107 109 109 111 111 113 113 115 115
117 117 119 119 121 121 123 123 123 125 125 127 127 129 129 131 131 131
133 133 135 135 135 137 137 139 139 139 141 141 143 143 143 145 145 147
147 149 149 149 154 158 274 280 280]
cumulative number of time steps [ 20 22 23 24 25 27 28 28 29 30 31 31 32 33 34 34 35 36
36 37 37 38 38 39 40 40 41 41 42 42 43 43 44 45 45 46
46 47 47 48 48 49 49 50 51 51 52 52 53 53 54 54 55 55
56 56 57 57 58 58 59 59 59 60 60 61 61 62 62 63 63 63
64 64 65 65 65 66 66 67 67 67 68 68 69 69 69 70 70 71
71 72 72 72 73 75 130 133 133]
```