Оригинал взят у
mntc в
Моделирование заряженных частиц в Algodoo. Часть 1: электрические взаимодействия. В этой статье подробно описан процесс создания заряженных частиц в
Algodoo и разнообразные опыты с ними, включая самосборку двухмерных, но весьма реалистичных атомов, молекул и кристаллов.
Готовую модель частиц скачать можно
тут.
Создание частиц.
Создадим новую сцену. Отключим гравитацию и сопротивление воздуха. Включим сетку и выберем самое большое увеличение камеры, чтобы частицы получились достаточно мелкими.
Выберем (Ctrl+A) и удалим (Del) всё, в том числе ограничители пространства, и поставим свои. Теперь настроим их. Установим им пересекаться со всеми слоями кроме шести последних (в этих слоях будут располагаться электрические и магнитные составляющие).
В свойствах материала ограничителей трение поставим на ноль, а упругость на максимум.
Настроим внешний вид системы - уберем облака и границы между ограничителями, настроим по вкусу цвета. Наконец, создадим в узлах сетки четыре одинаковых круга и раскрасим так как на моем рисунке. Выделим все круги и поставим им единичную плотность, нулевое трение и максимальную упругость.
Настало время пояснить замысел создания наших многослойных частиц и расставить круги по слоям.
В слоях ABCD наша будущая частица будет самым обыкновенным физическим телом. За это отвечает первый (желтый) круг, пересекающийся только с этими слоями. Внимательно установим соответствующие галочки для этого круга в меню "Столкновения".
Слой E (зеленый круг) отвечает за притяжение вообще всех заряженных частиц друг ко другу, независимо от заряда. Его поставим пересекаться только со слоем E. Также в свойствах материала поставим ему притяжение с силой 1.0, зависимость квадратичная (как и везде в данной статье).
Слои F и G отвечают за отталкивание одноименно заряженных частиц. В них (и только в них) расположим соответственно красный (только в F) и синий (только в G) круг, символизирующие положительный и отрицательный заряды. Обоим им в свойствах материала поставим притяжение -1.0 (набрав с клавиатуры).
Слои H,I,J мы зарезервировали для последующего добавления магнитных явлений.
Теперь сделаем копии желтого и зеленого круга и расположим наши полученные 6 частиц в узлах сетки следующим образом:
Верхний ряд предназначен для сборки положительной частицы, нижний - отрицательной.
Чтобы минимизировать вычислительную нагрузку на программу, перед сборкой частиц сделаем еще кое-что. А именно: в меню "Внешний вид" уберем у всех кругов галочку с параметра "Видимый сектор круга":
А у желтых и зеленых - поставим еще и нулевую прозрачность:
Получится вот такое:
Теперь соберем слои в две стопки: желтый, на него зеленый, а на него закрашенный. Получится так:
Выделим обе частицы (не кликом, а обведением рамкой, чтобы выбрать все слои) и уберем опцию "Показывать границы". Выделяя рамкой при включенной сетке старайтесь захватить постое пространство вокруг частицы, а то какие-то слои могут оказаться не выделенными.
Теперь нижние слои совершенно невидимы. Выделим верхнюю частицу (снова рамкой) и выберем в меню "Действия" команду "Склеить вместе":
Повторим то же самое для нижней частицы. Если это сделать с ними не по очереди а сразу выделяя обе частицы то они окажутся склеены не только по слоям, но и между собой, а это нам не нужно.
Чтобы сделать частицы совсем монолитными, выделим каждую из них (опять рамкой и опять по очереди) и в меню "Выбранное" нажмем на пункт "Сгруппировать". Теперь при клике в частицу будет выделяться вся стопка а не только верхний слой.
Частицы готовы. Сохраним их и приступим к экспериментам!
Опыты с частицами
Запустим симуляцию - частицы притянутся и начнут прыгать, как мячики отталкиваясь друг от друга. Оно и не удивительно - ведь им присуща 100% упругость.
Скопируем обе частицы чтобы их получилось четыре штуки. Запустим симуляцию - одноименные заряды будут отталкиваться, в полном соответствии с нашим планом. В итоге частицы разобьются на два "атома", состоящих из положительного и отрицательного заряда, вращающихся друг вокруг друга. Атомы иногда обмениваются этими зарядами между собой.
Если теперь выделить все частицы и немного уменьшить упругость, скажем, до 0.75 то картина изменится:
Мы получили колеблющийся кристалл, который от ударов об стенки нашей камеры постепенно теряет свою энергию и успокаивается.
Можно сделать вид частиц более "реалистичным": установим им размытие краев:
Теперь все выглядит очень "квантово":
Раздвинем границы камеры, накопируем туда в случайном порядке частиц, соблюдая равное количество + и - зарядов - и довольно быстро получим аккуратный кристалл:
Если удалить у него в середине одну из частиц другие быстро заполнят его место и кристалл снова станет бездефектным.
Теперь снова оставим две частицы и уменьшим размер одной из них:
Накопируем таких пар побольше и снова запустим симуляцию:
Получился явный недостаток отрицательного заряда - положительные частицы собрались по краям, а удерживаются между собой при помощи большого количества мелких частиц. Дело в том, что Algodoo автоматически корректирует массу (а от массы "электрических" слоев частицы зависит ) исходя из размера объекта. Поэтому мы можем поступить далее двояким образом: вручную увеличить массу электрического слоя отрицательной частицы или просто увеличить число таких частиц в системе.
Сначала сделаем то что проще - добавим "электронов" и получим модель.. ээ.. кристалла из атомов с многозарядными ядрами?
Вероятно, его неправильная структура обусловлена нецелым отношением "зарядов" частиц.
Теперь попробуем дать "электрончику" равный заряд с "ядром". Для этого оставим их по одной штуке, и повторим все в обратном порядке - включим границы, разгруппируем, освободим, разложим по слоям, посмотрим массу красного шара и скопируем ее синему (при этом плотность синего изменится автоматически), а затем снова все соберем.
Накопируем таких частиц побольше, и...
Ой! Почему-то вместо кристалла у нас получились какие-то отталкивающиеся атомы! А, ну правильно, мы же скорректировали массу притягивающейся компоненты, а отталкивающейся (зеленой) - забыли. Вернемся и сделаем это.
Вот теперь получился кристалл, причем из нескольких зерен с границами между ними. Видно, что отдельно начавшие независимо формироваться зерна сохранили разные направления кристаллической решетки.
Тут можно много экспериментировать. получая разные решетки при разных значениях зарядов и радиусов, а мы вернемся к нашим "стандартным" частицам.
Атомная физика
Поместим в камеру много отрицательных частиц и одну положительную. Поставим всем частицам упругость 0,75. Отрицательные, естественно разбегутся по краям, а вокруг положительной их будет набираться не более трех - при подлете дополнительных, предыдущие улетучиваются. Видимо, здесь играет роль отталкивание отрицательных частиц друг от друга.
Увеличим камеру, число "электронов" и размер положительной частицы. Образуется оболочка из шести "электронов":
Таковые частицы, кстати, образуют красивую упорядоченную решетку:
При увеличении размера частицы масса растет быстрее, чем периметр, поэтому можно надеяться увидеть формирование второй электронной оболочки простым увеличением размера частицы (а можно и регулировкой плотности сразу всех слоев правым кликом мыши - электрические свойства нашей частицы пропорциональны плотности соответствующих слоев).
Так и вышло. Наличие вокруг свободных "электронов" свидетельствует о заполненности оболочки до максимума:
А вот "атом" с заполненной второй оболочкой:
Химия
Интересно попробовать взаимодействие таких "атомов":
Ого! Они образовали связь и некоторые "электроны" заняли по-видимому, весьма энергетически выгодное место между атомами, а некоторые оказались оттеснены на невыгодное. Суммарно получился все-таки, видимо, выигрыш в потенциальной энергии и поэтому "молекула" стабильна. Все как в химии.
То есть вместо "стандартных" энергетических уровней, присутствующих в изолированном атоме, появились другие, более и менее выгодные (с точки зрения минимизации потенциальной энергии) и оказались заняты "электронами". Все как в настоящей химии!
Для более глобальных химических опытов сделаем атомы поменьше из увеличенного красного круга и четырех стандартных синих:
Они довольно инертны и при столкновении отталкиваются. Если их принудительно соединить между собой, то при упругости равной 1 они отвалятся. Но если "охлаждать систему", то есть поставить упругость поменьше, то кинетическая энергия отводится вон и получается стабильная "двухатомная молекула"!
Таким образом, мы видим, что есть температурный предел выше которого определенная молекула разваливается на атомы, а ниже - имеет тенденцию быть устойчивой. Это, конечно, есть и в химической реальности.
Если ионизировать нашу молекулу - оторвать электрон и кинуть в пространство, то она будет все еще устойчива, но при встрече с электроном поглотит его и вернет первоначальную конфигурацию.
Отрицательным ионом наша молекула становиться не желает - она отгоняет лишние электроны, летящие извне.
А вот отдельный атом может устойчиво нести на себе лишний электрон, то есть быть отрицательным ионом. Хотя, так просто электрону к нему не приблизиться, нужны специальные ухищрения чтобы дать ему лишний электрон. В химии такое бывает.
Посмотрим на взаимодействие положительно ионизированного атома с отрицательным:
Они притягиваются очень слабо (вероятно, благодаря экранированию положительного заряда "ядра" "электронами") , но при встрече, конечно, образуют все ту же молекулу.
Вообще, наш атом способен образовывать сложные молекулы, вполне мирно сосуществующие с отдельными такими же атомами при малых скоростях и присоединяющие их при больших скоростях столкновений. То есть, здесь опять возникает понятие энергетического барьера химической реакции.
Наши атомы по-видимому стремятся приобрести устойчивую шестиэлектронную конфигурацию своей первой и единственной электронной оболочки.
Теперь добавим "атомы кислорода" - наши стандартные красные частицы с электронами (они стабильны с двумя электронами). Для отличия от хм.. "атомов углерода" сделаем их оранжевыми.
Мы видим, что пара атомов "кислорода" образовали двухатомную молекулу. С великим трудом и аккуратностью удалось собрать из них трехатомную молекулу (типа "озон"), чуть что - выстреливающую электрон прочь.
"Атомарный углерод" реагирует с атомарным "кислородом" с образованием новой молекулы..
В общем, тут вы сами можете насоздавать атомов и химичить. В моем случае, параметры частиц, видимо, слишком сдвинуты в сторону образования устойчивых молекул, а можно, наверное, подобрать и сбалансировать их так, чтобы получилась целая таблица 2D-Менделеева - с инертными, окислительными, восстановительными и прочими химическими элементами.
Физика твердого тела
Изучим физические свойства наших волшебных кристаллов. Например, как они ведут себя под давлением. Будем создавать давление перемещением ограничителя пространства. Оказывается, до некоторого предела давление благотворно влияет на материал - упорядочивает и плющит его, сокрушая торчащие выступы. А начиная с некоторой величины, частицам становится уже не до зарядов и они принимают плотнейшую геометрическую упаковку, образуя из зарядов причудливые узоры:
Теперь проверим наш материал на жесткость и прочность. Создадим две подставки. Положим образец. Включим гравитацию, только не на полную силу, а на 0,005:
Будем потихоньку повышать гравитацию. 0.02 он еще выдерживает. При этом пружинит :) А 0.05 разрушает образец путем растрескивания:
Что бы еще сделать? Будем бомбардировать образец ускоренными ионами! Результаты опытов примерно такие же, как и в реальном мире:
- ион со скоростью 0,1 прилипает :)
- ион со скоростью 0,2 прилипает и расшатывает решетку
- ион со скоростью 0,3 выбивает положительный ион, рекомбинируется с ним (т.е. формирует нейтральный атом) и вместе они улетают
- ион со скоростью 0,4 упруго отскочил, создав в решетке волну
- ион со скоростью 0,5 разрушает решетку или создает трещину
- ионы еще более высоких скоростей распыляют вещество
Для регулировки начальной скорости иона, я в меню правой кнопки мыши в пункте "Движение" менял вертикальную составляющую скорости.
В зависимости от того, в каких слоях частиц стоят галочки, материал по разному взаимодействует с водой. Если поставить, например, их в зеленом (притягивающем) слое, вода буквально набрасывается на кристалл и растворяет его.
Теперь, попробуем пропустить через кристалл электрический ток. Для этого перенесем немного отрицательных частиц слева направо. Никакого тока не потечет. Оно и неудивительно - мы ведь имеем дело с ионным кристаллом типа хлорида натрия, а они, как известно, диэлектрики. Если только не находятся в расплавленном состоянии. Если расплавить кристалл, колотя его почем зря ограничителями пространства, то он, конечно, восстановит равновесное распределение зарядов (см нижний кадр).
Диэлектрик, это, конечно, хорошо, но как получит проводники для опытов по электронике? Попробуем снова подгонять размер красной частицы для получения материалов разной структуры.
На следующем рисунке слева и справа показано прохождение тока через материалы разной структуры.
Ток в принципе идет, но тем лучше, чем больше стоит значение упругости частиц и чем больше их теребить. То есть мы имеем отрицательный температурный коэффициент сопротивления, а значит это в лучшем случае полупроводники, но никак не металлы, которые должны по идее иметь наилучшую проводимость в холодном состоянии.
Большие красные частицы моделируют у нас тут ядро со внутренними электронными оболочками. Может быть, хороший металл получится если сделать ядро маленьким и тяжелым, а оболочки пусть сами формируются как хотят?
Я попробовал создавать тяжелые и сильно заряженные ядра и легкие большие электроны, но это не привело к более реалистичным моделям вещества, а к тому что ядра крепко застряли в плотнейшей упаковке электронов:
Возможно, тут надо действовать как-то иначе, а может быть, в двухмерном пространстве попросту негде двигаться электронам проводимости, кроме как в совершенном вакууме или при далеко друг от друга закрепленных в пространстве ядрах. А может быть электроны и должны формировать решетки? Все это представляет большой простор для эксперимента, а я, пожалуй, на этом закончу первую часть этой статьи.
Продолжение следует.