stala grawitacyjna - jak to ugryzc

Odpowiedz Nowy wątek
2006-12-17 15:01
0

Mam pytanko dla fizykow. Z gory przepraszam za malo naukowy
jezyk jednak fizykiem nie jestem :) Kilka dni temu przez przypadek
zaczelem pisac programik symulujacy grawitacje. W skrocie
polega on na tym ze wrzucamy dowolna ilosc cial w przestrzen
3D ,nadajemy im masy oraz wspolrzedne a co za tym idzie
odleglosci pomiedzy nimi. Wszystko ladnie dziala ale... wlasnie
male "ale", nienasycony tym co udalo mi sie napisac zaczelem
symulowac wzajemne oddzialywanie duzych cial np slonca i ziemi,
wpisalem ich masy, odleglosc, nadalem ziemi predkosc tak ze utrzymuje
sie na stabilnej orbicie wokol slonca.Dla zasady zajzalem tez do
wikipedii jak jest wzor na grawitacje i co prawda intuicyjnie
ulozylem b.podobny to jednak nie taki sam ,chodzi o proporcje
zmiany wektora ruchu kazdego z cial , bo przeciez wiadomo ze
masywniejsze cialo trudniej ruszyc.

moj wzor byl taki :

F = ( masa(A) * masa(B) ) / odleglosc(AB)^2

z tym ze:
wektor A zwiekszal sie o (F masa(A)/masa(B))
wektor B zwiekszal sie o (F
masa(B)/masa(A))

a w wikipedii czytam :

F = G * ( masa(A) * masa(B) ) / odleglosc(AB)^2

gdzie :
F = sila grawitacji;
A,B = ciala;
odleglosc,wektor = bez komentarza

heh, bardzo podobnie ale co to jest te G ? na moj chlopski rozum to
w nim musi byc zawarta ta proprcja czyli wspolczynnik przez ktory
mnozymy wektory.

W wiki podany jest wzor na G (stala grawitacyjna):

G = 6.6742 * 10<sup>-21 * Nm</sup>2/kg^2

Co to jest te Nm i wogole jak to zaimplementowac ? najl w c++;

Intuicyjnie domyslam sie ze ta subtelna roznica we wzorach powoduje ze
u mnie wszystkie orbity wygladaja troszeczke inaczej niz mnie uczono
w szkole.

prosze o lopatologiczna odpowiedz :)

ps.
dlugo zastanawialem sie gdzie ten temat dac , i chyba tutaj najlepiej .

EDIT:
oczywiscie wiem ze to tylko NEWTON, jednak E = mc^2 wolabym narazie
sobie odpuscic.


jakby co:GG4627724

Pozostało 580 znaków

2006-12-17 17:36
0

W wiki podany jest wzor na G (stala grawitacyjna):

    G = 6.6742 * 10<sup>-21 * Nm</sup>2/kg^2

Co to jest te Nm i wogole jak to zaimplementowac ? najl w c++;

niuton razy metr kwadrat na kilogram kwadrat- czyli po prostu jednostka, tak jak jednostką przyspieszenia jest m/s^2.

Zauważ, że przy podstawieniu do wzoru samych jednostek
F = G ( masa(A) masa(B) ) / odleglosc(AB)^2
otrzymasz
F=Nm2/kg2 ( kg kg )/ m^2
co po skróceniu da Ci
F = N, czyli siła będzie wyrażana w niutonach.
Słowem: nie musisz tego implementować.
Co do meritum Twojego pytania: możliwe, że przez brak tego współczynnika G wyniki działania Twojego programu Cię nie zadowalają. Ja niestety też fizykiem nie jestem więc nie powiem na pewno.
Mam jednak nadzieję, że trochę rozjaśniłem Ci to i owo.

Pozostało 580 znaków

2006-12-17 18:38
0

Dzieki za tego Niutona - N,
w wiki bylo napisane : Nm;
wiec nie bedac fizykiem trudno byloby mi to rozszyfrowac,
mogli napisac chociaz N*m a nie Nm


jakby co:GG4627724

Pozostało 580 znaków

2006-12-17 21:27
0

