0

我需要找到迭代地图的固定点x[n] == 1/2 x[n-1]^2 - Mu
我的做法:

Subscript[g, n_ ][Mu_, x_] :=  Nest[0.5 * x^2 - Mu, x, n]

fixedPoints[n_] := Solve[Subscript[g, n][Mu, x] == x, x]

Plot[
  Evaluate[{x, 
   Table[Subscript[g, 1][Mu, x], {Mu, 0.5, 4, 0.5}]}
  ], {x, 0, 0.5}, Frame -> True]
4

3 回答 3

4

我会稍微改变一下符号(主要是为了让我自己能理解)。你可能想要这样的东西。

y[n_, mu_, x_] := Nest[#^2/2 - mu &, x, n]
fixedPoints[n_] := Solve[y[n, mu, x] == x, x]

显着的特点是现在嵌套的“函数”实际上是一个函数,格式正确。

例子:

fixedPoints[2]

Out[18]= {{x -> -1 - Sqrt[-3 + 2*mu]}, 
          {x -> -1 + Sqrt[-3 + 2*mu]}, 
          {x ->  1 - Sqrt[ 1 + 2*mu]}, 
          {x ->  1 + Sqrt[ 1 + 2*mu]}}

丹尼尔·利赫特布劳

于 2011-04-05T04:20:33.697 回答
3

首先,您的方法存在错误。Nest 采用纯函数。我也将使用精确输入,即 1/2 而不是 0.5,因为 Solve 是一个符号而不是数字求解器。

Subscript[g, n_Integer][Mu_, x_] := Nest[Function[z, 1/2 z^2 - Mu], x, n]

然后

In[17]:= fixedPoints[1]

Out[17]= {{x -> 1 - Sqrt[1 + 2 Mu]}, {x -> 1 + Sqrt[1 + 2 Mu]}}
于 2011-04-05T04:21:07.843 回答
0

旁注:

看看当你开始非常接近固定点时会发生什么(奇怪:):

f[z_, Mu_, n_] := Abs[N@Nest[1/2 #^2 - Mu &, z, n] - z]

g[mu_] := f[1 + Sqrt[1 + 2*mu] - mu 10^-8, mu, 10^4]

Plot[g[mu], {mu, 0, 3}, PlotRange -> {0, 7}]  

在此处输入图像描述

编辑

实际上,您似乎在那里有一个自动相似的结构:

在此处输入图像描述

于 2011-04-06T16:06:22.333 回答