Closed kazeevn closed 6 years ago
Я предлагаю брать широкий шаг и, если на некотором интервале есть вероятность сближения, дробить его. Например: изначально берем шаг 10 с, за это время каждый из объектом пролетает не более 80 км. Идем с таким шагом и если на некоторый t видим, что расстояние между объектами меньше 160 км, то рассматриваем интервал [t-10 с; t*+10 с], дробим его на 10 кусочков (по 2 с, значит) и проверяем каждый, находим t с наименьшим расстоянием, рассматриваем интервал [t-2 с; t**+2 с], делаем то же самое и т.д. Наименьший шаг навскидку сказать не могу, он должен зависеть от скоростей и погрешностей по координатам, да. Думаю, ты прав, что если аппараты летят со скоростями 8 км/с (на самом деле скорости пониже немного), и погрешность, например, 100 м, то шаг должен быть меньше 100/16000 ~ 0,006 с. Каждый раз дробя интервал на 10, мы до такого шага спустимся итераций за 4-5, правильно?
Я правильно понимаю, что он должен быть много меньше погрешность_по_координате/относительная_скорость?