Раскалённый газ под давлением в миллионы атмосфер — как в центре Юпитера или внутри лазерной мишени — ведёт себя хитро. Электроны срываются с атомов и образуют общее облако, которое непрерывно перестраивается. Чтобы рассчитать такое состояние на компьютере, обычно решают громоздкие уравнения для каждого электрона. Авторы новой программы Archē пошли другим путём: они работают не с отдельными частицами, а с усреднённой плотностью этого облака.
Главная хитрость — в повторном использовании. Когда пекут блины один за другим, не нужно каждый раз заново угадывать, как растечётся тесто: достаточно взглянуть на предыдущий блин и чуть подправить форму. Так же поступает и Archē: она берёт распределение электронов с прошлого момента и переносит его на новое положение ядер. Это ускоряет расчёт в несколько раз. Второй трюк — смешивать старую и новую плотности в пропорции, которая даёт самую устойчивую картину.
Код проверили на алюминии — металле, знакомом по кухонной фольге, но здесь раскалённом до состояния звёздных недр. Результаты совпали с куда более сложными вычислениями, где следят за каждым электроном. Пришлось добавить лишь небольшую поправку, связанную с тем, как электроны взаимодействуют с остовом атома. Итоговая программа работает на обычных видеокартах и справляется с задачей в десятки раз быстрее, чем сотни процессоров. Чем горячее плазма, тем легче считать — в отличие от традиционных методов, которые от температуры только тормозятся.
Плазма — самое распространённое состояние вещества во Вселенной: из неё состоят звёзды, межзвёздный газ и даже молния.
В романе «Солярис» Станислава Лема океан состоял из плазмы, способной к сложному поведению — подобные коды могли бы моделировать его динамику.