̬̬̬̈̬̬̬̬̈̬̬̬̬̬̪쬪̬̬̬̪쬪 >?U̼ ͫ޻̛͛V Sv PUUUUUPU̻X̼ ݼݬ̫X d UUUUͼd ͫ޺ݽ޼ͬy Bv UUUUUU̻H ݼzݼ͚Xݼ T UUUUUUUUU̼yc ͫκݼ͛ݼy 1e UUUPUUP̻7 ݼjޜ̼ެ{ Sv̼ ̼yr ͫ͸̼޼y͋ d̻ ̫ ݼJ|˻zGݬj v̼ ̼yp ͫޛwݼ ̻ ͼ ݼZ{ެg޽ ̼ ̻xr ͫެ͹ ̻ U̼6 ݼzj͚Xͻ ̼ UUPUUUUU̻hs ͛͛[iݬ ̻ UUPUUPPP̼F ݼެuެޜ ̼ UUUUPPPͼXt ͛޼޽ ̻ UUPUUUUU̻U ͼ͙ͪY ̼ U̼Gu ̋ͪޛ ̻ ̻yT ͼޫ޼ ̼ ̻7u zޛ˛コiެ ̼ ̼xb ͫތιz ̻ ̼ ݼJ|ޫ ̼ `f``ff`̻h` ̫lh ̻ f`fff`ff̻xv ͼiݜ ̼ `f`ff`̻Wc ݼݽ͹ ̻ `f``f`̼x4v ̫ݻ޻ ̼ ff`fff`ff`fff̻x6d ͼݼެ ̻ ̻WBv ͼ ޻~ ̼ ̼gd ̫I ެ݌ͺ̻ ̻xF@v ̻ |͸̼̼xVTv̻h ެͫݫ ̼̻wVAev̻h ޼ͬݜ ̻wgV4CU̻xd ݼ̼ ݬzy ̼wwwffUE4#2ge̫i ̹̫ ̻wwwwwwfffVUUDD3#wxwf5@e̻x Y̺ͺt ̼xwfU42̻xV {ͼ ݝݭͪ ̻̼wVB̼X ެݬ ͺޜ{̼̼wF@̻ ݬ̬̻̻g̫h ޼ ޽˼̻̼x6ͼ ͺ̼̻gͫ ޼ݼ̻̻xݼ ݝw̼̻޺ `̻̼̻x̻̼w̼ ̻xw̻x޻̼xww̼wܾ̻www̻xw̻̼xwwwͼxww o̻̻wwww̼www߻̻̼xwwww̻xwwwͻ̻wwwwg̼xwwwwͻͼxwwwwf̻wwwwwͼ̻wwwwgf̼xwwwww޼ ̻xwwwwff̻wwwwww߼ ̼wwwwfffwwwwwww߼ ̻xwwwgfffxwwwwwww ̻ ̼wwwwffffwwwwwwww ͻ ̻xwwwgffffxwwwwwwww ͻ ̼xwwwwfffffxwwwwwwwww λ ̻wwwwgfffffwwwwwwwwwf ߼ xwwwgfffffVxwwwwwwwwff K wwwwffffffUwwwwwwwwgff- xwwwgfffffUUwwwwwwwwgfff ͫ | wwwwfffffVUUxwwwwwwwgffff ̻λ xwwwgfffffUUUwwwwwwwwfffff ̻߻ wwwwfffffVUUUxwwwwwwwffffff ̻ܾ߼ xwwwgffffVUUUUwwwwwwwgffffff ̼ wwwgfffffUUUUUwwwwwwwgfffffff̼ ͼ wwwwfffffVUUUUUxwwwwwwwffffffff̻ ͼ xwwwgffffVUUUUUUwwwwwwwfffffffff̼ ޼ wwwwfffffUUUUUUUxwwwwwwgfffffffff̻ ̻܎ xwwwgffffVUUUUUUUxwwwwwwgffffffffff̻ ͻ wwwgfffffUUUUUUUUwwwwwwwfffffffffff̼ ͼ xwwwfffffUUUUUUUUDxwwwwwwffffffffffff~̻ ޼ wwwgffffVUUUUUUUEDwwwwwwgffffffffffff̼ ߼ xwwwfffffUUUUUUUEDDxwwwwwgfffffffffffff̻ ̻ͼ wwwgffffVUUUUUUUDDDwwwwwwffffffffffffff̼ ͻͼ wwwwffffVUUUUUUUDDDDwwwwwfffffffffffffff̻ ޼ͼ wwwfffffUUUUUUUEDDDDwwwwgfffffffffffffff̼ ݼ޼ wwgffffVUUUUUUEDDDDDwwwwfffffffffffffffV̻ ͻ߼ wwfffffUUUUUUUDDDDDDwwwfffffffffffffffUU̼ ͻ̻ ι ͼG`͙λ ͼ7s Ιμ ͻt Κ ͻ Ίޭ ͫ$ Ί ̫yB Ί ̫h` ͊ ̛Hs ͊ ݼ ͊ ݼ% ͊ͼyQ yެ  ͫXr yެ  ̛ yެ  ݼ5 yݬ  ݼy` y͛  ͫHwwwwwwwwwww ޼i͛  ͛wwwfffffUUffffww ޼iݼ  ޼z`ffVUUDDDDDDDUUefw ޼h̻  ͫHUED43#""""""3CDUevw ݬX̻x` ͛64#""3DUfwͫH̼F0 ޼zp2CUfͫGW!30 ͫ!CT̛'&uxc| ͊c!CͼvwFtu  ޼Y!̫yDA̼v ͛F!"333333"ͼh@ͬx ޼j"3CDUUUUUUUED3"ͼxtݼy ̼ ݫ'TUffvwwwwwwffUD3ͼiPv&z ̼ zfwwwgfU4ͼhtGj ެwgV4̼Hi zxgV4̻zl ެ'gV$7̼ z̻gEF͛ ެG̻xfUݬ j̻x޼ ެu ̻͊ 9 ̻K ޛ ̻ | ( ͼ { ̻ ެu ͼ ߫ """3033DD@D """ " 33330DDDD@DD"" "  "3000303DDDDDD@D"" "   300033DD@D" "" "0333303D@DDD@DH -- title: pixelLyapunov -- author: shine -- source: Nehmain java source code -- desc: pixelized Lyapunov fractal computing -- script: lua cls() -- setup fractal periode='1112111' initial=math.random(0,3) iterations=3 width =40 height=40 k11=3.54 k12=3.57 k21=3.45 k22=3.61 x0=0.55 -- precalc mathLog2=math.log(2) -- setup GUI t=0 stepX=0 stepY=1 inc=0 tstampstart=tstamp() iterationSum=0 -- TIC-TAC function TIC() t=t+1 if btn(0) then periode='1212111' end if btn(1) then periode='1122211' end if btn(2) then periode='1112111' end if btn(3) then periode='1112211' end -- steps -- if t%20==1 then if true then inc=inc+1 stepX=stepX+1 lyapunov(stepX,stepY) -- colonnes if stepX>=5 then stepX=0 stepY=stepY+1 end -- lignes if stepY>=4 then stepY=1 stepX=0 initial=math.random(0,3) end info(iterations,initial) panel() end end -- fractal de Lyapunov function lyapunov(stepX,stepY) -- steps initial=initial+stepX//4 iterations=iterations+stepX if iterations>20 then iterations=3 end -- tracage for pixelX=0,width do k2=pixelX/width*(k22-k21)+k21 for pixelY=0,height do k1=pixelY/height*(k12-k11)+k11 x=x0 exposant=0 for i=0,initial do x=cycle(i,k1,k2)*x*(1-x) end for i=0,iterations do x=cycle(i,k1,k2)*x*(1-x) exposant=exposant+math.log(math.abs(cycle(i,k1,k2)*(1-2*x)))/mathLog2 end exposant=exposant/iterations if exposant<0 then color=math.ceil(math.max(0,(1+exposant)*15)) else color=math.ceil(math.min(15,(1-exposant)*16)) end -- pixel + steps pix( pixelX+(stepX-1)*width*1.05, pixelY+(stepY-1)*height*1.05, color ) end end end function cycle(i,k1,k2) longeur=string.len(periode) modulo=(i%longeur)+1 if(string.sub(periode,modulo,modulo))=='1' then return k1 else return k2 end end -- info fract function info(iterations,initial) rect(0,130,240,140,0) print('iter '..iterations,0,130,2) print('loc ' ..math.ceil(initial),40,130,3) print('num ' ..inc,80,130,4) iterationSum=iterationSum+iterations print('bench ' ..math.floor(1/( (tstamp()-tstampstart) / iterationSum )),120,130,5) end -- command panel function panel() rect(210,0,240,140,0) print('ARROW',210,0,5,false,1) print('period',210,10,5) print(periode,210,20,6) end