Botsende Deeltjes Simulator

Moderators: dirkwb, Xilvo

Forumregels
(Middelbare) school-achtige vragen naar het forum "Huiswerk en Practica" a.u.b.
Zie eerst de Huiswerkbijsluiter
Gebruikersavatar
Berichten: 2.318

Re: Botsende Deeltjes Simulator

Dat is niet te doen voor amateurs. Ik denk dat zo'n problemen in heel wat gevallen heel chaotisch kunnen zijn. Zal in veel gevallen voor professionals ook lastig te voorspellen zijn.

Berichten: 3.911

Re: Botsende Deeltjes Simulator

Xilvo schreef: do 10 nov 2022, 15:37 Hier een eerste voorbeeld met minder harde bollen.
Hoe kom je aan dit resultaat? welke berekening of simulatie zit hierachter?

Gebruikersavatar
Moderator
Berichten: 9.942

Re: Botsende Deeltjes Simulator

HansH schreef: do 10 nov 2022, 21:37 Hoe kom je aan dit resultaat? welke berekening of simulatie zit hierachter?
Een programmaatje. Gegevens staan in het bericht. De "knikkers" stoten elkaar af met een kracht evenredig aan de veerconstante k zodra hun onderlinge afstand (middelpunt tot middelpunt) kleiner wordt dan de diameter.

Berichten: 3.911

Re: Botsende Deeltjes Simulator

Xilvo schreef: do 10 nov 2022, 21:41 Een programmaatje. Gegevens staan in het bericht. De "knikkers" stoten elkaar af met een kracht evenredig aan de veerconstante k zodra hun onderlinge afstand (middelpunt tot middelpunt) kleiner wordt dan de diameter.
Ik bedoel: wil je ook de pregrammacode posten zodat anderen ermee verder kunnen als ze dat wilen en niet opnieuw het wiel uit hoeven te vinden dan? Het is denk ik interessant om te experimenteren met veerconstantes of verhoudingen van veerconstantes om zo inzicht te krijgen wat er gebeurt.

Gebruikersavatar
Moderator
Berichten: 9.942

Re: Botsende Deeltjes Simulator

Dit is de essentie.
Niet bedoeld om te publiceren dus geen comments. Maar het is zo simpel dat het voor zichzelf spreekt.

Code: Selecteer alles

m=1
v=[1,1,-1]
pos=[-5.1,-4,6]
d=1
k=4
t=0
dt=0.001
p0r=[]
p1r=[]
p2r=[]
tr=[]
while t<15:
    F12=max(0,d-(pos[1]-pos[0]))*k
    F23=max(0,d-(pos[2]-pos[1]))*k
    v[0]-=dt*F12/m
    v[1]+=dt*(F12-F23)/m
    v[2]+=dt*F23/m
    pos[0]+=dt*v[0]
    pos[1]+=dt*v[1]
    pos[2]+=dt*v[2]   
    t+=dt
    p0r.append(pos[0])
    p1r.append(pos[1])
    p2r.append(pos[2])
    tr.append(t)

Berichten: 3.911

Re: Botsende Deeltjes Simulator

Xilvo schreef: vr 11 nov 2022, 10:17 Dit is de essentie.
Niet bedoeld om te publiceren dus geen comments. Maar het is zo simpel dat het voor zichzelf spreekt.
:D
stel nu eens dat de de linker 2 kogels net wat langer aan elkaar gekoppeld blijven dan de rechter kogel. bv omdat de veerconstante van die linker kogels kleiner is dan die van de rechter kogel. Dan zit er dus tijdelijk energie opgeslagen in de veerwering tussen de 2 linker kogels. vraag is wat er dan gebeurt.

Gebruikersavatar
Berichten: 2.318

Re: Botsende Deeltjes Simulator

Je zou in de code van Xilvo de k in de uitdrukking voor F12 kunnen vervangen door k1 en in de tweede uitdrukking k vervangen voor k2 met k2 > k1. Het lijkt mij dat de derde dan eerder loskomt van de tweede dan de eerste van de derde. Ik vermoed dat de derde eerder loskomt van de tweede dan de eerste van de tweede. Ik denk dat de relatieve beginsnelheid geen impact heeft want die komt niet voor in de formule voor de periode. Maar dat probeer ik nu maar te bedenken zonder te rekenen of te programmeren.

Reageer