求解步骤
- 列出不动点方程 f ( μ ∗ , x ∗ ) = x ∗ f(\mu^*, x^*) = x^* f(μ∗,x∗)=x∗
- 求解稳定性条件方程 ∂ ∂ x f ( μ , x ) ∣ ∗ = − 1 \frac{\partial}{\partial x} f(\mu, x)\big|_{*} = -1 ∂x∂f(μ,x) ∗=−1
代码实现
# 求解倍分岔周期的参数值
import sympy as sp
# 声明迭代方程
mu = sp.Symbol('mu')
x = sp.Symbol('x')
expr = 1 - mu * x**2
# 不动点方程
fixedPointExpr = expr - x
# 不动点方程的解
xRoots = sp.solve(fixedPointExpr, x)
# x的偏导数
diff = sp.diff(expr, x)
# 稳定性条件边界为-1
bifurcationExpr = diff + 1
# 由于x1小于0,所以只考虑x2求解稳定性条件
muRoot = sp.solve(bifurcationExpr.replace(x, xRoots[1]), mu)
解: μ = 3 4 \mu = \frac{3}{4} μ=43