from numpy import *
from pylab import *
from math import *
def TentMap(a,x):
if x>= 0 and x<0.5:
return 2.*a*x
elif x>=0.5 and x<=1.:
return 2.*a*(1.-x)
# We set a = 0.98, a typical chaotic value
a = 0.98
N = 1.0
xaxis = arange(0.0,N,0.01)
Func = TentMap
subplot(211)
title(str(Func.func_name) + ' at a=%g and its second iterate' %a)
ylabel('X(n+1)') # set y-axis label
plot(xaxis,Func(a,xaxis), 'g', antialiased=True)
subplot(212)
ylabel('X(n+1)') # set y-axis label
xlabel('X(n)') # set x-axis label
plot(xaxis,Func(a,Func(a,xaxis)), 'bo', antialiased=True)
機能TentMap
が正しく動作していません。The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
私はそれらをどのように使用することになっているのか理解できませんというエラーが発生し続けます。基本的に、TentMap
関数は値 X を取り、X が何であるかに応じて特定の値を返します。したがって、0<=x<0.5 の場合は 2 a x を返し、0.5<=x<=1 の場合は 2 a (1-x) を返します。