Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];

Вниз

Помогите с физикой планет   Найти похожие ветки 

 
Yegorchic ©   (2005-04-22 20:14) [0]

Вот значит мне надо рачитать как быдут двигаться планет в космосе... Планеты могут быть любые (читаются из файла)... вот, я делаю так:
Нахожу расстояние между объектами:
1) r = (x2-x1; y2-y1; z2-z1)
2) |r| = *нахожу длину вектора r*
Нахожу направление (в какую сторону лететь):
3) e = (1/|r|)*r
Нахожу ускорение:
4) |a| = G * m2/|sqr(r)|
5) a = |a|*e

Нахожу все ускорения для всех тел таким образом.
Нахожу новые координаты:
6) V = r0(*r первоначальное*)+V*t(t-время)+a*sqr(t)/2.

Это всё правильно? Что-то когда я это оформляю в Delphi, то у меня ничего не работает. Вот код:

for i:=1 to Nobjects do for j:=1 to nobjects do R[i,j]:=VectorRazn(Data[j].XYZ, Data[i].XYZ);
for i:=1 to Nobjects do for j:=1 to nobjects do R_[i,j]:=VectorLength(R[i,j]);
for i:=1 to Nobjects do for j:=1 to nobjects do if i <> j then E[i,j]:=VectorNaSkal(R[i,j], 1/R_[i,j]);
for i:=1 to Nobjects do for j:=1 to nobjects do if i <> j then A_[i,j]:=G*(Data[i].Mass/sqr(R_[i,j]));
for i:=1 to Nobjects do for j:=1 to nobjects do if i <> j then A[i,j]:=VectorNaSkal(E[i,j], A_[i,j]);
for i:=1 to NObjects do for j:=1 to NObjects do Data[i].A:=VectorSum(Data[i].A, a[i,j]);
for i:=1 to NObjects do Data[i].XYZ:=VectorSum(VectorSum(Data[i].XYZ, VectorNaSkal(Data[i].Vxyz, t)),VectorNaSkal(Data[i].A,t*t/2));

Спасибо.


 
XProger ©   (2005-04-22 22:04) [1]

"ничего не работает", у тебя хоть свет в квартире есть? ;)
Что-то всё равно должно работать...

P.S.
А е нормализовать не нужно случаем?


 
Yegorchic ©   (2005-04-22 23:23) [2]

Формулы то правельные? Или что то не то в коде?


 
Yegorchic ©   (2005-04-22 23:23) [3]

Формулы то правельные? Или что то не то в коде?


 
Yegorchic ©   (2005-04-22 23:23) [4]

Формулы то правельные? Или что то не то в коде?


 
MustDie   (2005-04-24 17:50) [5]

Проверь, 1)производится ли изменение вектора скорости каждой планеты на каждом шаге ( V(t+dt) = V(t) + A*dt, V-скорость, A-ускорение, dt - временной шаг );
2)обнуляются ли перед использованием массивы Data[i].XYZ, Data[i].Vxyz, Data[i].A.


 
Yegorchic ©   (2005-04-24 20:08) [6]

спасибо. я уже нашёл ошибку, это как раз и было не обнуление массива Data[i].A. А массив Data[i].XYZ не надо обнулять, он же и так переписывается, и перед переменной t(время) надо было ставить мунус в последней строчке.


 
Tonich   (2005-04-24 21:24) [7]

Ох ну ты и замучал, а только надо было решить уравнение Кеплера
методом итераций да и все, и ты имелбы координаты любой планеты , в любой момент времени, А из своего файла мог бы считывать элементы орбиты
Но если тебе так легче...................


 
Yegorchic ©   (2005-04-24 23:32) [8]

Уравнение Кплера прменяется для двух, дальше всё равно используются приближённые методы, напремер теория возмущений. А сточки зрения математики они чрезвычайно сложны, а тут всё просто... тем более расчёты можно производить с кюбым кол-вом тел. Конечно возможность расчёта положения тел в абсолютно любой момент времени.


 
Думкин ©   (2005-04-25 06:21) [9]

> [7] Tonich   (24.04.05 21:24)

Автор не пренебрегает взаимным притяжением планет - следовательно его задача шире задачи 2-х тел, а следовательно законы Кеплера спускаются в унитаз.


 
VVV-First   (2005-04-25 14:51) [10]