Nm czyli niutonometr jest na tyle czesto uzywana jednostka (a raczej zlozeniem jednostek), ze czasem z przyzwyczajenia pisze sie to razem, bo i tak wszyscy wiedza o co chodzi (w zalozeniu, ci co powinni wiedziec :)) A tak jak napisal id02009 G to po prostu jakas tam konkretna wartosc ;)


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-12-18 09:51
0

Heh cos mi nie pasuje, jesli mam np 2 ciala o duzej roznicy mas to orbity nie sa
takie jak mnie uczyli :/ czyli nie moge uzyskac elipsy

user image

rysowane odrecznie, ale powinno byc czytelne


jakby co:GG4627724

Pozostało 580 znaków

2006-12-18 10:09
0

Moze predkosci sobie zle przyjales? Pamietaj, ze np. oddzialywanie Ksiezyca na Ziemie tez ma niebagatelne znaczenie (o ile pamietam 1/4 masy Ziemii).


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-12-18 14:07
0
johny_bravo napisał(a)

Moze predkosci sobie zle przyjales? Pamietaj, ze np. oddzialywanie Ksiezyca na Ziemie tez ma niebagatelne znaczenie (o ile pamietam 1/4 masy Ziemii).

raczej nie, intuicyjnie wyczuwam ze problem lezy gdzie indziej (sorki za ta intuicje ale z reguly mnie nie zwodzi) . Chodzi o to ze w naturze wystepuja tylko elipsy lub ew parabole/hiperbole a takie kwiatki jak u mnie to raczej nie :/

na oko widac ze wraz ze zblizaniem sie cial do siebie rosnie zbyt wolno, ale jak np podnioslem ja do kwadratu to przy jakiejkolwiek predkosci mialem spiralne orbity + ewentualna proce kosmiczna jesli predkosc pocztkowa dalem za mala

ps.
zdefiniowalem sobie stala EM(masa ziemi) = 5 974.2^21, ksiezyc = 0.0123*em wiec z tym 1/4 to
troszeczke przegieles


jakby co:GG4627724

Pozostało 580 znaków

2006-12-18 14:22
0

Fakt, przesadzilem troche z ta 1/4 :) teraz sprawdzilem w wiki ;) A wracajac do torow - z tych 'kwiatkow' wynika chyba, ze wzorek jest niepoprawny. Zauwaz, ze powinno byc tak, ze najwieksza krzywizna jest blisko ciala okrazanego (bo wieksza sila przyciagania).

Najlepiej byloby jakbys podal jakies konkrety, np. wzory z ktowych wyliczasz, dane jakie podstawiasz, itp.


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-12-19 09:55
0

Juz sobie poradzilem:)
mialem po prostu o 1 mase za duzo w mianowniku,
dodalem 1 odleglosc w dzielniku i jest ok, az sie zdziwilem ze tak to dziala
precyzyjnie, wstawilem wszystkie planety ,slonce, ksiezyc wokol ziemi
a nawet komete halleya i wszystko trzyma sie tylko sila grawitacji !


jakby co:GG4627724

Pozostało 580 znaków

2006-12-21 18:16
0

a oto wynik :
http://republika.pl/ph_chudak/download/Gravity020.exe
(windows binaria)

tylko sie nie smiac! wrocilem do programowania po 4 latach :)

nie mialem danych co do predkosci komety Halleya wiec dalem tak
3,14*oko ale jakos tam sie kreci ;p


jakby co:GG4627724

Pozostało 580 znaków

2007-01-02 04:52
0
algor napisał(a)

wektor A zwiekszal sie o (F masa(A)/masa(B))
wektor B zwiekszal sie o (F
masa(B)/masa(A))

Zgadza sie błąd był dokładnie tutaj. Ponieważ siłe obliczyłeś dobrze, a siła ma odpowiednią zalezność w stosunku do prędkości:

F = v * m

czyli:

v = F / m

A co do oddziaływania pomiędzy Księżycem a Ziemią, o którym wspomniał johny_bravo ten wzór już nie będzie poprawny. Ponieważ wzór ten jest słuszny dla oddziaływania pomiędzy masą punktową a w takim przypadku to przybliżenie wprowadzi duży błąd.
Do obliczenia takiej zalezności można skorzystać z zasady superpozycj.

pozdro

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0