Zajęcia I : Obroty na okręgu

Litery greckie esc+litera+esc na przykład : θ, ω, ϵ, ρ, τ, ψ, ...

obrot[θ_,x_]:=Mod[N[x+θ],2*Pi]

Manipulate[Plot[obrot[θ,x],{x,0,6 Pi},AxesLabel->{"x","(Subscript[f, λ])(x)"},PlotStyle->Red,AxesStyle->Arrowheads[0.05],LabelStyle->Directive[15,Black],PlotLabel->"Wykres funkcji obrotu"],{{θ,Exp[1],"Kąt obrotu"},0,2 Pi}]

Zajmiemy się orbitą :

orbita[x0_,θ_,n_]:=NestList[obrot[θ,#]&,x0,n-1]

Orbita innym sposobem przy użyciu funkcji Table[]

orbita1[x0_,θ_,n_]:=Table[Mod[N[x0+i*θ],2*Pi],{i,0,n-1,1}]

Rysujemy wykres orbity

Manipulate[zp=orbita[x0,θ,n];ListPlot[Table[{i-1,zp[[i]]},{i,1,Length[zp]}],PlotStyle->{Red,PointSize[Medium]},PlotRange->{0,2 Pi},AxesLabel->{"n","((Subscript[f, λ])^((n)))((Subscript[x, 0]))"},LabelStyle->Directive[15,Black],PlotLabel->"wykres orbity"],{{θ,Exp[1],"Kąt obrotu"},0,2 Pi},{{x0,2,"(Subscript[x, 0])"},},{{n,40,"Max. długość orbity"},{40,80,160,320}}]

Teraz narysujmy wizualizację orbity

Manipulate[zp=orbita[x0,θ,Max[n,k]];Graphics[{Red,Circle[],Black,Table[Disk[{Sin[zp[[i]]],Cos[zp[[i]]]},0.02],{i,1,k}]},PlotLabel->"wizualzacja orbity",LabelStyle->Directive[15,Black]],{{θ,Exp[1],"Kąt obrotu"},0,2 Pi},{{x0,2,"(Subscript[x, 0])"},0,2 Pi},{{n,40,"Max. długość orbity"},{40,80,160,320}},{{k,n,"ilość kroków"},1,n,1}]

Warto jeszcze zrobić histogram :

Histogram[orbita[Pi/3,Pi/12,15000],{1/10},"PDF",ChartStyle->Green,PlotLabel->"Histogram orbity",LabelStyle->Directive[15,Black],PlotRange->{{0,2 Pi},All}]

Łączymy wszystko na jednym wykresie

Manipulate[zp=orbita[x0,θ,Max[n,k]];
GraphicsGrid[{
{
Graphics[{Red,Circle[],Black,Table[Disk[{Sin[zp[[i]]],Cos[zp[[i]]]},0.02],{i,1,k}]},
PlotLabel->"wizualzacja orbity",
LabelStyle->Directive[15,Black]],  

ListPlot[Table[{i-1,zp[[i]]},{i,1,k}],PlotStyle->{Red,PointSize[Medium]},
PlotRange->{{0,n},{0,2 Pi}},
AxesLabel->{"n","((Subscript[f, λ])^((n)))((Subscript[x, 0]))"},
LabelStyle->Directive[15,Black],
PlotLabel->"wykres orbity"]
},
{
Plot[obrot[θ,x],{x,0,4Pi},
AxesLabel->{"x","(Subscript[f, λ])(x)"},
PlotStyle->Red,
AxesStyle->Arrowheads[0.05],
LabelStyle->Directive[15,Black],
PlotLabel->"Wykres funkcji obrotu",
ImageSize->50,
Ticks->{{0,Pi,2Pi,3Pi,4 Pi},{0,Pi/2,Pi,3Pi/2}},
AxesOrigin->{0,0}],

Histogram[zp,{1/10},"PDF",
ChartStyle->Green,
PlotLabel->"Histogram orbity",
LabelStyle->Directive[15,Black],
PlotRange->{{0,2 Pi},All}]
}
}
,ImageSize->650],
{{θ,Exp[1],"Kąt obrotu"},0,2 Pi},
{{x0,2,"(Subscript[x, 0])"},0,2 Pi},
{{n,40,"Max. długość orbity"},
{40,80,160,320,640}},
{{k,n,"ilość kroków"},1,n,1}]