Вы заинтересованы в назначении координат (xi, yi, zi) и массы (mi) для каждого объекта, чтобы гравитационная сила была последовательной, так?
Рассмотрите 8 пунктов за раз. Вы имеете в общей сложности 32 неизвестных и 28 уравнений. Вы можете предположить, что первая точка находится в начале координат и вторая точка по оси x. Это означает, что у вас будет 28 неизвестных и 28 уравнений.
Итак, первое устройство и алгоритм для решения по 8 пунктов за раз. Затем пошагово добавьте одну точку на каждой итерации.
=== Пошаговое ===
Рассмотрим вы получаете п точек измерений D. У вас есть только расстояния между точками, но не координаты. Цель состоит в том, чтобы найти координаты для каждой точки.
Если D = 1, вам нужно учитывать только две (+1) точки за раз. Поместите первую точку в начало. Поместите вторую точку на положительную сторону начала координат. Вы можете разместить третью точку относительно происхождения, но поместите ее справа или слева от нее в зависимости от расстояния до первой точки и т. Д.
Если D = 2, укажите точку 1 в точке происхождения, укажите на положительное сторона на оси х, третья точка на положительной стороне оси y в зависимости от расстояния. Начиная с четвертого пункта, вы можете использовать любые две размещенные точки для размещения следующего и использовать любую другую точку для уточнения опций (будут два варианта).
Аналогично D = 3. Поместите первые три точки на плоскость ху (z = 0) для всех трех. Затем поместите четвертую точку в постильную часть z axist. И так далее.
Возвращаясь к гравитации: Ваша проблема сложна, потому что вы не можете точно разместить массу в начале координат. Таким образом, вам понадобится более 5 баллов для их размещения. Как я показал выше, вам нужно не более 8 баллов.
В случае, если ваша масса равна, вы можете рассчитать расстояние (~ инверсия силы тяжести) и применить случай, когда D = 3.
Какая у вас координата? –
Что-то мешает вам просто помещать объекты случайным образом или произвольно? Например, вы ищете место, которое статически или динамически стабильно? –
Если вы пытаетесь выполнить гравитационное моделирование, то это называется проблемой n-тела или симуляцией n-тела; даже в 2-й он, вероятно, не будет иметь аналитического решения, если n больше 2. В статье [N-body simulation] (http://en.wikipedia.org/wiki/N-body_simulation) в Википедии обсуждается, как для получения/реализации численного решения проблемы. –