Définition du Modèle d'Ising Bidimensionnel






Jean-François COLONNA
www.lactamme.polytechnique.fr
jean-francois.colonna@polytechnique.edu
CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641, Ecole Polytechnique, CNRS, 91128 Palaiseau Cedex, France
france telecom, France Telecom R&D

[Site Map, Help and Search [Plan du Site, Aide et Recherche]]
[The Y2K bug [Le bug de l'an 2000]]
[Croyez-vous que les Nombres Réels existent dans un ordinateur et que les calculs flottants sont sûrs ?]
[N'oubliez pas de visiter Une Machine Virtuelle à Explorer l'Espace-Temps où vous trouverez plus de 5400 images à la frontière de l'Art et de la Science]
(Site WWW CMAP28 : cette page a été créée le 05/01/2001 et mise à jour le 28/01/2014 15:07:33 -CET-)



/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        M O D E L E   D E   I S I N G   B I D I M E N S I O N N E L  :                                                             */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Definition :                                                                                                               */
/*                                                                                                                                   */
/*                    Considerons un ensemble de points                                                                              */
/*                  'P(i)' porteurs chacun d'un spin 'S(i)'                                                                          */
/*                  (valant en general -1/2 ou +1/2)                                                                                 */
/*                  et disposes sur un reseau carre.                                                                                 */
/*                  A chaque pas de temps, on choisira                                                                               */
/*                  aleatoirement quelques points pour                                                                               */
/*                  lesquels on evalue la quantite :                                                                                 */
/*                                                                                                                                   */
/*                                                  _____                                                                            */
/*                                                  \                                                                                */
/*                                                   \                                                                               */
/*                                      dE(i) = f.J. /    S(i).S(j)                                                                  */
/*                                                  /____                                                                            */
/*                                                    j                                                                              */
/*                                                                                                                                   */
/*                  ou l'indice 'j' parcourt les 4 premiers                                                                          */
/*                  voisins de 'P(i)' et ou 'J' designe la constante                                                                 */
/*                  de couplage (c'est-a-dire la force de celui-ci) et                                                               */
/*                  'f' une constante (positive en general, une valeur                                                               */
/*                  negative simulant l'anti-ferromagnetisme). Alors :                                                               */
/*                                                                                                                                   */
/*                                      si dE(i) <= 0, 'S(i)' est inverse : S(i) = -S(i)                                             */
/*                                                                                                                                   */
/*                                                                                   dE(i)                                           */
/*                                                                                - -------                                          */
/*                                                                                    k.T                                            */
/*                                      sinon, 'S(i)' n'est inverse que si : p < e                                                   */
/*                                                                                                                                   */
/*                  ou 'p' est un nombre aleatoire (dans [0,1]), 'k'                                                                 */
/*                  designe la constante de Boltzmann (dont la valeur est                                                            */
/*                  1.38066e-23 J^1K^-1 mais qui sera en general remplacee                                                           */
/*                  par 1 dans les simulations effectuees) et enfin 'T'                                                              */
/*                  est la temperature "locale".                                                                                     */
/*                                                                                                                                   */
/*                    Il existe une temperature critique (valable pour                                                               */
/*                  le cas bidimensionnel uniquement) en faisant                                                                     */
/*                  f=k=J=1 (pour simplifier) et avec des spins {-1/2,+1/2} :                                                        */
/*                                                                                                                                   */
/*                                                    1                                                                              */
/*                                      Tc = -------------------                                                                     */
/*                                                         ___                                                                       */
/*                                            2.A.ln(1 + \/ N )                                                                      */
/*                                                                                                                                   */
/*                  (le facteur 2 au denominateur compense le fait                                                                   */
/*                  qu'habituellement la constante 'f' vaut 2...)                                                                    */
/*                  avec A=2 (ou 1), suivant que les paires {S(i),S(j)}                                                              */
/*                  et {S(j),S(i)} sont considerees comme identiques (A=2)                                                           */
/*                  (ce qui est le cas dans l'implementation suivante...)                                                            */
/*                  ou differentes (A=1) ; le parametre 'N' donne le nombre                                                          */
/*                  d'etats du spin (en general N=2). On notera au passage                                                           */
/*                  qu'avec des spins {-1,+1}, la temperature critique est                                                           */
/*                  a diviser par (1/2)x(1/2). Enfin, la formule donnant 'Tc'                                                        */
/*                  est demontree pour le cas N=2 et conjecturee en ce qui                                                           */
/*                  concerne les cas N>2. Cette valeur theorique de 'Tc'                                                             */
/*                  correspond a un reseau infini ; pour les reseaux finis                                                           */
/*                  (ce qui est evidemment le cas dans ces simulations),                                                             */
/*                  la valeur de 'Tc' est inferieure...                                                                              */
/*                                                                                                                                   */
/*                    Il s'agit d'un systeme auto-organise, ainsi qu'il                                                              */
/*                  possible de le voir dans les simulations.                                                                        */
/*                                                                                                                                   */
/*                    Appelons "noyau" (ou "voisinage") la matrice                                                                   */
/*                  3x3 definie comme suit :                                                                                         */
/*                                                                                                                                   */
/*                                       -------                                                                                     */
/*                                      | 0 1 0 |                                                                                    */
/*                                      | 1 0 1 |                                                                                    */
/*                                      | 0 1 0 |                                                                                    */
/*                                       -------                                                                                     */
/*                                                                                                                                   */
/*                  et qui sert a ponderer les spins des (3x3)-1=8 points                                                            */
/*                  voisins d'un point donne (represente par l'element                                                               */
/*                  central de cette matrice). La configuration                                                                      */
/*                  ci-dessus correspond effectivement a la recherche                                                                */
/*                  des 4 premiers voisins. Il est alors possible de                                                                 */
/*                  generaliser cela et de definir ainsi des noyaux                                                                  */
/*                  de dimensions quelconques et contenant des valeurs                                                               */
/*                  arbitraires. Une application de cela est la generation                                                           */
/*                  de certains types de textures bidimensionnelles.                                                                 */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*************************************************************************************************************************************/


(Nota : les lignes d'explications qui précédent sont des commentaires extraits des programmes ayant été utilisés pour calculer les images correspondantes. Ce programme en est un exemple parmi des centaines.)


Copyright (c) Jean-François Colonna, 2001-2014.
Copyright (c) France Telecom R&D and CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2001-2014.