Скажем, у меня есть p узлов на двумерной поверхности размером n на m, я хочу, чтобы узлы притягивались друг к другу так, чтобы чем дальше они находились друг от друга, тем сильнее притяжение. Но если расстояние между двумя узлами, скажем, d (A, B) меньше некоторого порога, скажем, k, то они начинают отталкиваться.
Вы понимаете, конечно, что это не так, как работает физика магнетизма ?
Может ли кто-нибудь дать мне понять, как обновлять координаты узлов с течением времени.
Никто не сможет дать вам код, чтобы сделать это легко, потому что на самом деле это сложная проблема.
Вы можете численно интегрировать обыкновенные дифференциальные уравнения для каждой частицы во времени. Учитывая начальные условия для векторов положения, скорости и ускорения в 2D, вы сделаете шаг по времени, интегрируете уравнения, чтобы получить значения в конце шага по времени, обновите значения, добавив приращение, а затем выполните это снова. ,
Требуется некоторое знание двумерных векторов, численного интегрирования, обыкновенных дифференциальных уравнений, линейной алгебры и физики. Вы знаете что-нибудь о них?
Даже если вы «составляете» свои собственные физические законы, регулирующие взаимодействия между вашими частицами, вам все равно придется интегрировать этот набор уравнений.
Я бы порекомендовал посмотреть на Runge-Kutta для систем ODE. "Числовые рецепты" имеет хорошую главу, даже если вы отправляетесь в другое место для реализации.
"NR" теперь в третьем выпуске. Это немного спорный, но проза очень хорошо.