> Yegorchic ©   (24.04.05 23:32) [8]

Хмммммм так что тебе мешает решать уравненеи для каждой планеты , со своими элементами в один и тот же момент времени.
Я так понял точные координаты тебе ни к чему, а этого помоему достаточно.
просто надо будет рассматривать несколько задачь 2-х тел
Типа Цетральное тело - Первое тело,Цетральное тело - Второе  тело... Цетральное тело - N-е тело  

> Автор не пренебрегает взаимным притяжением планет - следовательно
> его задача шире задачи 2-х тел, а следовательно законы Кеплера
> спускаются в унитаз.

ПРежде чем такое говорить , почитай начальный курс астрономии


 
Думкин ©   (2005-04-26 07:43) [11]

> [10] VVV-First   (25.04.05 14:51)

?!

Астрономии? Начальный?

Законы Кеплера, а равно и вполне выводимое уравнение - это задача 2-х тел. Бегом к букварю. Используется движение по эллипсу - характеристики вычисляются - он весело очень.

Оно понятно, что вы хотите к суперпозиции свести и прочая(используя Кеплера) - но - вы подумали что рассчитытвать и какие таблицы? Подход с расчетом на каждом шаге дифференциальных характеристик - реален. А вот на реализацию вашего - я бы с удовольствием посмотрел и также на те полведра пота, против моих нескольких капель. :))

Не отсылайте меня к астрономии, начальной. :) Лучше бинт резину на коленки намотайте - а то подогнуться. :))

Элементы орбиты из файлов? Жду еще. :))


 
Думкин ©   (2005-04-26 07:49) [12]

> [10] VVV-First   (25.04.05 14:51)

Хорошо - почитал. Имеем 3 тела. Имеем 1-й закон Кеплера утверждающий, что планета движется по эллипсу, в одном из фокусов которого находится Солнце.

Мы отстали от планет и Солнца. Ну... возьмем: Солнце, Землю и Луну. 3 тела?

Покажите мне тот эллипс для Луны. В инерциальной системе координат. Желательно.

Можно расширить и говорить про центр масс. Но покажите мне этот чертов эллипс.


 
VVV-First   (2005-04-26 12:44) [13]


> Думкин ©   (26.04.05 07:49) [12]

а что же вам мешает в случаи Луны перейти в систему координат с центорм с Землей, и считать туже задачу 2-х тел, Вот только точность этих координат это конечно да......:)

> Имеем 1-й закон Кеплера утверждающий, что планета движется
> по эллипсу

Не хочу придераться, но он утверждает, что все тела движутся по коническим сечениям (еллипс, гипербола, парабола)


 
Думкин ©   (2005-04-26 12:53) [14]

> [13] VVV-First   (26.04.05 12:44)

1. То что система неинерциальная видимо? Или пренебрежем? Так автор судя по приведенному в сабже - не хочет. Может и ошибаюсь, но вроде даже для случая 3-х тел нет ничего приемлемого на уровне з.Кеплера. Кроме разумеется ряда инвариантов или з.Ньютона.

2. В формулировке Кеплера? Он наблюдал движения по гиперболе? Ну в частности, по тому что я привел - для планет если. Или вы знаете планету которая движется по гиперболе? :)

http://encycl.yandex.ru/cgi-bin/art.pl?art=gl_natural/2574/257_4516.HTM&encpage=gl_natural

Законы Кеплера
Законы Кеплера - три экспериментально установленных закона движения планет Солнечной системы.

1-й закон Кеплера. Все планеты движутся по эллиптическим орбитам, в одном из фокусов которых находится Солнце.

2-й закон Кеплера. Радиус-вектор, проведенный от Солнца к планете, за равные промежутки времени описывает равные площади.

3-й закон Кеплера. Квадраты времен обращения планет вокруг Солнца относятся как кубы больших полуосей их орбит.


 
Думкин ©   (2005-04-26 12:54) [15]

1. И кроме этого - Солнце еще есть. Тоже пренебрежем?


 
Думкин ©   (2005-04-26 12:56) [16]

1. Хотя тут или неинерциальность или Солнце - равноценно. :) На чем собственно и ОТО вылезло.


 
VVV-First   (2005-04-26 13:06) [17]

