По сути, проблема одна - неравноправие систем отсчета И решение тоже, по сути, одно - запостулировать, как следует выбирать "правильную" систему отсчета.
Есть ещё одно решение - вывести уравнения, аналогичные преобразованиям Лоренца, которые устранят расхождения. А вдруг получится?
Quote (mindstalker)
Телепортация - мгновенное перемещение тела из одной точки пространства в другую.
Механика должна не сильно отличаться от ускорения времени. Уже из энрегетических соображений ясно, что корабль на орбите Земли не может телепортироваться на орбиту Марса - инече его механическая энрегия стала бы отрицатеьной (я где-то уже проводил расчёт). А вот на орбиту Юпитера сможет - благодаря глубине потенциальной ямы Юпитера, которая оказывется глубже земной и солнечной на орбите Земли вместе взятых. Но это если возможен "туннельный эффект".
А он и так возможен, я когда то ради интереса посчитал вероятность туннельного перехода человека на солнце. Точно не помню, но что то типа 10 в степени минус три тыщщи с лишним Win7 64 prof, Athlon II x2 256 3.3Mhz, RAM 4GB, GeForce GTS 250 512MB
Прочитал я тут произведение Глена Кука "Рейд" и обмозговал тамошнюю концепцию гиперпространства.
В общем, описание там было довольно расплывчатым, получается, что если Вселенная замкнута в четырехмерном пространству, то пространство должно иметь определенный радиус кривизны. Найдя способ перемещаться в четырехмерном гиперпространстве, "перпендикулярно" обычному пространству, можно оказаться в гиперпространстве, где физические законы начинают отличаться от обычных. Гравитационные и базовые характеристики становятся более мощными, сокращая расстояния в миллионы раз, а электромагнитные - напротив, ослабевают, так что можно пролететь небольшую планету сквозь и не заметить этого. Для внешнего наблюдателя такой корабль будет выглядеть как маленькая сингулярность, которую очень трудно заметить.
В произведении описывалось так же пространство вблизи центра этой самой кривизны, которое было еще более странным чем гиперпространство, но это был, похоже, сюжетный ход. Вообще, концепция сильно напоминает культовый немецкий фильм "Das Boot", т.е. написанный под впечатлением рассказов подводников Второй Мировой. Win7 Intel Core i5-2310 2.9 Ghz 4 Gb DIMM DDR3 Asus GeForce GTX760, 2 Gb GDDR-5
Сообщение отредактировал Aerospacefag - Вторник, 13.03.2012, 18:09
корабль на орбите Земли не может телепортироваться на орбиту Марса - инече его механическая энрегия стала бы отрицатеьной
Что-то мне не очень понятно. А почему бы нет? Что мешает полной механической энергии быть отрицательной? Я понимаю, что кинетическая энергия всегда положительна. Но ведь потенциальная энергия гравитационного взаимодействия всегда отрицательна.
ИМХО, достаточно, чтобы разница механических энергий до и после телепортации была скомпенсирована. Если разница отрицательна, то она добавится к стоимости перемещения. Если положительна - выделится после прибытия, например, в виде тепла.
Так что прыжок на Марс вполне возможен, но потребует прорву энергии (что-то около 300 МДж за кг только для компенсации разницы потенциальной энергии) Windows 7 x64; Core i5-2500K (3.3 Ghz); 8Gb RAM; Radeon HD 6950 2Gb
Сообщение отредактировал mindstalker - Вторник, 13.03.2012, 19:47
А он и так возможен, я когда то ради интереса посчитал вероятность туннельного перехода человека на солнце. Точно не помню, но что то типа 10 в степени минус три тыщщи с лишним
Так вот что такое Бермудский треугольник - там вероятность просто выше
Quote (mindstalker)
Что-то мне не очень понятно. А почему бы нет? Что мешает полной механической энергии быть отрицательной? Я понимаю, что кинетическая энергия всегда положительна. Но ведь потенциальная энергия гравитационного взаимодействия всегда отрицательна. ИМХО, достаточно, чтобы разница механических энергий до и после телепортации была скомпенсирована. Если разница отрицательна, то она добавится к стоимости перемещения. Если положительна - выделится после прибытия, например, в виде тепла. Так что прыжок на Марс вполне возможен, но потребует прорву энергии (что-то около 300 МДж за кг только для компенсации разницы потенциальной энергии)
Правильно, и эта дополнительная энергия должна накапливаться в виде кинетической энрегии - корабль для прыжка к Марсу должен набрать скольк-то там дополнительных км/с, так что его скорость будет порядка второй космической.
Вот "туннельный прыжок" к Венере возможен сразу с поверхности Земли, при этом у корабля появится избыточная скорость, котрую придётся погасить, чтобы остаться на орбите Венеры.
ЗЫ: надо бы нарисовать свою версию этой картинки, более точную и с учётом кинетической энергии.
На мой взгляд, некорректно компенсировать изменение потенциальной энергии изменением кинетической. Иначе получается, что в момент прыжка корабль получает бесконечный импульс для мгновенного изменения скорости. Да еще и возникает вопрос, куда он должен быть направлен. А если импульс сохранять, то изменение потенциальной энергии можно компенсировать энергией, накапливающейся в гипер-приводе. Но такой вариант совсем не похож на простое ускорение времени. Win7 Pro x64 Intel Core2Quad 2.5GHz 4GiB RAM NVidia GForce 9800 1 GiB
Сообщение отредактировал SHW - Среда, 14.03.2012, 11:19
некорректно компенсировать изменение потенциальной энергии изменением кинетической
Вот! Именно! И я тоже так считаю.
Для прыжка "вверх" (в менее гравитационно "глубокую" точку) нужно накопить энергию в приводе, при прыжке "вниз" энергия наоборот должна выделяться - по моему вполне логично. И законы сохранения, на первый взгляд, выполняются.
И импульс при прыжке (как и кинетическая энергия) либо не должен меняться вовсе - а значит, разницу скоростей придется компенсировать обычными двигателями (хотя есть и альтернатива - сначала прыгнуть так, чтобы набрать нужную скорость под действием гравитации, а потом уже отправиться к точке назначения. Именно это я и называл чуть выше "телепортационно - гравитационными маневрами") либо
Quote (SHW)
возникает вопрос, куда он должен быть направлен
Причем вместо одного длинного прыжка можно (и, скорее всего, наиболее выгодно) делать серию частых коротких - так, как SpaceEngineer предлагал в ранних обсуждениях способов сверхсветового перемещения. Собственно, в этой-же теме, в первом посте:
Quote (SpaceEngineer)
2) Сверхсветовой двигатель
Сверхсветовой двигатель - "прыжковый". Но корабль не может прыгать сразу на световой год, а может осуществлять частую серию которких прыжочков на миллионы-миллиарды км. Между прыжками проходит 1 миллисекунда, в это время заряжаются конденсаторы прыжкового двигателя. Для пилота это быдет выглядеть, как непрерывное (потому что 1000 прыжков в секунду) сверхсветовое движение без релятивистских искажений
Может, мы просто говорим о разных вещах. И вкладываем разный смысл в одни и те-же термины? Все вышесказанное относится именно к "волшебному" мгновенному перемещению в пространстве (телепортация, гиперпрыжок).
Когда же речь идет о "движении с локальным ускорением времени" то я согласен, что происходит обмен кинетической и потенциальной энергий - так же, как и при обычном космическом полете. Windows 7 x64; Core i5-2500K (3.3 Ghz); 8Gb RAM; Radeon HD 6950 2Gb
Сообщение отредактировал mindstalker - Среда, 14.03.2012, 19:42
Есть ещё одно решение - вывести уравнения, аналогичные преобразованиям Лоренца, которые устранят расхождения. А вдруг получится?
Не совсем аналог преобразований Лоренца, но устранить расхождения поможет.
Движение корабля можно описывать следующими уравнениями: где
k - коэффициент сжатия времени kw i - коэффициент влияния i - го массивного объекта vi - скорость массивного объекта в текущей системе координат
Определяющие здесь - функции зависимости коэффициентов влияния от координат. Сумма коэффициентов влияния всех объектов в любой точке пространства должна быть равна единице. Пример такого набора функций: "kw i равен 1 для тела, ускорение свободного падения которого в данной точке максимально, и равен 0 для всех остальных тел".
При отсутствии ускорения времени (k = 1) корабль ведет себя как обычно.
Если ускорение времени включено, то в области, в которой коэффициент влияния некоего тела равен единице, корабль ведет себя так, как будто его движение описывается относительно ИСО этого тела. Тоесть, именно в ИСО данного тела движение корабля будет выглядеть ускоренным во времени.
По сути, это интерполяция движений корабля относительно всех ИСО массивных объектов (kw i играет роль коэффициента интерполяции)
Пример такого набора функций: "kw i равен 1 для тела, ускорение свободного падения которого в данной точке максимально, и равен 0 для всех остальных тел".
Это просто переключение ИСО корабля, резкое. Не годится - например корабль не сможет выйти на орбиту Луны (в треугольную точку Лагранжа например), т.к. Солнце притягивает её сильнее, чем Земля. Но вообще идея может сработать, попробую - сообщу о результатах.
Да, к сожалению. Это просто пример - первое, что пришло в голову. Для реального использования нужна гладкая функция без разрывов.
Масштаб, естественно, не соблюден белый - Галактика красный - Солнце зеленый - Земля синий - Луна
Коэффициенты влияния можно получить из любой функции расстояния до массивного объекта: Но в таком случае не будет области, где один из коэффициентов влияния равен единице.
Quote (SpaceEngineer)
корабль не сможет выйти на орбиту Луны (в треугольную точку Лагранжа например)
Чтобы можно было выйти на орбиту Луны вокруг земли придется подшаманить с критерием выбора ИСО корабля.
А вот что касается точки Лагранжа - я что-то слабо себе представляю, как корабль может находиться в точке Лагранжа и, одновременно, двигаться в ускоренном темпе вокруг Земли. Он либо летает синхронно с Луной в точке Лагранжа (эффект от ускорения - нулевой), либо летает по орбите вокруг Земли, обгоняя Луну (и никаких точек Лагранжа).
А вот что касается точки Лагранжа - я что-то слабо себе представляю, как корабль может находиться в точке Лагранжа и, одновременно, двигаться в ускоренном темпе вокруг Земли.
Корабль, находящийся в точке Лагранжа, разворачивается в направлении пересечения с орбитой Марса и включает маршевый двигатель... Win7 64 prof, Athlon II x2 256 3.3Mhz, RAM 4GB, GeForce GTS 250 512MB
А вот что касается точки Лагранжа - я что-то слабо себе представляю, как корабль может находиться в точке Лагранжа и, одновременно, двигаться в ускоренном темпе вокруг Земли. Он либо летает синхронно с Луной в точке Лагранжа (эффект от ускорения - нулевой), либо летает по орбите вокруг Земли, обгоняя Луну (и никаких точек Лагранжа).
Вообще да, вы правы.
Quote (mindstalker)
Зона влияния Земли заканчивается чуть дальше орбиты луны, границы довольно пологие (ширина границ чуть меньше радиуса зоны влияния)
Функцию можно подобрать, но не хотелось бы такой костыль использовать... Попробую так и со сплайнами, не прокатит - буду придумывать другую идею. Кстати всем любителям гиперпространства или гиперпрыжков не помешало бы задуматься над элементарной физикой вроде законов сохранения - из нашего обсуждения видно, что вылазит много проблем
Quote (Gta_San)
SpaceEngineer, Извините, может быть не в тему. Хотел поинтересоваться как обстоят дела с физикой полетов у вас ? Много написали ?
Смотря что считать многим. Написал интегрирование движения (вроде бы независит от fps), гравитацию от тел системы, столкновение с планетами, управление с клавиатуры, отображение будущего участка траектории корабля. Но есть глюки - планеты подёргиваются относительно корабля, гиперускорение работает неправильно, и вообще без предварительного расчёта орбиты летать нереально (в "ручном режиме"), а пересчёт отображаемого участка траектории в реальном времени очень тормозит.
Функцию можно подобрать, но не хотелось бы такой костыль использовать...
А почему костыль? Мы же не знаем, да и не можем знать, какие физические принципы задействованы. Следовательно, мы не знаем, какие формулы правильные. А значит, их придется выводить эмпирически. Сложность в том, что определенности насчет того, каким должно быть поведение в той или иной ситуации просто нет.
Поэтому я и предлагаю различные варианты, чтобы можно было из них выбрать подходящий - в угоду геймплею.
Причем, все предложенные функции логически обоснованы и выведены из предъявленных требований. Требования скомпилированы из различных объяснений и примеров того, как выглядит полёт ускоренного во времени корабля.
Я исходил из следующих постулатов: 1. Движение корабля похоже на движение с ускорением времени. 2. Если корабль находится на орбите вокруг планеты, то при включении ускорения он станет двигаться быстрее, но по той-же орбите. (по идее,то-же должно касаться и орбит вокруг лун, звезд, галактик) 3. При межпланетных перелетах, корабль будет двигаться по той-же траектории, что и без ускорения (тоесть, по эллиптической орбите вокруг звезды), но планеты для него как бы остановятся.
Но в пункте 1 есть противоречие: нет такой траектории, движение по которой выглядит как движение с ускорением времени во всех ИСО. Был предложен выход: движение корабля похоже на движение с ускорением времени, если наблюдать из "правильной" ИСО.
Из пунктов 2 и 3 следует, что "правильная" ИСО в разных ситуациях разная: На орбите вокруг планеты - ИСО, связанная с центром планеты; для луны - с центром луны; и т.д. - с центром наиболее "влиятельного" в данной ситуации тела. А значит, требуется переключать систему отсчета в зависимости от ситуации. Чтобы переключение не было резким можно применить интерполяцию.
Так и получились все эти формулы. В том числе и последняя, основанная на адекватном наборе параметров массивных тел (масса тела и расстояние от тела до корабля) и позволяющая подстраивать расстояние до границ (параметр х) и плавность переключения (параметр у) систем отсчета.
P.S. Насколько я смог проверить, по крайней мере закон сохранения энергии не нарушается (с гипердвигателем, локально ускоряющим время - вообще никак, а с прыжковым - при условии, что разница компенсируется энергией, закачиваемой в привод).
P.P.S. Еще один подводный камень - как быть со столкновениями? Например, если корабль летит со скоростью 0,5 м/с в сторону небольшого астероида, и включает ускорение в 100 раз. Что будет с кораблем после столкновения (притяжением астероида можно пренебречь)? Как быть с межзвездным водородом, космической пылью, микрометеоритами? Особенно при межзвездных, а тем более, межгалактических полетах (ведь, чтобы перелет занимал приемлемое время, скорость перемещения должна будет измеряться, минимум, в парсеках в секунду)? Windows 7 x64; Core i5-2500K (3.3 Ghz); 8Gb RAM; Radeon HD 6950 2Gb
Сообщение отредактировал mindstalker - Пятница, 23.03.2012, 19:24