Jak zaimplementować przekrój Poincarego dla wahadła ?
Przykładowo w scilabie
gdy rozwiąże równania ruchu
d(teta)/dt = omega
d(omega)/dt = -2betaomega-omegap^2sin(teta)+gcos(fi)
d(fi)/dt=omegad
siłą wymuszjącą jest gcos(omegadt)
rozwiązania zapisane są w 2-wymiarowej tablicy
teta to x(1) (np.x(1,1) - to teta po pierwszym kroku czasowym)
omega - x(2)
fi - x(3)
teraz ograniczam fi do przedziału [0,2pi]
x(3,:)=modulo (x(3,:),2*%pi)
tu pojawia się problem ponieważ liczby fi z początkowego przedziału [0,2pi] nie powtarzają się dalej.
(różnią się o niewielkie wartości w kolejnych przedziałach)
i algorytm postaci
fi0=x(3,50)
for i=51:100
if x(3,i)==fi0
plot2d(x(1,i),x(2,i));
end
end
nie działa