Question

Je voudrais des vecteurs bin dans l'espace de dimension n. Cela peut être fait par pixelating la surface d'un hypersphère de dimension n.

Quelqu'un sait-il de bons algorithmes pour pixelating une hypersphère en C? Je voudrais la taille des bacs constants. Mon espace se compose de seulement des nombres entiers positifs.

Était-ce utile?

La solution

Avez-vous besoin de vos bacs pour être parfaitement régulière? Sinon, il suffit de jeter des points au hasard, et mesurer la distance entre le voisin le plus proche. Vous pouvez nettoyer ce légèrement en jetant des points qui sont trop proches, ou en cours d'exécution quelques itérations de répulsion mutuelle.

Dans le cas contraire, vous voulez probablement convertir sphérique généralisé coordonne et bin dans des zones égales le long chaque dimension. En particulier, si vous savez que vous êtes dans le bac 5 de 20 sur la longitude, vos bacs de latitude seront plus larges que ce qu'ils seraient à l'équateur (environ sqrt (2) plus large angle, en fait, pour correspondre à la même distance la surface).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top