A Mathematica Implementation of Nonlinear Dynamical Systems ...

1 downloads 0 Views 23MB Size Report
the kneading theory developed by Milnor and Thurston [1] and the spider algo- ... The spider algorithm [2, 4] was designed to study certain properties of the Man- delbrot set for families ..... output, we only count the number of words in each list.
The Mathematica® Journal

A Mathematica Implementation of Nonlinear Dynamical Systems Theory via the Spider Algorithm and Finding Critical Zeros of HighDegree Polynomials T. M. Jonassen Important properties pertaining to families of discrete dynamical systems are furnished here by studying the kneading theory developed by Milnor and Thurston, and subsequently implementing the spider algorithm, developed by Hubbard and Schleicher. The focus is on identifying crucial combinatorial and numerical properties of periodic critical orbits in one-dimensional discrete dynamical systems, which are generated by iterating real quadratic polynomial maps that constitute an important class of unimodal systems.

‡ Introduction The mathematical concepts and notations, which facilitate the introduction of the kneading theory developed by Milnor and Thurston [1] and the spider algorithm developed by Hubbard and Schleicher [2], are summarized first. A mapping f of an interval I Õ  given by f : I Ø I gives rise to a dynamical system on I by iteration. An orbit of a point x0 œ I is a sequence of points 8xi 0; hence, y2 = x3 - x1 > x4 - x1 = y3 > 0. Therefore the map is well defined. Assume as in Example 1 that s has a fixed point x, that is, sHxL = x. The fixed point equation gives us that x12 = x2 - x1 , x22 = x3 - x1 , x32 = x4 - x1 , x42 = - x1 , and x5 = 0. Substituting,

we

rewrite

these

equations

x1 = 0 + x1 ,

as

2

x2 = x12 + x1 ,

2

2

x3 = x22 + x1 = Ix12 + x1 M + x1 , x4 = x32 + x1 = IIx12 + x1 M + x1 M + x1 , and x5 = 0. This is exactly a critical period-5 orbit for our polynomial family pq , where 2

2

2

0 Ø q Ø q2 + q Ø Iq2 + qM + q Ø IIq2 + qM + qM + q Ø 0. Hence, a fixed point for this spider map corresponds to a superstable period-5 orbit with kneading sequence LRRLC. Example 3. In Examples 1 and 2 we used spider maps with fixed points that correspond to periodic critical orbits obeying certain combinatorial properties. In the two first cases we used kneading sequences that are compatible with the dynamics of the system x # x2 + q. We now choose a map that corresponds to an incompatible kneading sequence (later to be called an inadmissible kneading sequence). Consider the sequence LRLRC. This gives us the real spider space SI1,4,5,3,2M,3 = 9Ix1 , x2 , x3 , x4 , x5 M œ 5 : x1 < x3 < x5 < x4 < x2 with x5 = 0= and suggests that we define the spider map as s Ix1 , x2 , x3 , x4 , x5 M = K-

x2 - x1 ,

x3 - x1 , -

x4 - x1 ,

- x1 , 0O = I y1 , y2 , y3 , y4 , y5 M.

We show that s : SI1,4,5,3,2M,3 Ø SI1,4,5,3,2M,3 is not well defined. Note that, since x1 < 0 y1 = -

and

x2 > x4 > 0,

x2 - x1 < -

we

have

x2 - x1 > x4 - x1 > 0

so

x4 - x1 = y3 < 0. Hence, y1 < y3 < 0 = y5 . However,

x3 < 0 so x3 - x1 < 0 - x1 , that is, y2 = x3 - x1 < - x1 = y4 , implying that SI1,4,5,3,2M,3 is not closed under s. As a consequence, some of the roots of the component functions may become complex after a few iterations of s. Indeed, this is The Mathematica Journal 11:3 © 2009 Wolfram Media, Inc. exactly what happens as we show later on.

We show that s : SI1,4,5,3,2M,3 Ø SI1,4,5,3,2M,3 is not well defined. Note that, since 320

x1 < 0 y1 = -

and

x2 > x4 > 0,

x2 - x1 < -

we

have

M. Jonassen x2 - x1 > x4 - xT. so 1 > 0

x4 - x1 = y3 < 0. Hence, y1 < y3 < 0 = y5 . However,

x3 < 0 so x3 - x1 < 0 - x1 , that is, y2 = x3 - x1 < - x1 = y4 , implying that SI1,4,5,3,2M,3 is not closed under s. As a consequence, some of the roots of the component functions may become complex after a few iterations of s. Indeed, this is exactly what happens as we show later on.

‡ Finding Admissible Kneading Sequences Using the Minimality of the Kneading Sequence with Respect to the Lexicographic Order We apply the theory developed in [1] to obtain an algorithm that decides if a kneading sequence is admissible. This algorithm is based on the fact that the kneading sequence is minimal with respect to the lexicographic order denoted by Ç as defined in the next subsection. In particular, if s is the shift map on the symbol space, then K Ç si HK L, i = 1, … , n - 1, for any admissible kneading sequence K of length n.