не попорядку::)

> Или вы знаете планету которая движется по гиперболе? :)

а что законы кеплера справедливы только для планет?

> Может и ошибаюсь, но вроде даже для случая 3-х тел нет ничего
> приемлемого на уровне з.Кеплера.

С эти я и не спорю, я кажется говорил чтобы разбить задачу N тел на N-1 задачу 2-тел

А чем же это я принебрег.Тем что не учел влияние Юпитера , на Землю, или приливное от луны или давление света?
я думаю если автор все это будет считать , то ему не захочиться и рисовать все это дело
> 1-й закон Кеплера. Все планеты движутся по эллиптическим
> орбитам, в одном из фокусов которых находится Солнце.
>
> 2-й закон Кеплера. Радиус-вектор, проведенный от Солнца
> к планете, за равные промежутки времени описывает равные
> площади.
>
> 3-й закон Кеплера. Квадраты времен обращения планет вокруг
> Солнца относятся как кубы больших полуосей их орбит.

Да все это так, так это же не означает , что они не справедлилы в других системах

> И кроме этого - Солнце еще есть. Тоже пренебрежем?


 
Думкин ©   (2005-04-26 13:52) [18]

> VVV-First   (26.04.05 13:06) [17]

1. Законы Кеплера - Кеплер устанавливал исходя из этого материала. Я понимаю, что в случае двух тел получаются конические сечения - но это уже расширение з.Кеплера. И сделал его наверняка не Кеплер, а Ньютон.

2. Как вы сведете? Вы пренебрежете взаимным притяжением планет как Ньютон? Но у нас это оправдано - автор же не пренебрегает взаимным притяжением планет. Кстати, и мы тоже - после з.Кеплера почти все механики потели как раз в направлении поравок к орбитам планет. Это не начальная астрономия - это Лаплас. Почитайте. Или это:

"Идея о существовании в Солнечной системе девятой планеты появилась в результате обнаружения отклонений в орбитальном движении Урана и Нептуна, которые могли быть объяснены воздействием более удаленной массивной планеты. Поиском этой планеты активно занимался Персиваль Ловелл, основатель Ловелловской обсерватории во Флагстаффе, Аризоне, США. Поиски оказались безуспешными, и в 1916 г. были прерваны смертью Ловелла. Ирония судьбы заключается в том, что на фотоснимках, сделанных в ходе поиска должен был быть Плутон — но его изображение попало на дефект фотопластинки. Поиск был возобновлен в 1929 г. и поручен специально нанятому для этого молодому астроному-любителю Клайду Томбо. Менее чем через год, 18 февраля 1930 г. Томбо обнаружил новую планету, выглядевшую как звездочка 15-й величины в созвездии Близнецов."

Автор сабжа - явно вводит влияние других планет друг на друга. Иначе бы он не приводил те свои пункты. Как вы думаете, человек способный понять те пункты способен понять, что можно чем-то и пренебречь - если надо?

3. Они справедливы - для системы двух точечных масс. Причем одна неподвижна. Иначе первый немного поправить надо.


 
VVV-First   (2005-04-26 14:20) [19]


> . И сделал его наверняка не Кеплер, а Ньютон.
Именно Кеплер, ядавал недавно исторю астрономии.
Вы знаете, такое ощущение, будто мы говорим об одном и том же но на разных языках :)))))

> это Лаплас. Почитайте
Пасибо я читал,у меня курсовая , была почти на эту тему:)
Я думаю имеет смысл закончить все это обсуждение, хотя мне было интересно:)))))


 
Думкин ©   (2005-04-26 14:27) [20]

> VVV-First   (26.04.05 14:20) [19]

Взаимно. :)



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.52 MB
Время: 0.037 c
6-1115484224
nap
2005-05-07 20:43
2005.08.21
не удаляет письмо с сервера


1-1122562154
Katya21
2005-07-28 18:49
2005.08.21
Open Save Dialog


1-1122615127
JetMan
2005-07-29 09:32
2005.08.21
Отобразить XML в виде дерева


1-1122555152
Zikmu
2005-07-28 16:52
2005.08.21
PAnsiChar и String


1-1122965017
henston
2005-08-02 10:43
2005.08.21
создание серваса





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский