Выбрать главу

Но даже для маленьких молекул DFT преподносит сюрпризы. Дело в том, что химическая точность — это не когда «похоже», а когда «попадание в яблочко». Энергия активации реакции — горка, на которую должен взобраться реагент, чтобы превратиться в продукт, — определяет скорость реакции через уравнение Аррениуса. В этом уравнении энергия активации — в показателе экспоненты. Это значит: ошибка всего в 5 ккал/моль даёт ошибку в скорости реакции на порядки! Допустим, DFT предсказала энергию активации 20 ккал/моль. Ты радостно рассчитываешь выход за час — 90%. Но реальная энергия активации — 25 ккал/моль, то есть на 5 ккал/моль выше. При комнатной температуре это различие (всего-то 20% от числа) означает, что скорость реакции упадёт не на 20%, а примерно в 4500 раз. Ты ждёшь час, а ждать придётся полгода. Или наоборот: DFT обещает, что реакция еле ползёт, а происходит взрыв, потому что энергия оказалась на 5 ккал/моль ниже. Вот почему ошибка в 5 ккал/моль — это вовсе не мелочь. Химия не прощает таких приближений.

И вот тут на сцену выходят ML-потенциалы — гибридные модели, которые решают проблему без ручной подгонки. Вместо того чтобы каждый раз заново решать уравнение Шрёдингера, они учатся на готовых данных: либо на результатах очень точных (и очень дорогих) квантовых расчётов для маленьких систем, либо сразу на экспериментальных величинах. Нейросеть запоминает: «Если окружение у атома углерода такое-то, его энергия будет примерно такой-то». И когда ей показывают новую, большую молекулу, она не считает всё с нуля, а собирает ответ из выученных кусочков.

Итак, главный вывод: честная физика — это прекрасно, но непрактично. DFT научила нас многому, дала язык для обсуждения электронных эффектов, помогла объяснить тысячи реакций. Но она не стала тем универсальным предсказателем, о котором мечтали в 1990-е. Потому что химия слишком сложна, слишком многомерна, слишком нелинейна, чтобы её можно было «просто посчитать». Сегодня мы перестаём спрашивать: «Какова точная волновая функция этой молекулы?» Мы спрашиваем: «На какие из миллиона известных реакций похожа эта, и какой у них был исход?» Это не значит, что мы отказались от физики. Мы просто перестали делать вид, что можем вывести всю химию из уравнения Шрёдингера, и начали использовать пресловутую «химическую интуицию», только теперь носитель интуиции — не человек, а нейросеть, обученная на огромном массиве химического знания. А пока попробуй прикоснуться к DFT и понять, почему мы так долго на неё надеялись и почему всё же пошли дальше.

Попробуй сам

Открой любой бесплатный онлайн-калькулятор квантовой химии (например, WebMO Demo) и попробуй посчитать энергию молекулы воды. Просто воды, H₂O. Сначала с одним базисом (скажем, STO-3G), потом с другим (6-31G). Сравни результаты — они будут разными. А теперь подумай: ты ведь не менял саму молекулу, так почему ответ плывёт? Поздравляю, ты только что прикоснулся к той самой проблеме, из-за которой DFT-расчёты называли «подгоночными». А теперь нарисуй аспирин и запусти оптимизацию геометрии с самым простым DFT-методом, например B3LYP/3-21G. Засеки время. А теперь сделай мысленное упражнение: представь, что тебе нужно посчитать поведение не одной молекулы, а ста тысяч похожих — например, ты ищешь новое лекарство и перебираешь все возможные варианты. Умножь свои минуты на сто тысяч. Получились месяцы. Именно поэтому DFT-расчёт, как бы ни был он прекрасен в теории, не тянет на роль массового экспресс-предсказателя.

Теперь зайди в любой чат-бот и спроси: «Почему DFT ошибается в энергии активации на 5 ккал/моль?» Сравни ответ с тем, что ты только что прочитал. Если бот начнёт сыпать формулами, скажи: «Объясни проще, будто я школьник, который только что провёл свой первый DFT-расчёт». Заодно потренируешь критическое мышление: вдруг бот слукавит? Ты же теперь знаешь, что 5 ккал/моль — это ошибка не в проценты, а в сотни раз по скорости. Если бот этого не упомянул — ты только что нашёл его слабое место.

Ну и для тех, кто уже подружился с Python: скачай датасет растворимости ESOL (он в открытом доступе), переведи молекулы в молекулярные фингерпринты с помощью библиотеки RDKit и обучи простенький Random Forest предсказывать растворимость в воде. Это займёт полчаса, но ты в миниатюре повторишь именно то, о чём мы говорили: модель учится на готовых экспериментальных данных и предсказывает свойство за секунды, не решая уравнение Шрёдингера. DFT считала бы каждую молекулу час, а твоя модель — меньше секунды. Почувствуй разницу. Именно так машинное обучение заменяет «честную физику» там, где скорость важнее безупречной точности.