Le premier grand calcul
La première simulation à grande échelle de Richard Hamming : Los Alamos, 1945. L'objectif — concevoir une bombe atomique fonctionnelle.
Le problème qui a rendu la simulation nécessaire : aucune expérience à petite échelle n'existe. La masse critique est binaire. Soit la matière fissile dépasse la masse critique & une réaction en chaîne se propage, soit non. Vous ne pouvez pas mener une version réduite.
Le design d'implosion sphérique
Un design utilisait la symétrie sphérique — une implosion. Les ingénieurs ont divisé le matériau en plusieurs coquilles concentriques. Pour chaque coquille, ils ont écrit des équations pour les forces sur les deux faces, plus l'équation d'état reliant la pression à la densité.
Le temps a été discrétisé en intervalles de 10⁻⁸ secondes — appelés « shakes » (d'une expression anglaise signifiant littéralement « une secousse de la queue d'un agneau »). À chaque shake, le calcul avançait : où chaque coquille se déplace-t-elle ? Quelles forces agissent sur elle ?
Trois conditions qui imposent la simulation
Hamming a identifié des situations où la simulation remplace l'expérience physique :
1. Les expériences impossibles — la masse critique ne peut pas être testée à petite échelle
2. Les expériences dangereuses — vous ne pouvez pas faire exploser une bombe pour obtenir des données d'étalonnage
3. Trop cher ou trop lent — les obstacles atmosphériques, la prévision météorologique, les trajectoires de missiles
L'objectif : produire des résultats équivalents, pas répliquer exactement le processus physique. La simulation n'a pas besoin de correspondre à la réalité atome par atome. Elle doit produire les mêmes résultats observables avec la précision que le design requiert.
Résultats équivalents
L'observation clé de Hamming à Los Alamos : les données d'équation d'état étaient inexactes. Les relations pression-densité provenaient de laboratoires haute pression, d'estimations de tremblements de terre, de modèles de noyau stellaire — tous avec une incertitude significative.
Les ingénieurs ont lu ces courbes à trois décimales, puis les ont tabulées à cinq chiffres. Des données imprécises en entrée, apparemment.
Pourtant, le design de la bombe a fonctionné.
Pourquoi ? Parce que le calcul prenait des différences secondes des valeurs sur les coquilles adjacentes. Toute erreur locale dans l'équation d'état se moyennait au cours de l'historique d'une coquille alors qu'elle traversait la courbe. Ce qui comptait : la courbure de l'équation d'état, & seulement en moyenne.
La rétroaction dans le calcul compensait les données d'entrée inexactes.
Le noyau répétitif
Hamming a identifié une caractéristique structurelle universelle des simulations à grande échelle : une boucle interne hautement répétitive.
À Los Alamos : les mêmes équations de force s'exécutaient pour chaque coquille à chaque pas de temps. Le code pour une coquille s'exécutait des milliers de fois. Sans cette structure répétitive, le coût de programmation aurait été prohibitif.
Ce principe se généralise : la prévision météorologique divise l'atmosphère en blocs ; les mêmes équations de physique mettent à jour chaque bloc. Les simulations de missiles parcourent les mêmes équations de trajectoire à chaque incrément de temps. La conception de transistors calcule les mêmes équations de champ à chaque point de grille spatiale.
Le conseil de Hamming : recherchez tôt les parties répétitives de toute simulation proposée. Formulez la simulation sous une forme qui exploite la répétition. Une simulation sans une boucle interne serrée est probablement mal structurée.
La connaissance d'expert comme préalable non négociable
Hamming revint à plusieurs reprises à une règle qu'il considérait comme non négociable : seul un expert du domaine peut savoir ce qui compte.
Un expert en simulation peut structurer le code, choisir des méthodes numériques, déboguer la boucle répétitive. Mais seul quelqu'un qui maîtrise la physique, la chimie ou l'ingénierie du domaine peut déterminer :
- Quels effets doivent apparaître dans le modèle
- Lesquels peuvent être omis sans danger
- Si un résultat inhabituel signale une vérité physique ou une erreur de modélisation
À Los Alamos, Hamming était l'expert en informatique. Les physiciens étaient les experts du domaine. Aucun ne pouvait se substituer à l'autre.
Le jargon comme barrière & outil
L'une des règles opérationnelles les plus fortes de Hamming : apprenez le jargon du domaine que vous simulez.
Son histoire : un problème d'interception de la marine avec 28 équations différentielles simultanées. Il a insisté pour que le proposant — un ami physicien — parcoure chaque ligne du code machine binaire avec lui avant que le calcul s'exécute.
Au milieu de la présentation, le physicien a dit : « Dick, c'est la limitation d'aileron, pas la limitation de tension. » Le même symbole mathématique, la même équation formelle — mais deux interprétations physiques différentes, donnant des résultats sensiblement différents.
La leçon : les deux parties comprenaient les mathématiques. Aucun n'avait d'échec de communication au sens habituel. Mais la signification physique de l'opération limite était sous-déterminée par les équations seules.
Sans la présentation, la simulation aurait fonctionné avec la mauvaise interprétation. Pas d'erreur d'exécution. Pas de résultats manifestement mauvais. Juste des réponses incorrectes à un problème important.
Problèmes stables vs instables
Hamming a tracé une ligne nette entre les problèmes que la simulation gère bien & les problèmes où la simulation est presque impossible.
La bombe atomique : les petites différences dans les trajectoires des coquilles en cours de route ne se sont pas beaucoup affectées la puissance finale. La simulation était stable — les erreurs aux étapes intermédiaires ne se sont pas amplifiées.
La prévision météorologique : le contraire. Une petite perturbation — « qu'un papillon batte des ailes au Japon » — peut, en principe, déterminer si une tempête frappe le continent. La sensibilité aux conditions initiales rend la prévision météorologique jour après jour peu fiable au-delà d'horizons courts.
Les deux problèmes utilisent la même structure mathématique : discrétiser l'espace en cellules, discrétiser le temps en étapes, avancer. La différence réside dans le champ directionnel — si les petits écarts par rapport à une trajectoire croissent (instables) ou diminuent (stables) au fil du temps.
La météo montre les deux : instabilité à court terme (chaos jour après jour), stabilité à long terme (les saisons suivent leur cours), & instabilité très long terme (ères glaciaires).
La règle de Hamming : avant de commencer une simulation, examinez si le problème est fondamentalement stable ou instable. S'il est instable, déterminez si l'instabilité est fondamentale à la réponse dont vous avez besoin ou un artefact de l'échelle ou des conditions aux limites. Ne découvrez pas cela après avoir investi des mois de travail.
Simplement d'abord, complet plus tard
La méthode préférée de Hamming pour aborder une nouvelle simulation :
1. Commencez simplement — incluez seulement les effets principaux. Ayez raison sur le comportement dominant.
2. Obtenez des aperçus rapidement — une simulation simple révèle la structure du problème avant d'investir dans tous les détails.
3. Évoluez vers la complétude — ajoutez des effets secondaires progressivement, en vérifiant chaque addition par rapport à la base de référence plus simple.
Il a illustré cela avec le projet de missile Nike. Ses simulations précoces utilisaient un modèle d'atmosphère exponentielle simple. Les simulations ultérieures ont ajouté des profils de densité dépendant de l'altitude, des termes de vent transversal, & une traînée non linéaire. Mais les aperçus précoces — le lancement vertical réduit la traînée dans l'atmosphère inférieure dense ; les plus grandes ailes coûtent plus de vitesse qu'elles ne gagnent en manœuvrabilité en fin de phase — provenaient du modèle simple.
Attention : à la fin, figez le design en utilisant la simulation complète. La simulation simple gagne des aperçus ; la simulation complète gagne l'engagement.