Wpis z mikrobloga

#python #python3

Pomoże ktoś rozkminić zadanie?
Link do zadania

Equations of motion

dr = x2 - x1

m a1 = dr k (1 - l/|dr|)

m a2 = - dr k (1 - l/|dr|)


# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation
k=10
l=10
m_1=1
m_10=10
kroki=500
czas_poczatek=0
czas_koniec=10
lokalizacja_a = [0,0]
lokalizacja_b = [-l,0]
predkosc_a=[0,0.5]
predkosc_b=[-3,3]
grawitacja=9.81
tablica=np.linspace(czas_poczatek,czas_koniec,kroki+1)
dt=tablica[1]-tablica[0]
przyspieszenie=np.zeros((kroki+1,2))

Tylko, że nie wiem jak to w ogóle ugryźć. Wykresy to jakaś czarna magia.
Może jakieś przydatne materiały gdzieś na sieci? Bo na podanej stronce niby jest trochę teorii, ale nie umiem je zastosować.
  • 8
@ssupkowski: lubie takie zadania, "tablica to kontener na dane dowolnego typu. Zadanie: korzystajac z tej wiedzy zasymuluj bezpaliwowy lot i wyrysuj trajektorie lotu satelity na jowisza, bonusowe zadanie: czy bedzie mozliwy przelot obok tytana? Jezeli tak, to w jakiej odleglosci od powierzchni planety (z dokladnoscia do 1 centrymetra)?"
@zefj: Też wolałbym zacząć od czegoś łatwiejszego. Jak się nie ma co się lubi, to się lubi co się ma.
Zadanie 1 jakoś rozkminiłem. I nawet w materiałach trochę na ten temat było.
Ale to przerasta moje możliwości.
@ssupkowski: reszta zadan to banal, ale to drugie to jakis kosmos. Poszukaj w internecie cos na temat ruchu cial polaczonych sprezyna, na szybko patrzac troche informacji na ten temat jest, ale nie mam teraz ochoty tego analizowac. Dziwi mnie brak informacji na temat samej sprezyny, ktora przeciez ma kluczowy wplyw na taki uklad... Poza tym skoro okreslono poczatkowa predkosc, to i kierunek ruchu cial powinien chyba zostac zdefiniowany? Ale moze #!$%@?
@ssupkowski @stranger13 @TenToTamTaki @zefj: napisze jak mi się wydaje, może za kilka dni będe miał chwilę żeby w całości zrobić to zadanie, póki co szkic myślowy:
W każdej kolejnej iteracji po czasie dt:
1. Najpierw wyznaczasz przyspieszenie w osi Ox działające na ciało pierwsze: a1 oraz na ciało drugie: a2
2. Wyznaczasz prędkości ciała pierwszego v1x oraz drugiego v2x po tym czasie dt, znając przyspieszenie oraz prędkość