Мне нужно переместить некоторые объекты, скажем, 50 в пространстве (то есть сетка [-5,5]) и убедиться, что, если сетка разделена на 100 частей, большинство частей (90% или более) однажды посещенный любым объектом
ограничения:
объект должен двигаться в произвольных направлениях в сетке, часто меняя свои скорости (меняя скорость и направление на каждой итерации)
Я думал о прыгающих шарах (НО, движущихся в случайных направлениях, даже если они не попадают ни в какое пространство, а не в то, как движется настоящий шар), если бы мы могли оставлять их в пространстве в разных положениях с разными силами и каждый раз, когда они ударяя друг друга (или приближаясь к определенному расстоянию), они движутся в разных направлениях с разной скоростью и могут дать нам результат, близкий к 90% попаданию частей в сетке.
Мне также нужно убедиться, что объекты не выходят за пределы сетки (можно установить пределы lb и ub и вернуть их в случае, если они попытаются покинуть сетку)
Мой код отличается от идеи, которую я написал выше ...
ux = 1;
uy = 15;
g = 9.81;
t = 0; x(1) = 0;
y(1) = 0;
tf = 2.0 * uy / g; % time of flight back to the ground
dt = tf / 20; % time increment - taking 20 steps
while t < tf
t = t + dt;
if((uy - 0.5 * g * t) * t >= 0)
x(end + 1) = ux * t;
y(end + 1) = (uy - 0.5 * g * t) * t;
end
end
plot(x,y)
этот код заставляет мяч идти по закону Ньютона, что не так
Итог: мне просто нужно иметь возможность посещать множество частей сетки за короткое время, поэтому я хочу, чтобы объекты хаотично перемещались в пространстве случайным образом (каждый раз, когда я запускаю код, мне нужен другой результат, поэтому это должен быть случайный путь) и чтобы получить лучший результат, я мог бы заставить объекты отражаться в разных направлениях, если они ударяются или посещают друг друга в одних и тех же частях, это, вероятно, даст мне лучший результат.