Voglio scrivere un programma per simulare un movimento di numero elevato (N = 1000 - 10^5 e più) di corpi (cerchi) su 2D aereo. Tutti i corpi hanno le stesse dimensioni e l'unica interazione tra loro è la collisione elastica.Simulazione di n corpi in collisione 2D (rilevamento rapido di collisioni per un gran numero di sfere)
Voglio ottenere qualcosa come ma in scala maggiore, con più palle e riempimento più denso dell'aereo (non un modello di gas come qui, ma smth come modello di acqua bollente).
Quindi voglio un metodo veloce di rilevamento che il numero di palla i
ha qualsiasi altra palla sul suo percorso entro 2 * raggio + V * delta_t distanza. Non voglio fare una ricerca completa di collisione con palle N per ciascuna sfera i
. (Questa ricerca sarà N^2.)
PS Ci scusiamo per GIF animate in loop. Basta premere Esc per fermarlo. (Non funzionerà in Chrome).
In quale lingua faresti questo? –
Vuoi che sia in tempo reale? –
java (più esattamente - elaborazione java). ma non so quale algoritmo dovrei usare. – osgx