De chaotische slinger berekend met RLaB
beschreven en geplot door Kees Wouters

De slinger wordt in grote aantallen in uurwerken gebruikt vanwege zijn uiterst regelmatige beweging. Maar zodra een aantal voorwaarden niet meer vervuld zijn, komt aan deze regelmaat een einde. De beweging van de slinger wordt in een aantal gevallen zelfs chaotisch. Om omlooptijden van hemellichamen te meten, waarvoor het slingeruurwerk in het midden van de zeventiende eeuw door Christiaan Huygens ontwikkeld is, is hij dan niet meer geschikt.

Zoals bekend is de frequentie van de slinger bij kleine uitwijkingen omgekeerd evenredig met de wortel van de lengte van de staaf. Bij een lengte van ongeveer 250 mm is deze frequentie 1 Hz, dus de slinger slingert elke seconde één keer heen en weer. Bij toenemende amplitude neemt de frequentie steeds verder af. Als hij precies de top zou bereiken duurt dat (theoretisch) zelfs oneindig lang. Voor de pragmatici onder ons is dit natuurlijk een mooie opgave om dat te verifiëren.

Nog interessanter wordt het als als het ophangpunt van de slinger zelf ook slingert. Als het ophangpunt zich in vertikale richting sinusvormig verplaatst ontstaan plaatjes die de moeite waard zijn. Sommigen zullen zeggen: chaotische plaatjes. De verplaatsing en snelheid van een massa aan een slinger worden bepaald door de bewegingsvergelijkingen. Voor de slinger is dit een tweede orde differentiaal vergelijking (niks anders als: kracht = massa maal versnelling) die omgezet kan worden in twee eerste orde differentiaalvergelijkingen. Dit omzetten wordt gedaan om de numerieke integratie met RLaB uit te kunnen voeren. Met de beginvoorwaarden (dat wil zeggen positie en snelheid bij het begin van de integratie) ligt de beweging van de massa in principe vast.

De slinger met een bewegend ophangpunt heb ik gekozen omdat dit interessante plaatjes oplevert. Een poging het gedrag ervan kompleet te verklaren zal ik niet geven. Voor geïnteresseerden is bijvoorbeeld het boek 'Het einde van de voorspelbaarheid, chaostheorie, ideeën en toepassingen' van H. Broer e.a. aanbevelenswaardig. De uitleg over de gebruikte functies van RLaB en de slinger verloopt in het volgende dwars door elkaar heen. Hopelijk schrikt dat niet iedereen af...

De slinger bestaat uit een massa die op een einde aan een stang bevestigd is. Het andere einde van de stang beweegt zich vertikaal, sinusvormig met een vaste frequentie f en een amplitude So. Verder bepaalt de hoek phie die de stang maakt met de vertikale lijn de positie van de massa, zoals aangegeven in figuur 1.

De bewegingsvergelijkingen kunnen dan uitgedrukt worden in de hoek (phie), de hoeksnelheid (phiep; p aan het einde van een variabele is de afgeleide naar de tijd in RLaB notatie) en de toestand van het ophangpunt. De differentiaalvergelijking kan door de RLaB integrator ode(...) numeriek opgelost kan worden.

NB: Garantie dat de differentiaalvergelijking volledig korrekt is, geef ik niet ...
De parameters van ode(...) zijn:
y = ode(slinger,tstart,tend,x0,dtout,relerr,abserr)
y tijds- en toestandsvector
slinger de definitie van de differentiaalvergelijking
tstart start tijd van de integratie
tend eind tijd van de integratie
dtout tijdsinterval waarop output y gegeneerd wordt
x0 beginwaarden van de toestandsvector x = x(t=tstart)
relerr relative fout tijdens de integratie
abserr absolute fout tijdens de integratie

De eerste kolom van de vector y is de tijd t = (tstart:tend:dtout)' en de volgende kolommen zijn de toestandsvectoren: y = [t,x]. De functie slinger heeft twee parameters; de momentane tijd t en de toestandsvector x. Als output wordt de tijdsafgeleide van de toestandsvector xp = dx/dt berekend: xp = slinger(t,x). Eventuele andere parameters kunnen in RLaB als globale variabelen gedefinieerd worden en dan binnen een functie gebruikt worden. ode(...) is een Adams-Bashforth predictor-corrector integrator met zelfzoekende stapgrootte en variabele orde (maximaal 12 voor de predictor en 13 voor de corrector stap) en is zeer economisch met het aantal aanroepen van de functie 'slinger'.

Terug naar de slinger. De lengte van de stang is 0.3 m met een frequentie van iets meer dan 0.9 Hz. De maximale uitwijking van het ophangpunt is 0.13 m. Nadat de integratie is uitgevoerd kan bijvoorbeeld de (x,y)-positie van de massa weergeven worden.

Dit is gedaan in

waarbij de frequentie van het ophangpunt steeds toeneemt (van 0 Hz tot 2 Hz). In het beeld links boven is de positie aangeven waarbij het ophangpunt stilstaat en de massa een halve cirkelbaan beschrijft. Dit is nog geheel volgens verwachting. In de volgende beelden (van links naar rechts en van boven naar onder) neemt de frequentie steeds verder toe en daarmee de complexiteit van de baan. In deze beelden zijn overigens steeds twee banen met verschillende frequenties door elkaar getekend. Dit om een voorbeeld van de functie plhold te geven.

Hieronder volgt het RLaB programma

voor het berekenen en plotten van de baan voor de verschillende frequenties van het ophangpunt. De eerste drie funkties S, SP en SDP bepalen de positie, snelheid en versnelling van het ophangpunt. De funktie slinger bepaalt de bewegingsvergelijkingen van de massa. Het hoofdprogramma bestaat uit een loop waarbij telkens de frequentie verhoogd wordt, de integratie uitgevoerd wordt en het resultaat geplot wordt. De funktie plstart(2,2) initialiseert een plotfile (bijvoorbeeld drawfile) met vier afzonderlijke beelden (twee horizontaal bij twee vertikaal). De funkties plot en plhold zorgen voor het feitelijke opvullen van de beelden. Bij plot wordt het beeldnummer een opgehoogd, terwijl bij plhold nogmaals in hetzelfde beeld getekend wordt. Essentieel is aan het einde plhold_off, aangezien verder geen enkel plotkommando in RLaB meer loopt.

De overige functies spreken waarschijnlijk voor zich. In

zijn in plaats van de banen van de massa enkel nog discrete punten aangegeven. Op elk tijdstip waarop het ophangpunt in de oorspronkelijke toestand terug is, worden de positie en snelheid van de massa afgebeeld; dit is het fasediagram. Als het ophangpunt met 0.75 Hz beweegt is het phasediagram nog zeer overzichtelijk; er ontstaat een gesloten kromme. Bij hogere frequenties verdwijnt dit totaal en bij 1.5 Hz is het nagenoeg het totale
opgevuld. Hier is een zekere mate van chaos ontstaan. In tegenstelling tot de vorige figuur is hier voor de linestyle "point" gekozen, juist omdat het hier om discrete punten gaat. In figuur 2 is de linestyle "line" en "line-point". Andere mogelijkheden geeft RLaB op dit moment niet.

Van het programma "fase" is alleen dat deel gegeven wat verschillend is van het vorige; voor het overige is de struktuur zoals in "baan". Met het kommentaar en enige moeite is het mogelijk het programma te volgen, althans dat hoop ik.

Groeten uit Vlaanderen,
Kees Wouters