Feladat: I.423 Korcsoport: - Nehézségi fok: -
Füzet: 2017/február, 101 - 102. oldal  PDF  |  MathML 
Témakör(ök): Feladat, Programozás, algoritmusok

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Ha egy m tömegű pontszerű testet egy D rugóállandójú rugóra függesztünk, majd egyensúlyi helyzetéből függőlegesen kitérítjük, akkor a test harmonikus rezgőmozgást végez. A mozgással az I. 417. feladatban foglalkoztunk. A feladatot általánosítjuk, és most azt vizsgáljuk, hogy milyen mozgás alakul ki akkor, ha a kitérés kezdetben nem függőleges.
A test mozgásának leírása igen összetett, a részletek iránt érdeklődőknek ajánljuk a Fizikai Szemle 2006/10. számát: http://fiztan.phd.elte.hu/nyilt/publokt/Tel-200610.pdf. A pontszerű test mozgásegyenletének megoldása helyett alkalmazzunk szimulációt a mozgás leírására.
Legyen egy D rugóállandójú húzó-nyomó rugó, amely a kezdeti l0 hosszúságtól való Δl megnyúlással vagy összenyomással ellentétes irányú, és azzal arányos Frugó=-DΔl erőt fejt ki. Az elhanyagolható tömegű rugó egyik vége egy pontban rögzített (e körül szabadon elfordulhat), másik végén egy m tömegű test található. Könnyen látható, hogy ha a testet egy pontban kezdősebesség nélkül elengedjük, akkor egy olyan függőleges síkban mozog, amely a rugó rögzítési pontját és a test kezdőpontját is tartalmazza. Feladatunk az, hogy ennek a síkmozgásnak a pályáját megrajzoljuk.
A szimulációt a következő leírás alapján végezzük:

1.Vonatkoztatási rendszerként célszerű olyan derékszögű koordináta-rendszert használni, amelynek y tengelye függőleges, origója pedig a rugó felfüggesztési pontja.
2.Kezdetben (és minden későbbi pillanatban) ismerjük a test r(x,y) helyvektorát, amiből kiszámítható a nyújtatlanul l0 hosszúságú rugó aktuális hossza és Δl megnyúlása vagy összenyomódása.
3.A rugóerő nagyságát a Frugó=-DΔl képletből kapjuk, az erő irányát a test helyzetéből tudjuk meghatározni.
4.A testre a rugón kívül még a nehézségi erő hat. Az erőhatások függetlenségének elve alapján mindkét erőt felbonthatjuk a koordináta-rendszer tengelyeinek megfelelően, így ki tudjuk számítani az összegüket, tehát a testre ható eredő erő koordinátáit.
5.Ezek alapján megkapható a test a pillanatnyi gyorsulásvektora, illetve annak koordinátái.
6.A test az adott helyzetéből Δt idő alatt elmozdul. A Δr elmozdulásvektort közelítsük a pillanatnyi sebesség és gyorsulás értékeiből a
Δr=vΔt+12a(Δt)2
képlet segítségével.
7.A test pillanatnyi v sebességét Δt idővel később a v(Δt)=v+aΔt kifejezéssel adjuk meg.
8.Helyezzük tehát a testet az új helyére, végezzük el a rajzolást, majd folytassuk a szimulációt a 2. ponttól.

A program legyen felhasználóbarát, tehát oldjuk meg, hogy a fizikai paramétereket (m, D, l0, Δt) és a test r(x,y) kezdeti pozícióját a szimuláció megkezdése előtt a felhasználó megadhassa.
Beküldendő egy i423.zip tömörített mappában a szimulációt végző program forráskódja, a fordításhoz és futtatáshoz szükséges környezet leírása. A megoldáshoz a versenykiírásban szereplő fejlesztői rendszerek egyike, illetve ahhoz egyszerűen telepíthető ingyenes grafikus kiegészítő könyvtár (pl. SFML) használható.