Wahadło sprężynowe - Numerycznie obliczyć i zrobić animację

Ruch prostoliniowy, po okręgu, krzywoliniowy. rzuty. Praca, energia i moc. Zasady zachowania.
pp2022
Użytkownik
Użytkownik
Posty: 3
Rejestracja: 5 sty 2022, o 03:32
Płeć: Mężczyzna
wiek: 29

Wahadło sprężynowe - Numerycznie obliczyć i zrobić animację

Post autor: pp2022 »

Witam forum!

Mam do obliczenia numerycznie (w MATLAB lub coś innego) wahadło sprężynowe (wiecie sprężyna zaczepiona na jednym końcu, a na drugim masa m i całość wychylona z położenia równowagi o pewien kąt i puszczona). Na masę m działa siła grawitacji i siła od sprężyny która się wydłuża i skraca. Mam znaleźć współrzędne masy m w czasie i zrobić animację całości.

Zdaję sobie sprawę, że nikt tutaj nie będzie robił za mnie pracy domowej :) - oczywista oczywistość :)

Ale chciałem tylko zapytać o 3-4 rzeczy:

Na stronie

Kod: Zaznacz cały

https://scipython.com/blog/the-spring-pendulum/
pod sam koniec są dwa wzory:

na z1 i z2, z kropeczkami, czyli są to pierwsze pochodne, a więc prędkości punktu (???).

Rozumiem, że z1(z kropką) to prędkość kątowa? a z2(z kropką) to prędkość liniowa (sprężyna się wydłuża i skraca)

Czy dobrze rozumuję ?

Czy te wzory są OK, są dobrze wyliczone? Dlaczego nie podano ich w formie np. x(t) i y(t)??

Jaką metodę obliczeń numerycznych byście tu polecili?


Dziękuję za wszelkie wskazówki!, PP.
StudentIB
Użytkownik
Użytkownik
Posty: 618
Rejestracja: 9 lut 2015, o 13:01
Płeć: Mężczyzna
Lokalizacja: Poznań
Podziękował: 30 razy
Pomógł: 48 razy

Re: Wahadło sprężynowe - Numerycznie obliczyć i zrobić animację

Post autor: StudentIB »

Tak, jest tam zapis:

\(\displaystyle{ z_{1}=\dot{\theta}}\)

\(\displaystyle{ z_{2}=\dot{l}}\)

Czyli są to pierwsze pochodne odpowiednio kąta wychylenia wahadła i długości sprężyny.

Jeśli chodzi o animację to na tej stronie znajdziesz gotowy plik do darmowego programu SMath z takim przykładem (3 post od góry):

Kod: Zaznacz cały

https://en.smath.com/forum/yaf_postsm10012_Animation-double-pendulum-and-a-pendulum-on-a-spring.aspx?g=posts&m=10012
&=

Z kolei tu jest gotowy skrypt do również darmowego programu SciLab:

Kod: Zaznacz cały

https://www.d-booker.fr/GALERIE/public/scilab-en/excerpts/_scilab-base-en-chap1.pdf


Jest to fragment z książki „Scilab from Theory to Practice - I. Fundamentals” autorstwa P. Roux.
janusz47
Użytkownik
Użytkownik
Posty: 7917
Rejestracja: 18 mar 2009, o 16:24
Płeć: Mężczyzna
Podziękował: 30 razy
Pomógł: 1671 razy

Re: Wahadło sprężynowe - Numerycznie obliczyć i zrobić animację

Post autor: janusz47 »

To jest animacja toru ruchu wahadła sprężynowego w języku Pythom.

W programie zastosowano metodę równań Eulera-Lagrange'a.

Pochodne \(\displaystyle{ \dot {z}_{1}, \dot{z}_{2} - }\) oznaczają odpowiednio prędkość kątową odchylenia wahadła i prędkość liniową wydłużenia sprężyny.

Położenie końca wahadła w chwili \(\displaystyle{ t }\) przedstawiono w uogólnionych współrzędnych biegunowych \(\displaystyle{ (\theta(t), l(t)) }\) a nie we współrzędnych prostokątnych \(\displaystyle{ x(t), \ \ y(t). }\)

Możemy przedstawić ruch płaski czy przestrzenny wahadła sprężynowego w układzie współrzędnych kartezjańskich \(\displaystyle{ (x(t), y(t), z(t) ), }\) przyjmując uogólnione współrzędne sferyczne (zależne od czasu) i rozwiązując w programie układ równań:

\(\displaystyle{ \begin{cases} x(t) = r(t)\cdot \sin(\theta(t))\cdot \cos(\theta(t)) \cdot \cos(\phi(t)) \\ y(t) = r(t) \cdot \sin(\phi(t))\cdot \sin(\theta(t)) \\ z(t) = -r(t)\cdot \cos(\theta(t)) \end{cases}. }\)
pp2022
Użytkownik
Użytkownik
Posty: 3
Rejestracja: 5 sty 2022, o 03:32
Płeć: Mężczyzna
wiek: 29

Re: Wahadło sprężynowe - Numerycznie obliczyć i zrobić animację

Post autor: pp2022 »

Bardzo dziękuję za (p)odpowiedzi !!!

Czy ktoś mógłby rzucić okiem na to rozwiązanie:
Oscylator harmoniczny

?

Dziękuję!
ODPOWIEDZ