Opdracht Permanente Evaluatie 2b met bijkomende beschouwingen en rekenmodellen Filip Lambrechts 22 mei 2003
Figuur 1: Schets van het systeem.
1
Beschrijving
Twee massa’s m1 en m2 zijn verbonden met een touw dat door een gat in een tafel loopt. De massa m1 rust op het tafeloppervlak en bevindt zich op het tijdstip t0 op een afstand r0 = a van het gat in O. De massa m2 hangt onder het tafeloppervlak. Aan de massa m1 wordt op het tijdstip t0 een tangenti¨ele beginsnelheid v0 gegeven. Zie figuren 1 en 2. Bijkomende hypothesen: • Er treedt nergens wrijving op. • De massa’s zijn puntmassa’s. • Het touw is massaloos en niet elastisch. • Het vlak van de tafel staat loodrecht op de richting van het zwaartekrachtveld. • De tafel bevindt zich in een Galileiaans referentiestelsel.
2 2.1
Oplossingen PE2b Coo ¨rdinatenstelsel, Lagrangiaan van het systeem - geval m1 = m2 = m
Figuur 2: Doorsnede en bovenaanzicht. Kies poolco¨ ordinaten r en ϕ met een cartesische verticale as z als co¨ordinatenstelsel. De co¨ ordinaat z kan worden ge¨ıdentificeerd met de co¨ordinaat r, waardoor men enkel de poolco¨ ordinaten als co¨ordinatenstelsel dient te beschouwen. De kinetische energie T , de potenti¨ele energie V en de Lagrangiaan L zijn: 1 1 T = m r˙ 2 + r2 ϕ˙ 2 + mr˙ 2 2 2 1 2 2 2 = mr˙ + mr ϕ˙ 2 V = mgr L = T −V 1 = mr˙ 2 + mr2 ϕ˙ 2 − mgr 2 2
2.2
Bewegingsvergelijkingen - geval m1 = m2 = m
Algemene formule voor de Euler-Lagrange bewegingsvergelijkingen: d ∂L ∂L = dt ∂ q˙i ∂qi De parti¨ele afgeleiden zijn: ∂L = 2mr˙ ∂ r˙ ∂L = mr2 ϕ˙ ∂ ϕ˙
∂L = mrϕ˙ 2 − mg ∂r ∂L =0 ∂ϕ
Euler-Lagrange bewegingsvergelijkingen: d ∂L d d ∂L = mr2 ϕ˙ = 2m¨ r dt ∂ ϕ˙ dt dt ∂ r˙ ( 2m¨ r = mrϕ˙ 2 − mg 2¨ r − rϕ˙ 2 + g = 0 ⇒ ⇒ d 2 mr2 ϕ˙ = L (constante) mr ϕ˙ = 0 dt
2.3
Bespreking - geval m1 = m2 = m met r0 = a en/of v0 heel klein
(a) Indien a en v0 heel klein zijn, zal de in Q (zie fig. 2) opgehangen massa zich in zijn laagste mogelijke positie bevinden. Aangezien deze massa de potenti¨ele energie van het twee-massa-stelsel bepaalt, zal het systeem in dit geval een minimale potenti¨ele energie bezitten. In het hier gekozen referentiestelsel zal de potenti¨ele energie in deze situatie gelijk zijn aan nul. Aangezien v0 eveneens heel klein is, zal ook de kinetische energie verwaarloosbaar klein zijn. De totale energie van het systeem is dan gelijk aan nul. (b) Indien v0 = 0 en men laat de massa in P op een afstand a van de opening in O los op het tijdstip t = 0, dan wordt de potenti¨ele energie van de massa in Q geleidelijk aan omgezet in kinetische energie van beide massa’s. Op het moment dat de potenti¨ele energie volledig is omgezet in kinetische energie (dit is het moment dat de massa in P de opening in O bereikt) kunnen zich twee situaties voordoen: (1) Indien de massa (wrijvingsloos) over de opening kan glijden, zal de massa voorbij de opening schieten en zal de kinetische energie van beide massa’s terug worden omgezet in potenti¨ele energie van de massa in Q. Op het moment dat de kinetische energie volledig is omgezet in potenti¨ele energie, zal de massa in P zich opnieuw op een afstand a van de opening bevinden. Dit herhaalt zich ad infinitum. (2) Indien de massa niet over de opening kan glijden, omwille van bijvoorbeeld een geleidingsbuisje dat uit het tafeloppervlak omhoog steekt, komt het systeem abrupt tot stilstand (botsing). Hierbij wordt de energie van het twee-massa-stelsel volledig overgedragen op de omgeving en valt het systeem stil. 3
Indien v0 = 0 hebben we: ϕ˙ = 0
⇒ ⇒ ⇒ ⇒
r0 = a ⇒ r˙0 = 0 ⇒ ⇒ ⇒
2.4
2¨ r+g =0 g r¨ = − 2 g r˙ = − t + C1 2 g 2 r = − t + C1 t + C2 4 C2 = a C1 = 0 g r = a − t2 4 g r˙ = − t 2
√ Toon aan dat voor v0 = ag het deeltje P een eenparig cirkelvormige beweging uitvoert - geval m1 = m2 = m
Eenparig cirkelvormige beweging: √ (a) Stel v0 = ag (en r˙0 = 0). We weten reeds dat r0 = a. Dan is: r 1√ v0 g = ϕ˙ 0 = ag = a a a r¨0 = 0 Ingevuld in de eerste bewegingsvergelijking geeft dit:
⇒ ⇒
2¨ r0 − aϕ˙ 20 + g = 0 r 2 g 0−a +g =0 a 0=0
Tweede bewegingsvergelijking: r g √ = ma ag (= constante) mr2 ϕ˙ = ma2 a Dit bewijst voorlopig enkel dat op tijdstip t = 0 aan de bewegingsvergelijkingen wordt voldaan. We kunnen opmerken dat op dit tijdstip de centrifugale kracht gelijk is aan: m
v02 = maϕ˙ 20 = mg a
Deze wordt in evenwicht gehouden door het gewicht mg van de in Q opgehangen massa. Doordat er geen netto radiale kracht op de massa in P inwerkt, zal de afstand van P tot O constant blijven (r(t) = a). Hieruit volgt verder dat ϕ(t) ˙ = ϕ˙ 0 en v(t) = v0 . De massa m in P voert dus een eenparig cirkelvormige beweging uit.
4
(b) Omgekeerd, indien we veronderstellen dat de massa m in P een eenparig cirkelvormige baan beschrijft, dan is: r = a (= constante) ⇒ r˙ = 0 ⇒ r¨ = 0 Ingevuld in de eerste bewegingsvergelijking geeft dit: r g (= constante) 0 − aϕ˙ 2 + g = 0 ⇒ ϕ˙ = a r g √ ⇒ v = aϕ˙ = a = ag (= constante) a Zowel de hoeksnelheid als de tangenti¨ele snelheid zijn constant. Dit is in overeenstemming met het uitgangspunt. Aan de tweede bewegingsvergelijking wordt ook voldaan: r g ma2 ϕ˙ = ma2 (= constante) a Aangezien de snelheid v constant dient te zijn, moet de beginsnelheid √ hieraan gelijk zijn: v0 = ag.
2.5
Algemeen geval met m1 6= m2
(a) Veronderstel massa’s m1 en m2 in respectievelijk P en Q (zie fig. 2). De Lagrangiaan is dan: 1 m1 r˙ 2 + r2 ϕ˙ 2 + 2 V = m2 gr L = T −V 1 m1 r˙ 2 + r2 ϕ˙ 2 + = 2 T
=
1 m2 r˙ 2 2
1 m2 r˙ 2 − m2 gr 2
De parti¨ele afgeleiden zijn: ∂L = m1 r˙ + m2 r˙ = (m1 + m2 ) r˙ ∂ r˙ ∂L = m1 r2 ϕ˙ ∂ ϕ˙
∂L = m1 rϕ˙ 2 − m2 g ∂r ∂L =0 ∂ϕ
Euler-Lagrange bewegingsvergelijkingen: d ∂L d d ∂L = m1 r2 ϕ˙ = (m1 + m2 ) r¨ dt ∂ ϕ˙ dt dt ∂ r˙ ( (m1 + m2 ) r¨ = m1 rϕ˙ 2 − m2 g ⇒ d m1 r2 ϕ˙ = 0 dt (m1 + m2 ) r¨ − m1 rϕ˙ 2 + m2 g = 0 ⇒ m1 r2 ϕ˙ = L (constante)
5
(1)
De Euler-Lagrange bewegingsvergelijkingen kunnen worden herleid tot ´e´en bewegingsvergelijking van tweede orde. Aangezien de tweede EulerLagrange bewegingsvergelijking in (1) een eerste integraal is, kan men hiermee ϕ˙ vervangen in de eerste Euler-Lagrange bewegingsvergelijking in (1): v0 L = m1 r2 ϕ˙ = m1 r02 ϕ˙0 = m1 a2 = m1 av0 a m1 av0 av0 L = = 2 ϕ˙ = m1 r 2 m1 r2 r (m1 + m2 ) r¨ − m1 rϕ˙ 2 + m2 g = 0 2 L + m2 g = 0 ⇒ (m1 + m2 ) r¨ − m1 r m1 r2 1 L2 ⇒ (m1 + m2 ) r¨ − + m2 g = 0 m1 r3 ⇒ r¨ −
L2 1 m2 + g=0 m1 (m1 + m2 ) r3 m1 + m2
(2)
(b) Met dit systeem kan de massa inqP eveneens een eenparig cirkelvormige 2 beweging uitvoeren indien v0 = m m1 ga. De grootte van de centripetale kracht is gelijk aan het gewicht van de massa in Q: m2 g. Indien men voor een zekere a de massa in P een gepaste v0 geeft zodanig dat de massa in Q noch stijgt noch daalt, weet men dat er een centrifugale kracht moet zijn gelijk aan (in evenwicht met) het gewicht van de massa in Q (= bron van de centripetale kracht). Dit systeem kan dus worden gebruikt om het bestaan van een centripetale kracht aan te tonen. Laten we (voor het gemak): r m2 v0,krit = (3) ga m1 als de kritische beginsnelheid defini¨eren. (c) Indien deq beginsnelheid voor een zekere a kleiner is dan de kritische begin2 snelheid m m1 ga zal de massa op de tafel naar O toe bewegen vanwege de netto centripetale kracht. De straal r neemt af waardoor de tangenti¨ele snelheid en de centrifugale kracht toenemen. Op een gegeven moment wordt dan de centrifugale kracht gelijk aan de centripetale. Op dat moment heeft de massa in P nog steeds een radiale snelheid gericht naar O waardoor r verder afneemt en de centrifugale kracht groter wordt dan de centripetale. Deze naar buiten gerichte netto kracht doet de naar het centrum gerichte radiale snelheid afnemen tot 0, waarna de massa in P een naar buiten gerichte radiale versnelling begint te ondergaan. De massa in P zal dus heen en weer beginnen te oscilleren ten opzichte van een mogelijke eenparig cirkelvormige baan. Eenzelfde redenering geldt ook voor een beginsnelheid die groter is dan de kritische snelheid (op voorwaarde dat de tafel voldoende groot en het touw voldoende lang is).
6
3 3.1
Bijkomende beschouwingen Minimum- en maximumwaarde van de coo ¨rdinaat r van de baan van massa m1 en hoogte van massa m2
We weten dat m1 r2 ϕ˙ een constante is (cfr. 2.5): m1 r2 ϕ˙ = L
(4)
Op het tijdstip t0 is r = a en ϕ˙ = L = m1 a2
v0 zodat: a
v0 = m1 av0 a
(5)
Wegens het behoud van energie voor een afgesloten systeem geldt: 1 m1 2
T + V = E (= constante) 1 r˙ 2 + r2 ϕ˙ 2 + m2 r˙ 2 + m2 gr = E 2
(6)
In het hier gekozen referentiestelsel hebben we: E=
1 m1 v0 2 + m2 ga 2
(7)
De co¨ ordinaat r bereikt zijn minimum of maximumwanneer r˙ = 0. Stellen we r˙ = 0 en vervangen we ϕ˙ door L/ m1 r2 in de vergelijking (6) dan bekomen we: 2 ! 1 L 2 m1 r + m2 gr = E 2 m1 r2 1 L2 + m2 gr = E 2 m1 r2 L2 E 2 r + =0 ⇒ r3 − m2 g 2m1 m2 g ⇒
(8)
Aangezien r˙ = 0 op het tijdstip t0 , weten we reeds dat r = a een oplossing is van vergelijking (8). Deze vergelijking kunnen we dus herschrijven als: E L2 2 (r − a) r + a − r− =0 m2 g 2m1 m2 ga
⇒ (r − a) r2 + a −
1 2 2 m1 v0
+ m2 ga m2 g
m1 v0 2 m1 v0 2 a ⇒ (r − a) r − r− 2m2 g 2m2 g
2
2
(m1 av0 ) r− 2m1 m2 ga
! =0
=0
De minimum- of maximumwaarde van de co¨ordinaat r is dan een oplossing van: r2 −
m1 v0 2 m1 v0 2 a r− =0 2m2 g 2m2 g
7
Noemen we deze waarde rextr : s 2 m1 v0 2 a m1 v0 2 m1 v0 2 +2 ± 2m2 g 2m2 g m2 g ⇒ rextr = 2 r m2 g 1 m1 v0 2 a = 1± 1+8 4 m2 g m1 v0 2 Waarbij enkel de positieve oplossing zinvol is: r 1 m1 v0 2 m2 g rextr = a 1+ 1+8 4 m2 g m1 v0 2
(9)
(10)
Indien de beginsnelheid kleiner is dan de kritische beginsnelheid, geeft de vergelijking (10) de minimumwaarde van de co¨ordinaat r van de baan van m1 . De maximumwaarde is in dit geval r = a. Omgekeerd, indien de beginsnelheid groter is dan de kritische beginsnelheid, geeft de vergelijking (10) de maximumwaarde van de co¨ordinaat r van de baan van m1 . De minimumwaarde is in dit geval r = a. Indien de beginsnelheid gelijk is aan de kritische beginsnelheid, geeft de vergelijking (10) de waarde a.
3.2
Co¨ ordinaat r van de baan van massa m1 op het ogenblik dat de centrifugale kracht gelijk wordt aan de centripetale kracht
Op het ogenblik dat de centrifugale kracht gelijk wordt aan de centripetale kracht hebben we: m2 g = m1 ϕ˙ 2 r
(11)
Vervangen we ϕ˙ met behulp van vergelijking (4) en noemen we deze co¨ordinaat ropt , dan bekomen we: 2 L m2 g = m1 ropt 2 m1 ropt ⇒ ropt =
L2 m1 m2 g
13 (12)
Met een gegeven draaimoment L, massa’s m1 en m2 en valversnelling g, is dit de co¨ ordinaat r waarbij zich een eenparig cirkelvormige beweging zal voordoen.
3.3
Equivalent ´ e´ endimensionaal enkelvoudig massapunt probleem
De vergelijking (2) kunnen we herschrijven als volgt: ⇒ m1 r¨ =
L2 1 m1 m2 − g m1 + m2 r3 m1 + m2 8
(13)
Deze vergelijking kan worden beschouwd als een bewegingsvergelijking in ´e´en dimensie van een deeltje met massa m1 . De effectieve potenti¨ele energie wordt: Z r Z r m1 m2 L2 1 dr + Vef f = − g dr 3 0 m1 + m2 0 m1 + m2 r m1 m2 1 L2 + gr (14) = 2 2 (m1 + m2 ) r m1 + m2 Laten we dit resultaat vergelijken met de vergelijking voor de energie E (cfr. vergelijking (6)): E=
1 1 m1 r˙ 2 + r2 ϕ˙ 2 + m2 r˙ 2 + m2 gr 2 2
⇒ E=
1 1 m1 r˙ 2 + m1 r2 ϕ˙ 2 + 2 | {z } |2 T0
1 m2 r˙ 2 + m2 gr 2{z } V0
Vervang ϕ˙ met behulp van vergelijking (4) en r˙ met behulp van vergelijking (35) in V 0 en werk verder uit. V 0 wordt: V0
=
L2 1 m1 m2 m2 + gr + E 2 (m1 + m2 ) r2 m1 + m2 m1 + m2
2 E Deze vergelijking is gelijk aan de vergelijking (14) op de constante term m1m+m 2 na. We kunnen dus voor de effectieve potenti¨ele energie evengoed deze laatste vergelijking gebruiken, die ook geschreven kan worden als:
Vef f = V 0
= E − T0 =
E−
m1 r˙ 2 2
(15)
Bij rmin en rmax wordt r˙ = 0 zodat Vef f dan maximaal wordt. Bij ropt wordt r˙ maximaal zodat Vef f dan minimaal wordt. Dit laatste kunnen we ook als volgt aantonen: vgl. (14) ⇒
∂Vef f −L2 1 m1 m2 = + g ∂r m1 + m2 r3 m1 + m2
∂Vef f = 0 voor r = ropt ∂r Verder is: 2 ∂ Vef f 3L2 m1 m2 g 43 > 0 = ∂r2 r=ropt m1 + m2 L2 ⇒
Dus is Vef f minimaal voor r = ropt .
9
3.4
Bepaling van de coo ¨rdinaat r in functie van de hoek ϕ (in plaats van in functie van de tijd t)
Voer de volgende substitutie uit: u = 1r 1 Leid r = af naar de tijd (gebruik de kettingregel in het rechterlid): u 1 du ϕ˙ u2 dϕ 1 du Lu2 = − 2 u dϕ m1 L du = − m1 dϕ = −
r˙
Leid nogmaals af naar de tijd: L d2 u ϕ˙ m1 dϕ2 L2 u2 d2 u = − m12 dϕ2
r¨ = −
De vergelijking (13) wordt: m1 m2 L2 u2 d2 u L2 m1 − u3 − g = 2 2 m1 dϕ m1 + m2 m1 + m2 ⇒
d2 u m1 m12 m2 g 1 = − u + dϕ2 m1 + m2 m1 + m2 L2 u2
(16)
Indien u (en dus ook r) een constante is vinden we: 0=−
m1 m12 m2 g 1 u+ m1 + m2 m1 + m2 L2 u2
⇒ u
=
⇒ r
=
m1 m2
g 13 L2 13
L2 m1 m2 g
Deze vergelijking stemt overeen met de vergelijking (12) die de co¨ordinaat r bepaalt waarbij zich een eenparig cirkelvormige beweging zal voordoen (bij een gegeven draaimoment L, massa’s m1 en m2 en valversnelling g).
3.5
Periode van kleine radiale oscillaties om een eenparig cirkelvormige baan (perturbatieperiode)
Bij een eenparig cirkelvormige beweging hebben we: r0 = a r v0 = v0,krit =
m2 ga m1 10
v0 a Vertrekken we van de Euler-Lagrange bewegingsvergelijkingen: ϕ˙ 0 =
(17)
(m1 + m2 ) r¨ − m1 rϕ˙ 2 + m2 g = 0
(18)
m1 r2 ϕ˙ = L (constante)
(19)
Dan is: L = m1 a2 ϕ˙ 0 v0 = m1 a2 a = m1 av0 r m2 ga = m1 a m1 L ϕ˙ = m1 r 2 r m2 m1 a ga m1 = m1 r2 r m2 a ga m1 = r2
(20)
(21)
Voeren we een kleine radiale verstoring (perturbatie) δ a in dan is: r = a+δ r˙ = δ˙ r¨ = δ¨ De vergelijking (18) wordt: (m1 + m2 ) δ¨ − m1 rϕ˙ 2 + m2 g = 0 De term m1 rϕ˙ 2 kunnen we met behulp van vergelijking (21) als volgt herschrijven: 2 r m2 ga a m1 m1 rϕ˙ 2 = m1 r r2 = m2 = m2
a3 g r3 a3
3g
(a + δ)
⇒ (m1 + m2 ) δ¨ − m2
a3
3g
(a + δ)
+ m2 g = 0
11
(22)
Stel: f (δ) =
a3 3
(a + δ)
=
1 δ 1+ a
3
Voer een Taylorexpansie uit rond δ = 0: −3 δ f (δ) = 1 + ⇒ f (0) = 1 a −4 −3 δ −3 1+ f 0 (δ) = ⇒ f 0 (0) = a a a .. .. . . 3 1 − δ + ... a 3 ⇒ f (δ) ≈ 1 − δ a De vergelijking (22) wordt dan: 3 (m1 + m2 ) δ¨ − m2 1 − δ g + m2 g = 0 a ⇒ f (δ)
=
3 ⇒ (m1 + m2 ) δ¨ + m2 δg = 0 a ⇒ δ¨ +
m2 3g δ=0 m1 + m2 a
(23)
Dit is de differentiaalvergelijking van een harmonische beweging met δ ∼ eiωt zodat δ¨ ∼ −ω 2 eiωt . De hoeksnelheid van de perturbatie ωpert is dan gelijk aan: r m2 3g ωpert = (24) m1 + m2 a De periode van de perturbatie Tpert wordt: r m1 + m2 a 2π Tpert = = 2π m2 3g ωpert
(25)
Bij een gegeven draaimoment L, massa’s m1 en m2 en valversnelling g wordt dit: r m1 + m2 ropt (26) Tpert = 2π m2 3g s 31 m1 + m2 1 L2 = 2π (27) m2 3g m1 m2 g De uiteindelijke bewegingsvergelijkingen zijn: r (t) = a + δ cos (ωpert t) ϕ (t) = ϕ˙ 0 t 12
3.6
Vergelijking van de perturbatieperiode met de baanperiode bij een eenparig cirkelvormige beweging
De baanperiode (omwentelingsperiode) van massa m1 is: Tbaan =
2πr0 2πa = r m2 v0 ga m1 r
⇒ Tbaan = 2π
m1 a m2 g
Vergelijken we de pertubatieperiode met de baanperiode: r m1 + m2 a 2π Tpert m 3g r 2 = m1 a Tbaan 2π m2 g s 1 m2 = 1+ 3 m1 Indien deze verhouding irrationaal is, bestaat er geen kleinste gemeen veelvoud van Tbaan en Tpert . Dit betekent dat de geperturbeerde baan in dit geval niet gesloten is. In het geval dat de verhouding een rationaal getal is, is de baan wel gesloten.
3.7
Hoek doorlopen door de koorde OP (gat - massa m1 ) na ´ e´ en perturbatiecyclus - Perturbatiecyclushoek ϕc,pert
De hoeksnelheid bij een geperturbeerde eenparig cirkelvormige beweging is constant en gelijk aan: ϕ˙ =
L 2 m1 ropt
(28)
De perturbatiecyclushoek is gelijk aan: Z Tpert ϕc,pert = ϕ˙ dt 0
= ϕ˙ Tpert = = = =
r L m1 + m2 ropt 2π 2 m1 ropt m2 3g s m1 + m2 1 1 L 2π 3 m1 m2 3g ropt r L m1 + m2 1 m1 m2 g 2π m1 m2 3g L2 r 2π m1 (m1 + m2 ) m1 3 13
⇒ ϕc,pert
s 1 m2 = 2π 1+ 3 m1
(29)
De perturbatiecyclushoek is dus enkel afhankelijk van de verhouding van de massa’s m1 en m2 . Merk op dat: ϕc,pert = 2π
Tpert Tbaan
(30)
In het extreme geval dat m2 → 0 met m1 6= 0, hebben we: 2π lim ϕc,pert = √ →0 3
(31)
m2 m1
3.8
Minimale energietoestand van het systeem
Voor een systeem met gegeven draaimoment L, massa’s m1 en m2 en valversnelling g kunnen we de energievergelijking (7)) herschrijven als volgt: E=
1 L2 + m2 gr0 2 m1 r 0 2
(32)
De energie voor dit systeem met een eenparige cirkelvormige beweging is: Eecb =
1 L2 2 + m2 gropt 2 m1 ropt
De energie voor dit systeem met oscillerende massa’s is: Eoscil =
L2 1 + m2 g (ropt ± C) 2 m1 (ropt ± C)2
Met: C > 0, en: ropt ± C > 0. We tonen aan dat het systeem met gegeven draaimoment L, massa’s m1 en m2 en valversnelling g een minimale energie bezit bij een eenparige cirkelvormige beweging: ?
Eoscil − Eecb > 0 ? 1 L2 1 L2 ⇔ + m2 g (ropt ± C) − + m2 gropt > 0 2 2 2 m1 (ropt ± C) 2 m1 ropt ⇔ ... ⇔
?
3ropt ± 2C > 0
Aangezien steeds geldt dat: ropt ± C > 0 klopt de bewering, en is de energietoestand van een oscillerend systeem steeds strikt groter dan de energietoestand bij een eenparig cirkelvormig bewegend systeem.
14
Aan een eenparig cirkelvormig bewegend systeem kan men energie toevoegen door het systeem radiaal te verstoren. Het draaimoment wordt hierdoor niet gewijzigd. In de praktijk zou men dit kunnen doen door het hangend gewicht m2 naar beneden te trekken. Men kan omgekeerd ook energie uit een oscillerend systeem halen door tijdens de opwaartse beweging van de massa m2 een tegenwerkende kracht op deze massa uit te oefenen. Uit vergelijking (32)) volgt dat het fysisch onmogelijk is om, bij een ideaal systeem met een draaimoment, de massa m1 tot in het punt O te krijgen. Voor r0 → 0 wordt de benodigde energiehoeveelheid oneindig groot.
3.9
Hoek doorlopen door de koorde OP (gat - massa m1 ) na ´ e´ en cyclus van een systeem met zeer grote energie (E → ∞) - Minimale cyclushoek ϕc,min
Bij een gegeven systeem met massa’s m1 , m2 en met een willekeurig draaimoment L, vinden we experimenteel1 :
ϕc,min
s 1 m2 1+ = 2π 4 m1
(33)
De minimale cyclushoek is dus enkel afhankelijk van de verhouding van de massa’s m1 en m2 . In het extreme geval dat m2 → 0 met m1 6= 0, hebben we: lim ϕc,min = π
m2 m1
(34)
→0
Dit betekent dat een systeem met een willekeurig grote energie en een willekeurig kleine massa m2 een cyclushoek heeft die bij benadering gelijk is aan 180◦ . In de praktijk zal de cyclushoek altijd strikt groter dan 180◦ moeten zijn (omwille van het draaimoment).
3.10
Periode van de cyclus van een niet eenparig cirkelvormig bewegende massa - Cyclusperiode
Indien we de hoeksnelheid ϕ˙ inde vergelijking van de energie E (cfr. vergelijking (6)) vervangen door L/ m1 r2 (cfr. vergelijking (4)) bekomen we: 1 1 L2 (m1 + m2 ) r˙ 2 + + m2 gr = E 2 2 m1 r2 s dr 2 1 L2 ⇒ r˙ = = E − m2 gr − dt m1 + m2 2 m1 r2 ⇒ dt = 1 Dit
dr r˙
(35) (36)
dient mathematisch nog te worden bewezen.
15
t
Z ⇒
r
Z dt =
0
r0
r ⇒ t=
dr r˙
m1 + m2 2
Z
r
r0
1
dr
s
1 L2 E − m2 gr − 2 m1 r2
De periode van een cyclus wordt dan: r Tcyclus = 2
m1 + m2 2
Z
rmax
rmin
1 s
dr
(37)
1 L2 E − m2 gr − 2 m1 r2
Het tijdsverloop van deze periode is onafhankelijk van de startpositie langsheen de cyclus: Z rmax Z r Z rmin Z r Tcyclus = f (r)dr + −f (r)dr + −f (r)dr + f (r)dr r rmax r rmin Z rmax = 2 f (r)dr rmin
3.11
Hoek doorlopen door de koorde OP (gat - massa m1 ) na ´ e´ en cyclus van een niet eenparig cirkelvormig bewegende massa - Cyclushoek ϕc
Uit vergelijking (4) volgt: m1 r2 dϕ L
dt =
Vervang dt met behulp van vergelijking (36): ⇒
m1 r 2 dr dϕ = L r˙
⇒ dϕ = Z ⇒
L dr m1 r2 r˙
ϕ
Z dϕ
=
0
=
r
L dr 2 m 1 r r˙ r0 Z r L 1 1 dr m1 r0 r2 r˙
Vervang r˙ met behulp van vergelijking (35): Z r L 1 1 s ⇒ ϕ= dr 2 m1 r0 r 2 1 L2 E − m2 gr − m1 + m2 2 m1 r 2
16
r ⇒ ϕ=
m1 + m2 L m1
Z
r
r0
1 1 p dr r 2Em1 r2 − 2m1 m2 gr3 − L2
De cyclushoek is gelijk aan: r Z rmax 1 m1 + m2 1 p L dr ⇒ ϕc = 2 2 m1 r 2Em1 r − 2m1 m2 gr3 − L2 rmin
(38)
We merken op (zonder bewijs) dat: ϕc,min ≤ ϕc ≤ ϕc,pert = ϕc,max s 1 m2 lim ϕc = ϕc,pert = 2π 1+ rmin →ropt 3 m1 r →r max
lim
opt
rmin →0 rmax →∞
ϕc = ϕc,min
s 1 m2 = 2π 1+ 4 m1
Banen van massa m1 zijn gesloten2 voor cyclushoeken ϕc waarvoor een kleinste gemeen veelvoud bestaat met 360◦ . Deze cyclushoeken bevinden zich in het interval [ϕc,min , ϕc,pert ]. Dit interval hangt enkel af van de massaverhouding m1 /m2 . Bijgevolg heeft iedere massaverhouding een eigen reeks van gesloten banen. Het aantal cycli nodig voor een gesloten baan is gelijk aan: Ncycli =
KGV (ϕc , 360◦ ) ϕc
Indien ϕc = KGV (ϕc , 360◦ ) beslaat de gesloten baan 1 cyclus. Voor deze gesloten baan bedraagt het aantal omwentelingen van m1 om O: Nomw =
KGV (ϕc , 360◦ ) 360◦
Indien dit een paar getal oplevert, liggen rmin en rmax aan dezelfde kant van O. Indien dit een onpaar getal oplevert, liggen rmin en rmax tegenover elkaar ten opzichte van O. Enkel indien ϕc = 360◦ is de baan gesloten zonder zichzelf te kruisen.
2 Of
de banen mathematisch gesloten zijn dient nog te worden bewezen.
17
3.12
Intervallen van cyclushoeken (in graden) m2 /m1 ϕc,max = ϕc,pert ϕc,min ϕc,max − ϕc,min m2 /m1 ϕc,max = ϕc,pert ϕc,min ϕc,max − ϕc,min
1 293, 94 254, 56 39, 38 11/1 720, 00 623, 54 96, 46
2/1 360, 00 311, 77 48, 23 15/1 831, 38 720, 00 111, 38
3/1 415, 69 360, 00 55, 69 47/1 1440, 00 1247, 08 192, 92
4/1 464, 76 402, 49 62, 27 120/1 2286, 31 1980, 00 306, 31
8/1 623, 54 540, 00 83, 54 1023/1 6651, 08 5760, 00 891, 08
Tabel 1: Enkele intervallen van cyclushoeken - gevallen met m2 /m1 ≥ 1.
m2 /m1 ϕc,max = ϕc,pert ϕc,min ϕc,max − ϕc,min m2 /m1 ϕc,max = ϕc,pert ϕc,min ϕc,max − ϕc,min
1 293, 94 254, 56 39, 38 1/16 214, 24 185, 54 28, 70
1/2 254, 56 220, 45 34, 10 1/32 211, 07 182, 79 28, 28
1/3 240, 00 207, 85 32, 15 1/64 209, 46 181, 40 28, 06
1/4 232, 38 201, 25 31, 13 1/128 208, 66 180, 70 27, 95
1/8 220, 45 190, 92 29, 54 m1 6= 0, m2 → 0 207, 85 180, 00 27, 85
Tabel 2: Enkele intervallen van cyclushoeken - gevallen met m2 /m1 ≤ 1.
Figuur 3: Cyclushoeken en banen met m1 = m2 = 1 kg, L = 16 kgm2 /s.
18
Figuur 4: Cyclushoeken en energieniveaus. Voorbeeld tot ±223 J. 19
Figuur 5: Cyclushoeken en energieniveaus. Voorbeeld tot ±12800 J. 20
3.13
Baansnelheid
De vectori¨ele baansnelheid ~s˙ kan men schrijven als: ~s˙ = r~ ˙ er + rϕ~ ˙ eϕ
(39)
De grootte van de baansnelheid s˙ bedraagt: p s˙ = r˙ 2 + r2 ϕ˙ 2
21
(40)
3.14
Voorbeelden van banen
a = 1, 8422 m, ϕcyclus = 288◦
a = 1, 393756 m, ϕcyclus = 280◦ (De eerste 3 cycli zijn met punten gemarkeerd.)
a = 1, 35001029 m, ϕcyclus = 279◦
a = 0, 999425 m, ϕcyclus = 270◦
a = 0, 7717 m, ϕcyclus = 264◦
a = 0, 64405221 m, ϕcyclus = 261◦
a = 0, 43268 m, ϕcyclus = 257, 1428232◦
a = 1, 7 m - Eerste 20 cycli
(De eerste 2 cycli zijn met punten gemarkeerd.)
Figuur 6: Banen van massa m1 (m1 = m2 = 1 kg, L = 16 kgm2 /s). 22
m1 = 1 kg, m2 = 6 kg, a = 1, 04 m, ϕcyclus = 540◦ , 2 cycli
m1 = 1 kg, m2 = 12 kg, a = 0, 659 m, ϕcyclus = 720◦ , 1 cyclus
m1 = 1 kg, m2 = 48 kg, a = 0, 58 m, ϕcyclus = 1440◦ , 1 cyclus
m1 = 1 kg, m2 = 47 kg, a = 0, 4079 m, ϕcyclus = 1380◦ , 6 cycli
m1 = 1 kg, m2 = 47 kg, a = 0, 4079 m, ϕcyclus = 1380◦ , 1ste cyclus
m1 = 3 kg, m2 = 1 kg, a = 0, 55 m, ϕcyclus = 216◦ , 5 cycli
m1 = 1 kg, m2 = 350 kg, a = 0, 151 m, ϕcyclus = 3600◦ , 1 cyclus
m1 = 2 kg, m2 = 5 kg, a = 0, 5007 m, ϕcyclus = 360◦ , 1 cyclus
Figuur 7: Banen van massa m1 (m1 6= m2 , L = 16 kgm2 /s). 23
4 4.1
Rekenmodellen Een eenvoudig rekenmodel in Excel - Vereenvoudigd geval met m1 = m2 = m
Aan de hand van de beginvoorwaarden worden, in kleine opeenvolgende tijdsstappen, de volgende toestanden van het systeem berekend. De in te voeren gegevens zijn: de valversnelling g, de afstand a, de beginsnelheid v0 en de tijdsstap. De fijnheid van de tijdsstap bepaalt de nauwkeurigheid van het model. Men kan de nauwkeurigheid van het model controleren door (onder andere) de analytische waarden van de extrema van de co¨ordinaat r te vergelijken met de extrema gevonden met het rekenblad. Hierbij dient men erop te letten dat er voldoende rijen aanwezig zijn opdat het rekenblad beide extrema omvat. De reden hiervoor is dat voor een gegeven aantal met data gevulde rijen N en een gegeven tijdsstap ∆t, de totale tijdsduur van het model (N − 1)∆t zal bedragen. Deze totale tijdsduur moet voldoende zijn opdat het model tenminste eenmaal beide extrema voor r bereikt. Per rij worden de volgende grootheden gegeven/berekend: het tijdstip t, de co¨ ordinaat r, de snelheid v = ϕr, ˙ de hoeksnelheid ϕ, ˙ de radiale snelheid r, ˙ de radiale versnelling r¨, de kinetische energie T , de potenti¨ele energie V , de totale energie T + V en de hoek ϕ. In de eerste rij worden de gegevens op het tijdstip t0 ingevoerd voor t, r, v, ϕ, ˙ r˙ en ϕ. Voor r¨, T , V en T + V worden formules ingevoerd. In de volgende rijen wordt elke cel berekend aan de hand van data in die rij en/of van data in de voorgaande rij (en aan de hand van de vaste gegevens).
Figuur 8: Schermafdruk van het model in Excel.
24
Formule in cel H3: =MIN($B$4;0,25*$B$5^2/$B$2*(1+WORTEL(8*$B$2/$B$5^2*$B$4))) Formule in cel H4: =MAX($B$4;0,25*$B$5^2/$B$2*(1+WORTEL(8*$B$2/$B$5^2*$B$4))) Figuur 9: Schermafdrukken met weergave van de formules. 25
Figuur 10: Schermafdruk van de grafische weergave van een model (bijgewerkt).
4.2
Een eenvoudig rekenmodel in Excel - Algemeen geval met m1 6= m2
• De gebruikte methode is dezelfde als in het voorgaande model. • De bestandsgrootte is typisch van de orde van 16M.
4.3
Eerste rekenmodel in Maple gebaseerd op het rekenmodel in Excel - Algemeen geval met m1 6= m2
• Cfr. het bestand tafelmodel.mws. • De methode is gebaseerd op de methode gebruikt in de Excel-bestanden. • Bevat een baanplot van de massa m1 op schaal. • De bestandsgrootte is 5K (output removed).
4.4
Tweede rekenmodel in Maple met een numerieke oplossing van de differentiaalvergelijking en met 2D- en 3D-animaties - Algemeen geval met m1 6= m2
• Cfr. het bestand tafelmodel numeriek anim.mws. • Dit Maple-bestand is gebaseerd op het bestand table.mws (cfr. [9]) voor wat betreft de techniek met de dummy variabelen voor het oplossen van de Lagrangiaan en het numeriek oplossen van de Euler-Lagrange bewegingsvergelijkingen. 26
• Het bestand bevat verder o.a. berekeningen van rmin , rmax en ropt , meerdere plots en 2D- en 3D-animaties van het model. • De bestandsgrootte is 220K (output removed). Zonder tekening is de bestandsgrootte 25K.
4.5
Een rekenmodel in java - Algemeen geval met m1 6= m2
• Deze code werd geschreven om de meer extreme gevallen (r0 = a → 0 bij een gegeven draaimoment L) te onderzoeken. In de (hier beschreven) Excel-modellen zouden hiervoor honderduizenden regels nodig zijn (want een zeer kleine tijdsstap is vereist), wat onpraktisch en zelfs onmogelijk is met een gewone PC. Gebruik makend van Visual Basic for Applications macro’s, zou men wel een functionerend model kunnen bouwen in Excel voor deze extremere gevallen (met dezelfde algoritmes als in het javamodel). De rekentijd zal echter aanzienlijk groter zijn dan die van het java-programma. • Het is een eenvoudig commandoregel-programma. • De gebruikte methode is in grote lijnen dezelfde als die gebruikt werd in de Excel-bestanden. Het grote verschil met de Excel-modellen, is dat tijdens de berekening er een beperkte dataset van het model wordt weggeschreven in een tekstbestand, dat vervolgens in (bijvoorbeeld) Excel kan worden ingelezen om grafisch te verwerken. • De bestandsgrootte van de twee class-bestanden is samen 15K.
Figuur 11: Java-model in Excel: Vef f = f (t) (m1 = m2 = 1 kg, a = 0, 01 m, L = 16 kgm2 /s).
27
Figuur 12: Java-model in Excel: Vef f = f (ϕ) (m1 = m2 = 1 kg, a = 0, 01 m, L = 16 kgm2 /s).
Figuur 13: Java-model in Excel: Vef f = f (ϕ) (detail).
28
Referenties [1] Prof. Dr. Dirk Van Dyck, Theoretische fysica deel II - Mechanica, RUCA, 2002. [2] E.T. Whittaker, A treatise on the analytical dynamics of particles and rigid bodies, 4th edition, Cambridge University Press, 1970. [3] Hand & Finch, Analytical mechanics, Cambridge University Press, 1998. [4] http://electron6.phys.utk.edu/phys594/archives/mechanics/lagrangian/lagrangian1.htm, University of Tennessee, 2003. [5] http://d0lbln.lbl.gov/105s00/105s00-psoln6.pdf, University of California, Berkeley, 2003 [6] http://www.maths.usyd.edu.au:8000/u/chrisd/math2004/tutorials/LDtute4s.pdf, University of Sydney, 2003. [7] http://www.wsi.tu-muenchen.de/T33/Teaching/Lectures/WS0203/sheet6 solutions.pdf, Walter Schottky Institute, Technische Universit¨at M¨ unchen, 2003. [8] http://www.courses.fas.harvard.edu/∼phys16/lectures/l07.pdf, College, 2003.
Harvard
[9] http://www.rose-hulman.edu/Users/groups/packets/HTML/tmech/table.mws, Rose-Hulman Institute of Technology, 2003.
29
5
Bijlage
5.1
Java-code
// Author : F i l i p Lambrechts // D e s c r i p t i o n : Quick−and−d i r t y command l i n e a p p l i c a t i o n package f i l i p L . a p p l i c a t i o n . t a f e l 2 m a s s a m o d e l ; import j a v a . awt . ∗ ; import j a v a . i o . ∗ ; public c l a s s TafelApp { // C o n s t r u c t t h e a p p l i c a t i o n public TafelApp ( ) { } //Main method public s t a t i c void main ( S t r i n g [ ] a r g s ) { Tafel2MassaModel t2mm ; double a = 1 . 0 , Lmom= 1 6 . 0 , g = 9 . 8 1 , p h i = 3 6 0 . 0 , m1= 1 . 0 , m2= 1 . 0 ; try { //−−−− Open up s t a n d a r d i n p u t B u f f e r e d R e a d e r br = new B u f f e r e d R e a d e r (new InputStreamReader ( System . i n ) ) ; S t r i n g userInput = null ; System . out . p r i n t ( ” Voer de massa m1 i n ( kg ) : ” ) ; u s e r I n p u t = br . r e a d L i n e ( ) ; m1 = Double . v a l u e O f ( u s e r I n p u t ) . d o u b l e V a l u e ( ) ; userInput = null ; System . out . p r i n t ( ” Voer de massa m2 i n ( kg ) : ” ) ; u s e r I n p u t = br . r e a d L i n e ( ) ; m2 = Double . v a l u e O f ( u s e r I n p u t ) . d o u b l e V a l u e ( ) ; userInput = null ; System . out . p r i n t ( ” Voer de aanvangswaarde a van de c o o r d i n a a t r i n (m) : ” ) ; u s e r I n p u t = br . r e a d L i n e ( ) ; a = Double . v a l u e O f ( u s e r I n p u t ) . d o u b l e V a l u e ( ) ; userInput = null ; System . out . p r i n t ( ” Voer h e t draaimoment L i n ( kgmˆ2/ s ) : ” ) ; u s e r I n p u t = br . r e a d L i n e ( ) ; Lmom = Double . v a l u e O f ( u s e r I n p u t ) . d o u b l e V a l u e ( ) ; userInput = null ; System . out . p r i n t ( ” Voer de v a l v e r s n e l l i n g g i n (m/ s ˆ 2 ) : ” ) ; u s e r I n p u t = br . r e a d L i n e ( ) ; g = Double . v a l u e O f ( u s e r I n p u t ) . d o u b l e V a l u e ( ) ; userInput = null ; System . out . p r i n t ( ” B e g r e n s de hoek p h i t o t ( gr ad e n ) : ” ) ; u s e r I n p u t = br . r e a d L i n e ( ) ; p h i = Double . v a l u e O f ( u s e r I n p u t ) . d o u b l e V a l u e ( ) ; } catch ( E x c e p t i o n e ) { System . out . p r i n t l n ( ”IO e r r o r t r y i n g t o r e a d i n p u t ” ) ; System . e x i t ( 1 ) ; } new TafelApp ( ) ;
30
t2mm = new Tafel2MassaModel ( a , Lmom/ (m1∗ a ) , g , m1 , m2 , 0 . 0 0 0 0 0 1 , 1 . 0 ) ; // O v e r r i d e v0 t2mm . set Draaimoment L (Lmom, a ) ; // O v e r r i d e time l i m i t t2mm . s e t l i m i t D e g r e e s ( p h i ) ; System . out . System . out . System . out . System . out . System . out .
println println println println println
( ( ( ( (
System . out . System . out . System . out . System . out . System . out . System . out . System . out . System . out .
println println println println println println println println
( ( ( ( ( ( ( (
”INVOER ”m1 = ” ”m2 = ” ”a = ” ”g = ”
MODEL (CONTROLE) ” + t2mm . get m1 ( ) + + t2mm . get m2 ( ) + + t2mm . g e t a ( ) + + t2mm . g e t g ( ) +
); ” kg ” ) ; ” kg ” ) ; ” m” ) ; ” m/ s ˆ2 ” ) ;
”RESULTATEN” ) ; ”v 0 = ” + t2mm . g e t v 0 ( ) + ” m/ s ” ) ; ” p h i d o t 0 = ” + t2mm . g e t p h i d o t 0 ( ) + ” rad / s ” ) ; ”L = ” + t2mm . get Draaimoment L ( ) + ” kgmˆ2/ s ” ) ; ”E = ” + t2mm . g e t E n e r g i e E ( ) + ” J” ) ; ”Max . van de r c o o r d . : ” + t2mm . g e t r m a x ( ) + ” m” ) ; ”Min . van de r c o o r d . : ” + t2mm . g e t r m i n ( ) + ” m” ) ; ” r coord . b i j kracht . evenwicht : ” + t2mm . g e t r o p t ( ) + ” m” ) ; System . out . p r i n t l n ( ” P e r t u r b a t i e : p e r i o d e = ” + t2mm . g e t p e r i o d e p e r t c y c l u s ( ) + ” s / Hoek = ” + t2mm . g e t p h i p e r t c y c l u s g r a d ( ) + ” g r . ” ) ;
//−−−− Bereken h e t model t2mm . c a l c u l a t e M o d e l N o A r r a y s ( ) ; } } // Author : // D e s c r i p t i o n :
F i l i p Lambrechts Quick−and−d i r t y command l i n e a p p l i c a t i o n
package f i l i p L . a p p l i c a t i o n . t a f e l 2 m a s s a m o d e l ; import j a v a . u t i l . ∗ ; import j a v a . t e x t . ∗ ; import j a v a . i o . ∗ ; public c l a s s Tafel2MassaModel { double a ; // Beginwaarde c o o r d i n a a t r double v0 ; // B e g i n s n e l h e i d double g ; // V a l v e r s n e l l i n g double m1 , m2 ; // Massa ’ s double dt ; double t i j d s d u u r ;
// T i j d s i n c r e m e n t // T i j d
double v 0 k r i t ;
// K r i t i s c h e b e g i n s n e l h e i d
double double double double double boolean double boolean double
E; // E n e r g i e t o t e n E e i n d e ; // E n e r g i e L; // Draaimoment rmin , rmax ; // C o o r d i n a a t r , max en min ropt ; bdegr = true ; degreelimit = 360.; btime = f a l s e ; timelimit ;
//−−−− C o n s t r u c t o r public Tafel2MassaModel ( double a ,
31
double double double double double double
v0 , g, m1 , m2 , dt , tijdsduur ) {
this . a = a ; t h i s . v0 =v0 ; this . g = g ; t h i s . m1 = m1 ; t h i s . m2 = m2 ; t h i s . dt = dt ; this . t i j d s d u u r = t i j d s d u u r ; } //−−−− C a l c u l a t e Model public void c a l c u l a t e M o d e l N o A r r a y s ( ) { int i , n ; double g r a d c o u n t e r = 0 . 0 ; double dgc = 0 . 2 ; //−−−− Increment a f i f t h o f a d e g r e e int s t a t u s c o u n t e r = 0 ; boolean f l a g = true ; double double double double double double double double double double double double double
t prev ; v prev ; r prev ; rdot prev ; rddot prev ; phi prev ; phidot prev ; phi grad prev kin en T prev pot en V prev tot en E prev fict pot en V fict kin en T
double double double double double double double double double double double double double
t curr ; v curr ; r curr ; rdot curr ; rddot curr ; phi curr ; phidot curr ; phi grad curr ; kin en T curr ; pot en V curr ; tot en E curr ; fict pot en V curr ; fict kin en T curr ;
; ; ; ; prev ; prev ;
// T i j d // T a n g e n t i e l e s n e l h e i d // C o o r d i n a a t r // dr / d t // d2r / d t 2 // Hoek i n r a d i a l e n // H o e k s n e l h e i d // Hoek i n graden // K i n e t i s c h e e n e r g i e // P o t e n t i e l e e n e r g i e // T o t a l e e n e r g i e // E f f e c t i e v e p o t e n t i e l e e n e r g i e
// T i j d // T a n g e n t i e l e s n e l h e i d // C o o r d i n a a t r // dr / d t // d2r / d t 2 // Hoek i n r a d i a l e n // H o e k s n e l h e i d // Hoek i n graden // K i n e t i s c h e e n e r g i e // P o t e n t i e l e e n e r g i e // T o t a l e e n e r g i e // E f f e c t i e v e p o t e n t i e l e e n e r g i e
double e n f o u t , r c h n g , p h i c h n g ; DecimalFormat d f = new DecimalFormat ( ” #0.00000000000 ” ) ; DecimalFormat d f p = new DecimalFormat ( ” #0.00 ” ) ; NumberFormat n f = NumberFormat . g e t I n s t a n c e ( ) ; String s ; String sdir ; boolean brun = true ; boolean r e c a l c = f a l s e ;
32
boolean c o u n t e r f l a g ; try { F i l e o u t p u t F i l e = new F i l e ( ” t2mmodel . tmp” ) ; F i l e W r i t e r out = new F i l e W r i t e r ( o u t p u t F i l e ) ; //−−−− I n i t : L = get Draaimoment L ( ) ; = 0.0; t prev r prev = a; = v0 ; v prev rdot prev = 0.0; rddot prev = get rddot (a ) ; = 0.0; phi prev phi grad prev = 0.0; phidot prev = v0 / a ; = get kin en T ( r prev , rdot prev , phidot prev ) ; kin en T prev pot en V prev = get pot en V ( r prev ) ; = kin en T prev + pot en V prev ; tot en E prev fict kin en T prev = get fict kin en T ( rdot prev ) ; fict pot en V prev = tot en E prev − fict kin en T prev ; // System . out . p r i n t l n ( ” B e z i g met h e t s c h r i j v e n van data ” + ” naar h e t b e s t a n d t2mmodel . tmp\n” ) ; out . w r i t e ( ”INVOER MODEL\n” ) ; out . w r i t e ( ”m1 = ” + get m1 ( ) + ” kg \n” ) ; out . w r i t e ( ”m2 = ” + get m2 ( ) + ” kg \n” ) ; out . w r i t e ( ” a = ” + g e t a ( ) + ” m\n” ); out . w r i t e ( ” g = ” + g + ” m/ s ˆ2\ n” ) ; out . w r i t e ( ”L = ” + get Draaimoment L ( ) + ” kgmˆ2/ s \n” ) ; double T i n i t = g e t E n e r g i e E ( ) − g e t p o t e n V ( a ) ; out . w r i t e ( ”T0 = ” + T i n i t + ” J\n” ); out . w r i t e ( ”V0 = ” + g e t p o t e n V ( a ) + ” J\n” ); out . w r i t e ( ”E = ” + g e t E n e r g i e E ( ) + ” J\n” ); out . w r i t e ( ”Maximum van de r c o o r d i n a a t : ” + g e t r m a x ( ) + ” m\n” ) ; out . w r i t e ( ”Minimum van de r c o o r d i n a a t : ” + g e t r m i n ( ) + ” m\n” ) ; out . w r i t e ( ” r c o o r d i n a a t b i j k r a c h t e n e v e n w i c h t : ” + g e t r o p t ( ) + ” m\n” ) ; out . w r i t e ( ”RESULTATEN\n” ) ; s = ” t i j d ; r ; v ; p h i d o t ; r d o t ; r d d o t ; T ;V; E ; p h i ; p h i g r a d ; T ’ ;V ’ \ n” ; out . w r i t e ( s ) ; // E e r s t e r e g e l d a t a s = ”” ; s += t p r e v + ” ; ” ; s += r p r e v + ” ; ” ; s += v p r e v + ” ; ” ; s += p h i d o t p r e v + ” ; ” ; s += r d o t p r e v + ” ; ” ; s += r d d o t p r e v + ” ; ” ; s += k i n e n T p r e v + ” ; ” ; s += p o t e n V p r e v + ” ; ” ; s += t o t e n E p r e v + ” ; ” ; s += p h i p r e v + ” ; ” ; s += p h i g r a d p r e v + ” ; ” ; s += f i c t k i n e n T p r e v + ” ; ” ; s += f i c t p o t e n V p r e v + ” ; ” ; s += ” \n” ; out . w r i t e ( s ) ; System . out . p r i n t l n ( ”Max . e f f . pot . en . V ’ : ” + d f p . f o r m a t ( f i c t p o t e n V p r e v ) + ” J\n” ) ;
33
do { recalc = false ; t c u r r = t p r e v + dt ; r d o t c u r r = r d o t p r e v + r d d o t p r e v ∗ dt ; r c u r r = r p r e v + ( r d o t c u r r+r d o t p r e v ) / 2 . 0 ∗ dt ; p h i d o t c u r r = L / ( m1 ∗ Math . pow ( r c u r r , 2 . 0 ) ) ; v curr = phidot curr ∗ r curr ; rddot curr = get rddot ( r curr ) ; kin en T curr = get kin en T ( r curr , rdot curr , phidot curr ) ; pot en V curr = get pot en V ( r curr ) ; tot en E curr = kin en T curr + pot en V curr ; fict kin en T curr = get fict kin en T ( rdot curr ); fict pot en V curr = tot en E curr − fict kin en T curr ; phi curr = p h i p r e v + p h i d o t c u r r ∗ dt ; p h i g r a d c u r r = p h i c u r r ∗ 1 8 0 . 0 / Math . PI ; // Bepaal de p r o c e n t u e l e f o u t op de t o t a l e e n e r g i e : e n f o u t = Math . abs ( ( t o t e n E p r e v − t o t e n E c u r r ) / get Energie E ( ) ∗ 1 0 0 ) ; r c h n g = Math . abs ( r c u r r −r p r e v ) ; p h i c h n g = p h i g r a d c u r r −p h i g r a d p r e v ; //−−−− Change i n c r e m e n t i f ( phi chng < 0.001) { i f ( r c h n g < 0.001 && e n f o u t < 0 . 0 0 1 ) { dt = dt ∗ 1 0 . 0 ; dgc = dgc / 1 . 2 5 ; recalc = false ; } } i f ( phi chng > 0 . 1 | | en fout > 0 . 0 0 1 | | r chng > 0.01) { dt = dt / 1 0 . 0 ; dgc = 0 . 2 < dgc ∗ 1 . 2 5 ? 0 . 2 : dgc ∗ 1 . 2 5 ; r e c a l c = true ; } i f ( p h i g r a d c u r r >= g r a d c o u n t e r ) { f l a g = true ; } //−−−− FORCE STATUS REPORT IN CASE A LOT OF CALCULATION IS BEING //−−−− DONE WITH NO WRITING TO A FILE : if (! recalc ) ++s t a t u s c o u n t e r ; counterflag = false ; i f ( statuscounter > 100000 ) { f l a g = true ; statuscounter = 0; c o u n t e r f l a g = true ; } i f ( f l a g && ! r e c a l c ) { s s s s s s s s
= ”” ; += t c u r r + ” ; ” ; += r c u r r + ” ; ” ; += v c u r r + ” ; ” ; += p h i d o t c u r r + ” ; ” ; += r d o t c u r r + ” ; ” ; += r d d o t c u r r + ” ; ” ; += k i n e n T c u r r + ” ; ” ;
34
s += p o t e n V c u r r + ” ; ” ; s += t o t e n E c u r r + ” ; ” ; s += p h i c u r r + ” ; ” ; s += p h i g r a d c u r r + ” ; ” ; s += f i c t k i n e n T c u r r + ” ; ” ; s += f i c t p o t e n V c u r r + ” ; ” ; s += ” \n” ; out . w r i t e ( s ) ; //−−−− STATUS REPORT if ( fict pot en V curr > fict pot en V prev ) { sdir = ” stijg .) ” ; } else i f ( f i c t p o t e n V c u r r < f i c t p o t e n V p r e v ) { s d i r = ” dal . ) ”; } else { sdir = ” gel . ) ”; } double p e r c = p h i g r a d c u r r / d e g r e e l i m i t ∗ 1 0 0 ; System . out . p r i n t ( ( d f p . f o r m a t ( p e r c ) ) . t r i m ( ) + ” % ( p h i = ” + dfp . format ( p h i g r a d c u r r ) + ” g r . / e f f . pot . en . V ’ = ” + dfp . format ( f i c t p o t e n V c u r r ) + ” J − ” + s d i r + ”\ r ” ) ; if (! counterflag ) { g r a d c o u n t e r += dgc ; } flag = false ; statuscounter = 0; } if (! recalc ) { //−−−− Swapping s t u f f t prev = r prev = v prev = rdot prev = rddot prev = phi prev = = phi grad prev phidot prev = kin en T prev = pot en V prev = tot en E prev = fict kin en T prev = fict pot en V prev =
t curr ; r curr ; v curr ; rdot curr ; rddot curr ; phi curr ; phi grad curr ; phidot curr ; kin en T curr ; pot en V curr ; tot en E curr ; fict kin en T curr ; fict pot en V curr ;
//−−−− Decide when t o end l o o p i f ( bdegr ) { i f ( p h i g r a d c u r r <= d e g r e e l i m i t ) brun = true ; else brun = f a l s e ; } e l s e i f ( btime ) { i f ( t c u r r <= t i j d s d u u r ) brun = true ; else brun = f a l s e ; } else { brun = f a l s e ; }
35
i f ( ! brun ) t o t e n E e i n d e = t o t e n E c u r r ; } } while ( brun ) ; // Bepaal de p r o c e n t u e l e f o u t op de t o t a l e e n e r g i e : en fout = ( get Energie E () − tot en E einde ) / get Energie E ( ) ∗ 1 0 0 ; System . out . p r i n t l n ( ” \ n E i n d a f w i j k i n g op de t o t a l e e n e r g i e : ” + d f p . f o r m a t ( e n f o u t ) + ” %” ) ; // C l o s e o u t p u t stream out . c l o s e ( ) ; System . out . p r i n t l n ( ” \ nEinde b e r e k e n i n g \n” ) ; } catch ( E x c e p t i o n e ) { System . out . p r i n t l n ( ”IO e r r o r t r y i n g t o r e a d i n p u t ” ) ; System . e x i t ( 1 ) ; } } // Geef h e t draaimoment met r0 = a : public void set Draaimoment L ( double L , double a ) { this . L = L ; this . a = a ; v0 = L / ( m1∗ a ) ; } // Bereken de h o e k s n e l h e i d op h e t t i j d s t i p t =0: public double g e t p h i d o t 0 ( ) { return v0 / a ; } // Bereken h e t draaimoment L : public double get Draaimoment L ( ) { L = m1∗ v0 ∗ a ; return L ; } // E n e r g i e van h e t s y s t e e m : public double g e t E n e r g i e E ( ) { E = 0 . 5 ∗m1∗Math . pow ( v0 , 2 . 0 ) + m2∗ g ∗ a ; return E ; } // Bepaal h e t andere ( dan a ) extremum r van de baan van m1 private double g e t r e x t r ( ) { double r e x t r ; r e x t r = 0 . 2 5 ∗ m1/m2 ∗ Math . pow ( v0 , 2 . 0 ) / g ∗ ( 1 + Math . pow ( 1 + 8 ∗m2/m1∗ g /Math . pow ( v0 , 2 . 0 ) ∗ a , 0 . 5 ) ) ; return r e x t r ; } // Bepaal h e t maximum van r public double g e t r m a x ( ) { rmax = g e t r e x t r ( ) ; rmax = a > rmax ? a : rmax ; return rmax ; } // Bepaal h e t minimum van r public double g e t r m i n ( ) {
36
rmin = g e t r e x t r ( ) ; rmin = a < rmin ? a : rmin ; return rmin ; } // Bereken de c o o r d i n a a t r waar e r e v e n w i c h t o n t s t a a t t u s s e n de // c e n t r i f u g a l e en c e n t r i p e t a l e k r a c h t : public double g e t r o p t ( ) { r o p t = Math . pow (m1/m2 ∗ Math . pow ( v0 , 2 . 0 ) / g ∗ Math . pow ( a , 2 . 0 ) , 1 . / 3 . ) ; return r o p t ; } // Bereken de k r i t i s c h e s n e l h e i d v o o r de i n g e v o e r d e a : public double g e t v 0 k r i t ( ) { v 0 k r i t = Math . pow (m2/m1∗ g ∗a , 0 . 5 ) ; return v 0 k r i t ; } // Bereken h e t k r i t i s c h draaimoment v o o r de i n g e v o e r d e a : public double g e t D r a a i m o m e n t L k r i t ( ) { double d ; d = g e t v 0 k r i t ( ) ∗ m1 ∗ a ; return d ; } // P e r i o d e van de p e r t u r b a t i e c y c l u s v o o r h e t g e g e v e n draaimoment en r o p t : public double g e t p e r i o d e p e r t c y c l u s ( ) { double d ; d = 2 . 0 ∗ Math . PI ∗ Math . pow ( ( m1+m2) /m2 ∗ g e t r o p t ( ) / ( 3 . 0 ∗ g ) , 0 . 5 ) ; return d ; } // Hoek van de p e r t u r b a t i e c y c l u s v o o r h e t g e g e v e n draaimoment en r o p t : public double g e t p h i p e r t c y c l u s ( ) { double d ; d = get Draaimoment L ( ) / ( m1 ∗ Math . pow ( g e t r o p t ( ) , 2 . 0 ) ) ∗ get periode pert cyclus (); return d ; } // Hoek van de p e r t u r b a t i e c y c l u s v o o r h e t g e g e v e n draaimoment en r o p t : public double g e t p h i p e r t c y c l u s g r a d ( ) { double d ; d = g e t p h i p e r t c y c l u s ( ) ∗ 1 8 0 . 0 / Math . PI ; return d ; } public public public public public public
double double double double double double
g e t a ( ) { return get m1 ( ) { return get m2 ( ) { return g e t g ( ) { return g e t v 0 ( ) { return get phi limit () {
a; } m1 ; } m2 ; } g; } v0 ; } return d e g r e e l i m i t ; }
// Het s y s t e e m wordt b e r e k e n d v a n a f hoek 0 t o t hoek = d e g r e e l i m i t // i n d i e n de bd eg r −v l a g aan i s : public void s e t l i m i t D e g r e e s ( double l i m i t ) { bdegr = true ; degreelimit = limit ; } // Bereken de r a d i a l e v e r s n e l l i n g :
37
private double g e t r d d o t ( double v a l r ) { double d ; d = Math . pow ( L , 2 . 0 ) / ( m1∗ (m1+m2 ) ) / Math . pow ( v a l r , 3 . 0 ) − m2/ (m1+m2 ) ∗ g ; return d ; } // Bereken de k i n e t i s c h e e n e r g i e van h e t s y s t e e m : private double g e t k i n e n T ( double v a l r , double v a l r d o t , double v a l p h i d o t ) { double d ; d = m1 / 2 . 0 ∗ Math . pow ( ( v a l r ∗ v a l p h i d o t ) , 2 . 0 ) + (m1+m2 ) / 2 . 0 ∗ Math . pow ( v a l r d o t , 2 . 0 ) ; return d ; } // Bereken de p o t e n t i e l e e n e r g i e van h e t s y s t e e m : private double g e t p o t e n V ( double v a l r ) { double d ; d = m2 ∗ g ∗ v a l r ; return d ; } // Bereken de f i c t i e v e / e f f e c t i e v e k i n e t i s c h e e n e r g i e van h e t // e q u i v a l e n t e 1− d e e l t j e s s y s t e e m i n een a a n g e p a s t // c o n s e r v a t i e f p o t e n t i a a l v e l d : private double g e t f i c t k i n e n T ( double v a l r d o t ) { double d ; d = m1 / 2 . 0 ∗ Math . pow ( v a l r d o t , 2 . 0 ) ; return d ; } }
38
Inhoudsopgave 1 Beschrijving
1
2 Oplossingen PE2b 2.1 Co¨ ordinatenstelsel, Lagrangiaan van het systeem - geval m1 = m2 = m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Bewegingsvergelijkingen - geval m1 = m2 = m . . . . . . . . . . . 2.3 Bespreking - geval m1 = m2 = m met r0 = a en/of v0 heel klein . √ 2.4 Toon aan dat voor v0 = ag het deeltje P een eenparig cirkelvormige beweging uitvoert - geval m1 = m2 = m . . . . . . . . . 2.5 Algemeen geval met m1 6= m2 . . . . . . . . . . . . . . . . . . . .
2
3 Bijkomende beschouwingen 3.1 Minimum- en maximumwaarde van de co¨ordinaat r van de baan van massa m1 en hoogte van massa m2 . . . . . . . . . . . . . . 3.2 Co¨ ordinaat r van de baan van massa m1 op het ogenblik dat de centrifugale kracht gelijk wordt aan de centripetale kracht . . . . 3.3 Equivalent ´e´endimensionaal enkelvoudig massapunt probleem . . 3.4 Bepaling van de co¨ ordinaat r in functie van de hoek ϕ (in plaats van in functie van de tijd t) . . . . . . . . . . . . . . . . . . . . . 3.5 Periode van kleine radiale oscillaties om een eenparig cirkelvormige baan (perturbatieperiode) . . . . . . . . . . . . . . . . . . . 3.6 Vergelijking van de perturbatieperiode met de baanperiode bij een eenparig cirkelvormige beweging . . . . . . . . . . . . . . . . 3.7 Hoek doorlopen door de koorde OP (gat - massa m1 ) na ´e´en perturbatiecyclus - Perturbatiecyclushoek ϕc,pert . . . . . . . . . 3.8 Minimale energietoestand van het systeem . . . . . . . . . . . . . 3.9 Hoek doorlopen door de koorde OP (gat - massa m1 ) na ´e´en cyclus van een systeem met zeer grote energie (E → ∞) - Minimale cyclushoek ϕc,min . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.10 Periode van de cyclus van een niet eenparig cirkelvormig bewegende massa - Cyclusperiode . . . . . . . . . . . . . . . . . . . . 3.11 Hoek doorlopen door de koorde OP (gat - massa m1 ) na ´e´en cyclus van een niet eenparig cirkelvormig bewegende massa - Cyclushoek ϕc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.12 Intervallen van cyclushoeken (in graden) . . . . . . . . . . . . . . 3.13 Baansnelheid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.14 Voorbeelden van banen . . . . . . . . . . . . . . . . . . . . . . . .
7
4 Rekenmodellen 4.1 Een eenvoudig rekenmodel in Excel - Vereenvoudigd geval met m1 = m2 = m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Een eenvoudig rekenmodel in Excel - Algemeen geval met m1 6= m2 4.3 Eerste rekenmodel in Maple gebaseerd op het rekenmodel in Excel - Algemeen geval met m1 6= m2 . . . . . . . . . . . . . . . . . . . 4.4 Tweede rekenmodel in Maple met een numerieke oplossing van de differentiaalvergelijking en met 2D- en 3D-animaties - Algemeen geval met m1 6= m2 . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Een rekenmodel in java - Algemeen geval met m1 6= m2 . . . . .
39
2 3 3 4 5
7 8 8 10 10 13 13 14
15 15
16 18 21 22 24 24 26 26
26 27
5 Bijlage 30 5.1 Java-code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Lijst van figuren 1 2 3 4 5 6 7 8 9 10 11 12 13
Schets van het systeem. . . . . . . . . . . . . . . . . . . . . . . . Doorsnede en bovenaanzicht. . . . . . . . . . . . . . . . . . . . . Cyclushoeken en banen met m1 = m2 = 1 kg, L = 16 kgm2 /s. . . Cyclushoeken en energieniveaus. Voorbeeld tot ±223 J. . . . . . Cyclushoeken en energieniveaus. Voorbeeld tot ±12800 J. . . . . Banen van massa m1 (m1 = m2 = 1 kg, L = 16 kgm2 /s). . . . . . Banen van massa m1 (m1 6= m2 , L = 16 kgm2 /s). . . . . . . . . . Schermafdruk van het model in Excel. . . . . . . . . . . . . . . . Schermafdrukken met weergave van de formules. . . . . . . . . . Schermafdruk van de grafische weergave van een model (bijgewerkt). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Java-model in Excel: Vef f = f (t) (m1 = m2 = 1 kg, a = 0, 01 m, L = 16 kgm2 /s). . . . . . . . . . . . . . . . . . . . . . . . . . . . Java-model in Excel: Vef f = f (ϕ) (m1 = m2 = 1 kg, a = 0, 01 m, L = 16 kgm2 /s). . . . . . . . . . . . . . . . . . . . . . . . . . Java-model in Excel: Vef f = f (ϕ) (detail). . . . . . . . . . . . . .
1 2 18 19 20 22 23 24 25 26 27 28 28
Lijst van tabellen 1 2
Enkele intervallen van cyclushoeken - gevallen met m2 /m1 ≥ 1. . Enkele intervallen van cyclushoeken - gevallen met m2 /m1 ≤ 1. .
40
18 18