компьютерщики – особая категория химиков, нашедшая свою среду обитания между доской в аудитории и суперкомпьютером. Эти странные существа чувствуют себя на месте, вводя данные в компьютер, вместо того чтобы рассуждать над колбой с какой-то гадостью или аппаратом, отказывающимся работать.
Но оставим иронию: компьютерное моделирование служит основным инструментом не только для фундаментальных исследований, что позволяет предвидеть свойства веществ до их синтеза, понять механизмы реакций, которые сложно проверить экспериментальным путем или симулировать реакции в экзотических условиях – например, в космосе, – но и в фармацевтических изысканиях: симуляции позволяют, не входя в лабораторию, предсказать вещества, обладающие нужными свойствами, необходимыми для взаимодействия с биологической целью.
Это очень важная и деликатная работа, позволяющая исследованиям двигаться вперед и быстрее, и более целенаправленно. Понять всю сложность химика, специалиста по компьютерному моделированию, непросто, поскольку работа в мире молекул предполагает взаимодействия на уровне квантовой механики и использование крайне сложного математического аппарата. Но я все равно приглашаю вас за собой, поскольку это того стоит. Погружаясь в бесконечно малый мир, мы вынуждены оставить классическую механику – то есть область физики, изучающую макроскопические объекты (очень медленные по сравнению со скоростью света) снаружи, – и взять на вооружение механику квантовую, занимающуюся как раз физикой микроскопических частиц, которая, в силу невероятных их странностей, гораздо сложнее и труднее.
Основы квантовой механики стали известны еще в первой половине ХХ века, и мы можем сказать, что законы, управляющие большей частью физического мира и практически всем химическим, были сформулированы уже около семидесяти лет назад. Еще знаменитый Поль Дирак, один из отцов современной физики, в 1929 году писал: «Основные физические законы, необходимые для математической теории значительной части физики и всей химии, полностью известны, и трудность заключаются лишь в том, что правильное описание этих законов выражается уравнениями, слишком сложными, чтобы быть решаемыми. Поэтому желательно разработать приближенные методы применения квантовой механики на практике, которые бы позволили объяснить основные особенности сложного мира атомов без слишком трудоемких вычислений».
Цель современных исследований в области теоретической химии сегодня – не столько обнаружение новых законов, сколько поиск новых способов применения уже известных законов ко все более сложным системам. Несмотря на огромную вычислительную мощность современных суперкомпьютеров, совершенно невозможно учесть все параметры и решить все уравнения, необходимые для моделирования молекулярной системы, в которой действуют законы квантовой механики. Даже самые простые, на первый взгляд, системы, образованные всего лишь горсткой частиц, на самом деле – не поддающийся решению математический кошмар. Именно в этой ситуации в игру вступают компьютеры, и компьютерные симуляции позволяют обойти эти сложности путем использования техник, позволяющих получить приблизительные решения ранее не разрешимых задач. Чтобы вы смогли лучше себе представить, о чем я рассказываю, я загадаю вам математическую загадку.
Представим себе, что мы решаем уравнение x·(3+x) = 27, и нам надо найти число, которое, умноженное на сумму самого себя и трех, давало в результате 27.
Читатели, которые разбираются в математике, не увидят особых трудностей: это банальное уравнение второго порядка, и существует специальная техника решения подобных уравнений. Точный ответ – 3,9083269 и десятичные доли до бесконечности…
Однако если вы не сильны в математике, придется вам использовать более хитрый механизм: действовать наугад. Можно заменять х случайными числами: попробуем провести расчеты и постепенно приблизиться к решению. Например, можем начать с единицы и подставлять числа по мере увеличения:
Почти сразу мы поймем, что правильный ответ находится где-то между тремя и четырьмя. Попробуем подставить несколько чисел между тремя и четырьмя:
Ну вот, теперь мы знаем, что решение находится где-то между 4 и 3,9. Продолжим:
Теперь мы знаем, что решение находится в диапазоне между 3,90 и 3,91. Мы можем продолжать эти действия до бесконечности, пока точность решения нас не удовлетворит. Возможно, что в некоторых ситуациях нам вполне достаточно точности до одной десятой и ответ 3,9 вполне приемлем; в то время как для других ситуаций понадобится точность три-четыре, а может, и десять цифр после запятой. Основной вывод состоит в том, что, даже не зная, как решаются квадратные уравнения, совершив только четыре операции, мы смогли найти удовлетворительное решение. И не только: мы использовали механическую процедуру подбора, которая не потребовала ни фантазии, ни творческих подходов и замечательно годится для превращения в рабочий алгоритм для компьютера. Достаточно задать значения х, последовательно выполнить операции и повторять снова и снова, пока не будет получена требуемая точность. Очевидно, что эта техника не представляет большого практического интереса, но дает вам представление о рассуждениях, которые мы используем для систем, описываемых уравнениями, слишком сложными для математического решения.
Исследования новых лекарств и их взаимодействия с белками человеческого тела, изучение трехмерной структуры белков или других сложных молекул, а также работа по передовым направлениям, таким как искусственный фотосинтез или альтернативные источники энергии – это все примеры задач, требующих применения сложного компьютерного моделирования.
Такие процессы, как перенос электронов между молекулами белков при синтезе хлорофилла или открытие или закрытие клеточных каналов, на самом деле слишком сложны и быстры, чтобы можно было их изучить непосредственно в лаборатории с пробирками и перегонным кубом. Единственным доступным способом остается моделирование на компьютере различных гипотез и проверка, какой из предложенных механизмов является самым выгодным с энергетической точки зрения.
Запомните: природа очень скаредна на энергию. Самым вероятным процессом будет тот, который требует наименьших расходов энергии.
Проблема состоит в том, что невозможно решить уравнения, описывающие поведение одного-единственного атома углерода, – представьте, каково это пытаться работать с молекулой протеина, в которой их тысяча.
Самой подходящей стратегией для этого случая служит максимальное упрощение: есть ли в системе параметры, которые можно проигнорировать? Что-то не очень важное, что можно опустить и что осложняет мне жизнь?
Представьте, что вы хотите поразить пулей мишень, находящуюся в двух метрах перед вами. Нужно ли вычислять влияние гравитации и сопротивления воздуха на пулю? Очевидно, нет, потому что пуля будет находиться в воздухе долю секунды, и единственным ключевым фактором будет мишень.
Но спросите о