Circle Packings

Circle Packings est un logiciel mathématique créé par Benjamin Beeker et Brice Loustau. Essayez-le ! Il est simple à installer et à utiliser.

Sur cette page vous trouverez une brève description des fonctionnalités du logiciel et un guide d'installation rapide. Des informations plus détaillées sont disponibles dans le menu d'Aide du logiciel.


Présentation rapide

L'algorithme au coeur du programme calcule numériquement l'empilement de cercles associé à un graphe planaire, tel que le prédit le théorème de l'empilement de cercles1, comme l'illustre l'image ci-dessous :


Suivant une idée de Thurston, le programme affiche l'empilement de cercles associé à un domaine simplement connexe du plan, en vue d'approcher l'application conforme de Riemann2 :


En se basant sur cette idée, le programme peut calculer l'application conforme de Riemann entre deux domaines simplement connexes quelconques. Ci-dessous un exemple avec une image en fond :



1Visitez l'article Wikipedia Circle packing theorem (en anglais) pour en savoir plus. L'algorithme numérique est dû aux mathématiciens Charles R. Collins et Ken Stephenson. Stephenson a également développé un programme autour des empilements de cercles, vous le trouverez (ainsi que d'autres contenus mathématiques intéressants) sur sa page web.

2Visitez l'article Wikipédia Circle packing theorem comme point de départ pour en apprendre plus.


Installation rapide

Windows

Téléchargez et éxécutez cet outil d'installation. Pour Windows XP, téléchargez plutôt celui-ci.

Mac OS

Téléchargez et installez ce fichier dmg. Vous pouvez également compiler le programme à partir des sources comme sous Linux (voir ci-dessous).

Linux

Si vous avez une distribution basée sur Debian (Ubuntu, Mint...), vous pouvez télécharger ce paquet (32 bits, fonctionne sur tous systèmes mais plus lent) ou ce paquet (systèmes 64 bits seulement).

Pour installer le paquet , il suffit de double-cliquer sur le fichier téléchargé si vous avez un gestionnaire de logiciels graphique (qui devrait automatiquement installer les dépendances). Sinon, ouvrez un terminal et entrez sudo dpkg -i "nom_du_fichier". Vous serez alors invités à installer un certain nombre de dépendances, faites-le et recommencez la commande précédente.

Alternativement, le programme peut être compilé à partir des sources. Voici comment faire :

  1. Installez le framework Qt: faites une recherche sur le web pour déterminer comment faire cela sur votre système. Pour les distributions basées sur Debian, sudo apt install libqt4-dev devrait suffire (essayez sudo apt-get install qt5-default qtdeclarative5-dev pour une version plus récente).
  2. Téléchargez cette archive et décompressez-la. NB : Vous pouvez aussi cloner le repo git : git clone https://github.com/seub/CirclePackings.git.
  3. Dans un terminal, allez dans le répertoire de l'archive décompressée et faites qmake puis make (ou make -j N pour gagner du temps, où N est le nombre de coeurs de votre machine).
  4. C'est terminé ! Un fichier éxécutable "CirclePackings" a été généré. Pour le lancer, double-cliquez dessus ou depuis un terminal dans le bon répertoire : entrez ./CirclePackings. NB : Pour créer des raccourcis, définir l'icône de l'application, etc : il va vous vous falloir trouver comment procéder en fonction de votre système. Par exemple pour Ubuntu avec Unity, vous pouvez suivre ce guide.

Note: L'installation a été testée sur divers systèmes mais on n'est jamais à l'abri d'un problème de compatibilité, merci de nous le signaler si la situation se présente. Une fois le logiciel installé, jetez un coup d'oeil au menu Help pour savoir comment l'utiliser et en apprendre plus sur le programme.


À propos du programme

Ce programme a été écrit en C++ en utilisant le framework Qt. Il est libre et open source (sous la license publique général GNU), toutes les sources et autres fichiers sont disponibles sur GitHub : https://github.com/seub/CirclePackings. Le choix du langage a été fait notamment pour des raisons de performances.

La version actuelle "stable" du logiciel (1.0) a été terminée en octobre 2012.