· The Lexicographic Order Let  = 8L, C, R< be a three-letter alphabet with the ordering L < C < R, and let S =  be the set of infinite words from  subject to the restriction: suppose Wa and Wb are two words in S containing the letter C, say Wa = W1 C W2 and Wb = W3 C W4 , where W1 and W3 do not contain the letter C; then W2 = W4 . Let S œ S, where we write S = 8si 0 (corresponding to the symbol R). We can now define a signed lexicographic ordering, denoted by Ä (less) and Ç (less or equal), for two elements S, T œ S. Assume that si = ti for 0 § i § n - 1, then S Ä T if either tn-1 HSL = 0 and sn < tn , or tn-1 HSL = 1 and sn > tn . We write S Ç T if S Ä T or S = T. The following lemma is used to construct the general algorithm for finding admissible kneading sequences. Lemma 1. Let K H f L be a kneading sequence of a unimodal map f : I Ø I, let AHxL be the itinerary of a point x œ I, and let s denote the shift map on the symbol space. Then K H f L Ç si HAHxLL for all x œ I and i ¥ 0. In particular, K H f L Ç si HK H f LL. Proof. See [3] or [1]. · We may use the special case AHxL = K H f L of Lemma 1 to decide if a given candidate S for a periodic kneading sequence of length n is admissible. We simply need to test if S Ç si HSL for 1 § i § n - 1.

The Mathematica Journal 11:3 © 2009 Wolfram Media, Inc.

A Mathematica Implementation of Nonlinear Dynamical Systems Theory

321

Mathematica Programs We first generate possible candidates for admissible periodic kneading sequences and then reduce the number of candidates by excluding some sequences that cannot be candidates. Clearly all sequences must start with LR if n ¥ 3, and it is easy to prove that sequences of the form LRLW RC and LRLRW C, where W is a word from 8L, R< including the empty word, cannot be admissible for n ¥ 5. Here are the programs that generate the candidates. In[1]:=

nLsn_ : StringJoinTable"L", n; nRsn_ : StringJoinTable"R", n; BaseStringn_, m_ : nLsn  nRsm;

Generatorsn_ : MapBaseString, Tablen  i, i, i, 0, n; KneadSeq1 : "C"; KneadSeq2 : "LC"; KneadSeq3 : "LRC"; KneadSeqn_Integer : Map"LR"    "C" &, MapStringJoin, Flatten MapPermutations, MapCharacters, Generatorsn  3, 1; ExclusionRuleOnen_Integer : Map"LRL"    "RC" &, MapStringJoin, Flatten MapPermutations, MapCharacters, Generatorsn  5, 1; ExclusionRuleTwon_Integer : Map"LRLR"    "C" &, MapStringJoin, Flatten MapPermutations, MapCharacters, Generatorsn  5, 1; FilteredKneadSeqn_Integer : Ifn  5, KneadSeqn, ComplementKneadSeqn, UnionFlattenExclusionRuleOnen, ExclusionRuleTwon;

These programs find the signed lexicographic order for the candidate strings. In[10]:=

LexOrderx_, y_ : Modulealphabet  "L", "C", "R", px, py, px  FirstFlattenPositionalphabet, x; py  FirstFlattenPositionalphabet, y; ReturnIfpx  py, 0, Ifpx  py, 1, 1; SymbolValuex_ : Ifx  "L", 1, 0; LxOrds_List, t_List, n_Integer :

Modulel  Lengths, i  1, res  0, Ifs  t, Switchn, 1, Return0, 0, ReturnFalse, 1, ReturnTrue; Whilesi  ti && i  l, res  SymbolValuesi; i ;; IfEvenQres && LexOrdersi, ti  1, Switchn, 1, Return1, 0, ReturnTrue, 1, ReturnTrue; IfOddQres && LexOrdersi, ti  1, Switchn, 1, Return1, 0, ReturnTrue, 1, ReturnTrue; Switchn, 1, Return1, 0, ReturnFalse, 1, ReturnFalse; LexicographicOrders_List, t_List : LxOrds, t, 1; LGOrderLesss_List, t_List : LxOrds, t, 0; LGOrderLessOrEquals_List, t_List : LxOrds, t, 1; s_  t_ : LGOrderLessCharacterss, Characterst; s_  t_ : LGOrderLessOrEqualCharacterss, Characterst;

The Mathematica Journal 11:3 © 2009 Wolfram Media, Inc.

322

T. M. Jonassen

These programs test the candidates and return the ones that are admissible sequences. In[18]:=

MinimalSeqQs_ : IfMaxMapLexicographicOrderCharacterss,  &, Map i, 1, LengthCharacterss  1  0, True, False;

Characters, TableStringJoinRotateLeftCharacterss, i, Modulelgl, gl, al  , Ifn  6, ReturnFilteredKneadSeqn; lgl  Lengthpl  FilteredKneadSeqn;

GenerateAdmissibleKneadingSequencesn_Integer :

DoIfMinimalSeqQpli, al  al, pli, i, 1, lgl; ReturnFlattenal;

Here is what we wanted to obtain. Due to the large number of elements in the output, we only count the number of words in each list. In[20]:=

LengthFilteredKneadSeq14,

LengthGenerateAdmissibleKneadingSequences14

Out[20]=

1280, 585

‡ The Ordering of Points in an Admissible Periodic Kneading Sequence (Or, Forming the Real Spiders) Let K H f L = LRW C be an admissible kneading sequence with †K H f L§ = n and W a word from the alphabet 8L, R< with †W § = n - 3. Let the corresponding dynamical orbit be 8x1 , x2 , … , xn