Комментарии 38
2,6 %
А форма тела какая?
Вот такая.
<zanuda>
Если уж вспоминатьбаяны классику, то хотя бы с верной формулировкой. Нужно требовать постоянную плотность. Если попросить, чтобы лишь массы и объёмы совпадали, то планета, большая часть массы которой сосредоточена в точке на поверхности, сможет иметь сколь угодно большое g, и задача не будет иметь смысла.
</zanuda>
<zanuda>
Если уж вспоминать
</zanuda>
НЛО прилетело и опубликовало эту надпись здесь
Для тех граней, которые обращены к заданной точке передней стороной, потенциал будет положительным, а которые задней — отрицательным.
В качестве аналогии — подсчет площади плоской фигуры, заданной конечным числом вершин. Строим из любой точки векторы ко всем вершинам и ищем площади образованных треугольников через векторное произведение. Очевидно, что для ребер, вершины которых располагаются по часовой стрелке относительно исходной точки, знак векторного произведения будет один, которые против часовой — противоположный. В сумме будем иметь площадь. Аналогично вычисляется объём тела через смешанное произведение векторов.
В качестве аналогии — подсчет площади плоской фигуры, заданной конечным числом вершин. Строим из любой точки векторы ко всем вершинам и ищем площади образованных треугольников через векторное произведение. Очевидно, что для ребер, вершины которых располагаются по часовой стрелке относительно исходной точки, знак векторного произведения будет один, которые против часовой — противоположный. В сумме будем иметь площадь. Аналогично вычисляется объём тела через смешанное произведение векторов.
Я не очень понимаю, почему нельзя было без сферических функций и размышлений про тетраеэдры?
Просто берешь дробишь тело на очень маленькие кубики массой m. В каждой точке потенциал складывается от потенциалов этих кубов. От каджого куба потенциал примерно пропорционален m/r. В пределе, когда размер кубов стремится к нулю, вы получите правильно значение потенциала.
Просто берешь дробишь тело на очень маленькие кубики массой m. В каждой точке потенциал складывается от потенциалов этих кубов. От каджого куба потенциал примерно пропорционален m/r. В пределе, когда размер кубов стремится к нулю, вы получите правильно значение потенциала.
Можно и на кубики. Но во-первых, задача разбиения тела на кубики не так тривиальна, как кажется на первый взгляд. Во-вторых, ближние кубики будут иметь намного большее влияние на общий потенциал, чем дальние. Тогда придётся либо всё тело разбивать на очень маленькие кубики (что значительно увеличивает время расчёта), либо разбивать только ближние кубики (но это разбиение придётся проводить для каждой точки, что опять же неблагоприятно влияет на время расчёта). к тому же кубики, примыкающие к границам тела будут не просто кубиками, а усечёнными кубиками и учёт их вклада в потенциал потребует много вычислительных ресурсов.
1) Не хочется делить на кубики, пожалуйста, можете делить на тетраедры. Но эти тетраедры спокойно можно считать точечными, как и кубики. При мелком разбиении все сгладится.
2) Вклад ближних кубиков ( или тетраедров ) в потенциал пренебрежетельно мал по сравнению со вкладом дальних, это можно понять двумя способами
a) Интеграл от функции 1/r по трехмерному пространству сходится в нуле, из этого все следует.
b) Или же так. Берем маленькую сферу шириной dr и радиуса r. Потенциал от нее в центре этой сферы будет пропорционалень 1/r * ( r^2 * dr). Видим, чем ближе эта сфера к центру, тем меньше от нее вклад.
2) Вклад ближних кубиков ( или тетраедров ) в потенциал пренебрежетельно мал по сравнению со вкладом дальних, это можно понять двумя способами
a) Интеграл от функции 1/r по трехмерному пространству сходится в нуле, из этого все следует.
b) Или же так. Берем маленькую сферу шириной dr и радиуса r. Потенциал от нее в центре этой сферы будет пропорционалень 1/r * ( r^2 * dr). Видим, чем ближе эта сфера к центру, тем меньше от нее вклад.
Когда вы будете брать градиент потенциала, то внезапно ближайшие кубики начнут вносить вклад, и ещё огого какой.
Еще раз, потенциал от кубика растет как 1/r, при уменьшении радиуса, но зато количество кубиков уменьшается квадратично: как r^2. Поэтому вклад ближних кубиков будет пропорционален r, то есть пренебрежительно мал по сравнению с вкладом дальних кубиков.
Про градиент я не понял. Никаких проблем с ним не должно быть.
Про градиент я не понял. Никаких проблем с ним не должно быть.
НЛО прилетело и опубликовало эту надпись здесь
Накидал код. Кубик со стороной 1 разбиваем на 1000 кубиков (10 по каждой стороне) и считаем силу притяжения из вершины кубика. Это первый вариант. Во втором варианте самый ближний кубик разбиваем еще на 10 кубиков и считаем, что в этом случае получается. Как видим, относительная погрешность в первом случае 2,0%, во втором 0,17%.
Чтобы расчеты были точнее можно отдельно один раз очень точно посчить графитационное поле генерируемое одним кубиком.
А от кубической зависимости времени расчетов от мелкости разбиения имхо никуда не уйти.
А от кубической зависимости времени расчетов от мелкости разбиения имхо никуда не уйти.
Как же не уйти, если в статье интеграл берётся по площади = квадратичная зависимость.
В статье интегрируется по объему
Вы невнимательно читали статью. Фактически поверхность тела разбивается на малые площадки (треугольники), а само тело представляется как алгебраическая сумма конусов с малыми телесными углами (вытянутых тетраэдров). Тогда от каждого такого конуса вклад в силу тяжести составит:
Конечно, мы нормальную проекцию площадки вычисляем через объём конуса , но это не отменяет того, что интегрируем мы по площади (хотя совсем корректно было бы сказать, что мы интегрируем по телесному углу, так как близкие треугольники нам приходится дополнительно разбивать, чтобы ).
Кстати, это сразу нам даёт идею для альтернативного алгоритма методом Монте-Карло: надо из точки пустить n лучей, и из расстояний от точки до пересечения лучей с телом можно будет посчитать итоговую силу.
Конечно, мы нормальную проекцию площадки вычисляем через объём конуса , но это не отменяет того, что интегрируем мы по площади (хотя совсем корректно было бы сказать, что мы интегрируем по телесному углу, так как близкие треугольники нам приходится дополнительно разбивать, чтобы ).
Кстати, это сразу нам даёт идею для альтернативного алгоритма методом Монте-Карло: надо из точки пустить n лучей, и из расстояний от точки до пересечения лучей с телом можно будет посчитать итоговую силу.
НЛО прилетело и опубликовало эту надпись здесь
IMHO, рассуждение "Трёхмерное тело можно представить в виде наборов треугольных граней, с заданными координатами вершин. Далее будем предполагать, что плотность тела постоянна (для кометы это примерно соответствует истине). Гравитационный потенциал в заданной точке будет равен сумме потенциалов всех тетраэдров, с основанием в этих гранях и с вершиной в заданной точке (мы ищем не гравитационный потенциал, а ускорение свободного падения, которое есть градиент потенциала, но рассуждения остаются теми же)" верно только для выпуклых тел.
В случае с невыпуклым телом (например, комета Чурюмова-Герасименко) нельзя так просто брать и перебором обходить все грани, т.к. появятся некорректные тетраэдры.
Соотвественно, расчет неверен. Особенно вот это место: "Максимальное отклонение вектора ускорения от нормали составляет порядка 60-70 градусов". В обычном случае, угол между нормалью к поверхности и ускорением свободного падения 180 (потому как нормаль нуружу, а ускорение внутрь), и мы видим на комете есть места где похоже этот угол может доходить до 0.
В случае с невыпуклым телом (например, комета Чурюмова-Герасименко) нельзя так просто брать и перебором обходить все грани, т.к. появятся некорректные тетраэдры.
Соотвественно, расчет неверен. Особенно вот это место: "Максимальное отклонение вектора ускорения от нормали составляет порядка 60-70 градусов". В обычном случае, угол между нормалью к поверхности и ускорением свободного падения 180 (потому как нормаль нуружу, а ускорение внутрь), и мы видим на комете есть места где похоже этот угол может доходить до 0.
По поводу невыпуклых тел ответил выше. Любое невыпуклое тело можно разбить на конечное число выпуклых. Если для каждого из выпуклых расчёт верен, то почему он должен быть неверен для суммы выпуклых?
Под отклонением вектора ускорения от нормали, я предполагал отклонение от нормали, направленной вниз, т.е.отклонение 0 градусов означает, что вектор ускорения направлен вертикально вниз. Наверное, стоило написать «отклонение от вертикали», чтобы было понятнее.
Под отклонением вектора ускорения от нормали, я предполагал отклонение от нормали, направленной вниз, т.е.отклонение 0 градусов означает, что вектор ускорения направлен вертикально вниз. Наверное, стоило написать «отклонение от вертикали», чтобы было понятнее.
Любое невыпуклое тело можно разбить на конечное число выпуклых. Если для каждого из выпуклых расчёт верен, то почему он должен быть неверен для суммы выпуклых — это тоже неверно из-за того, что вы не захотели нормально посчитать интеграл по объему.
Давайте на вашей-же аналогии про площадь (которая точно так же неверна). Вот вам картинка:
Выбираем в качестве референсной точки для расчета плоащади — точку А. Считаем площади треугольников:
ABC — ok
ACD — ok
ADE — опа, хрень какая-то, такого треугольника в природе не существует
AFE — опять фигня какая-то
AFA == 0
AAA == 0
AGG == 0
AGH — еще один несуществующий треугольник
и т.д.
и соооовсем неважно какой там знак будет у векторного произведения. Эти площади просто некорректно считать.
Также и с вашим разбиением.
Давайте на вашей-же аналогии про площадь (которая точно так же неверна). Вот вам картинка:
Выбираем в качестве референсной точки для расчета плоащади — точку А. Считаем площади треугольников:
ABC — ok
ACD — ok
ADE — опа, хрень какая-то, такого треугольника в природе не существует
AFE — опять фигня какая-то
AFA == 0
AAA == 0
AGG == 0
AGH — еще один несуществующий треугольник
и т.д.
и соооовсем неважно какой там знак будет у векторного произведения. Эти площади просто некорректно считать.
Также и с вашим разбиением.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Филы сел на «макушку головы» кометы. Ускорение там не максимальное, но отклонение от вертикали зато небольшое.
НЛО прилетело и опубликовало эту надпись здесь
Точное значение считал разбиением тетраэдра на множество узких тетраэдров с вершиной в заданной точке. Гравитационную силу от них нельзя приравнять к точечной массе, но для них существует точная формула (чем уже, тем точнее). Для некоторых тетраэдров интеграл берётся (например, если в основании равносторонний треугольник), по ним тоже сравнивал.
И, для контроля, сравнивал вычисленные значения для куба с точным (для куба интеграл тоже существует в элементарных функциях). До шестого знака после запятой значения сходились. При большей точности вычисления становились долгими, но, полагаю, и шести знаков хватит с лихвой.
И, для контроля, сравнивал вычисленные значения для куба с точным (для куба интеграл тоже существует в элементарных функциях). До шестого знака после запятой значения сходились. При большей точности вычисления становились долгими, но, полагаю, и шести знаков хватит с лихвой.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Гравитационное поле на поверхности тел неправильной формы на примере кометы Чурюмова-Герасименко