Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2001
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2001

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: chaos-to -order transform

  • To: mathgroup at smc.vnet.net
  • Subject: [mg27345] Re: chaos-to -order transform
  • From: "Seth Chandler" <SChandler at Central.UH.Edu>
  • Date: Wed, 21 Feb 2001 03:17:30 -0500 (EST)
  • Organization: University of Houston
  • References: <96t8ss$pqi@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Perhaps something like this would work. It uses a functional programming
construct rather than a procedural one. It runs quite fast on my PC. Using a
mouse click to input coordinates is going to require some fancy MathLink or
J/Link programming, I believe.

Seth J. Chandler
Assoc. Professor of Law
University of Houston Law Center

T[t_] = {{2 Cos[t], Cos[t] - Sin[t]}, {Cos[t] + Sin[t], Cos[t]}};

brambilla[t_, init_, iters_:500] := NestList[Mod[T[t].#, 1] &, init, iters]

randomstarts = Table[{Random[], Random[]}, {5}];

Show[GraphicsArray[
      Outer[ListPlot[brambilla[#1, #2, 100], Frame -> True, Axes -> False,
            AspectRatio -> 1, PlotJoined -> True,
            PlotLabel -> {ToString[#1] <> "\n" <> ToString[#2]},
            DisplayFunction -> Identity, TextStyle -> FontSize -> 7,
            PlotRegion -> {{0, 1}, {0, 1}}] &, {\[Pi]/2 - 0.2, \[Pi]/2 -
            0.1, \[Pi]/2 - 0.05, \[Pi]/2 - 0.01}, randomstarts, 1, 1]],
    DisplayFunction ->
      Function[Display[$Display, #, ImageSize -> {600, 600/GoldenRatio}]]];


"Roberto Brambilla" <rlbrambilla at cesi.it> wrote in message
news:96t8ss$pqi at smc.vnet.net...
> Dear math-friends,
> some years ago, studying transitions from chaos to order,
> I and a my collegue (Casartelli), devised the following example:
>  (1) consider the positive unit square Q{x,y|0<=(x,y)<1}
>  (2) consider the following real unitary transform of Q into itself
>
>   T[t_]={{2 Cos[t],Cos[t]-Sin[t]},
>          {Cos[t]+Sin[t],Cos[t]}}
>
>      {x1,y1} = T.{x0,y0} (*mod 1*)
>
>       i.e. take only the decimal part.
>
> Then, given a value of parameter t (0<t<Pi/2) and a starting
> arbitrary point (seed) {x0,y0} in Q, build a long list (say some
> hundreds)of points
>   {{x0,y0},{x1,y1},.....{xn,yn}}
> where each point is the transformed of the preceding one.
> Plotting these lists you obtain very different images depending
> on the value of the parameter t and the starting points.
> It is useful to put in a single graph many plots corresponding to the
> same t value an different starting points (fine with different colors!).
> For small value of t, points seem to be scattered in Q in a random
> o quasi-random way (chaos).
> For t near Pi/2 points arrange in circles (order).
> For intermediate t values you will obtain complex figures.
> Little changes in t sometimes can produce completely different
> figures.
> (3) Problem : for which t values significant transitions happen?
>
>                  -o0o-
>
> At that time I used a C-program and for a fixed t and list length,
> I could choose the starting point with the mouse, directly clicking
> on a unit square picture and I could follow in real time the outspreading
> of points into the square.
> I had no to memorize the sequences, since points were represented
> (memorized) on the screen. All worked very quicly.
>
> Using Mathematica is possible something analogue?
> Actually I use the rfollowing rather unsatisfactory method,
> since slow and memory consuming and no movie-effect :
>
> t=1.14724; (*parameter 0<=t<=Pi/2*)
> T={{2 Cos[t],Cos[t]-Sin[t]},{Cos[t]+Sin[t],Cos[t]}};
>
> lmax=500;
> p={.4,.7}; (*seed,initial point*)
> l={p};
> For[k=1,k<=lmax,k++,
>     p=Mod[T.p,1];
>     AppendTo[l,p];
> ]
> ListPlot[l,Frame->True,Axes->False,AspectRatio->1]
>
> Then with Show[] I put figures together etc..
> Is it possible to choose the seed on the figure and
> imitate in some way the old C program?
>
> Bye, Roberto
>
>
>
> Roberto Brambilla
> CESI
> Via Rubattino 54
> 20134 Milano
> tel +39.2.2125.5875
> fax +39.2.2125.610
> rlbrambilla at cesi.it
>
>




  • Prev by Date: Re: Graphing Functions
  • Next by Date: Re: avoiding neg values in NDSolve
  • Previous by thread: Re: chaos-to -order transform
  • Next by thread: Re:chaos-to -order transform