LINUX.ORG.RU

Моделирование броуновского движения в гравитационном поле

 , , , ,


0

1

Я тут написал примитивную программу для моделирования броуновского движения, только на целочисленной арифметике, и частица там может ходить по 8 направлениям, как король в шахматах. Т.е. каждый квант времени частица меняет свою координату одним из способов:

[?][?][?]
[?][*][?]
[?][?][?]
и вероятность каждого шага равна 1/8. Если при попытке пойти куда-то частица упирается в стенку, она остается неподвижной на этом шаге симуляции. Гравитация симулируется так: каждый N-тый шаг частица идет на клетку вниз.
[ ][ ][ ]
[ ][*][ ]
[ ][.][ ]
Если внизу есть пол - остается неподвижной,

Загрузил я в этот симулятор шахматного короля такую вот «карту» https://i.imgur.com/u9nnDCS.png c начальными координатами x=3, y=250 (это получается левый нижний угол):

0
 +-----> (x)
 |
 |
 |
 V

(y)
и потом попробовал посмотреть на то, где обычно оказывается координата частицы после длительной симуляции. И вот получается такая картина https://i.imgur.com/NUXtBCo.png

Тут я вывел на график точки, где частица оказывается после такого-то количества шагов. Можно конечно еще какие-то тепловые карты построить, но и так вроде все ясно, вероятность нахождения частицы в нижних секциях этой «лесенки» оказывается ниже, чем в верхних. Если разобраться, получается так, что когда частица попадает в такую вот решетку, которая есть в тех секциях

[#][ ][#][?][#][ ][#]...
[#][ ][#][*][#][ ][#]...
[#][ ][#][?][#][ ][#]...
то идти она может только вверх и вниз, с вероятностью 1/8 вверх, и 1/8 вниз, 6/8 вероятность что она стоит на месте, но при этом гравитация ее толкает вниз, и получается так, что в этих решетках частица опускается быстрее, чем это происходит в пустом пространстве. А насколько это применимо к динамике движения реальных молекул газа или частиц в каких-нибудь коллоидах? Если сделать решетку из каких-нибудь нанотрубок достаточно большого диаметра, и в них залетают молекулы газа, они там тоже будут быстрее падать, чем без них?

Исходники программы могу выложить, если она кому-то интересна.

★★★★★

Последнее исправление: SZT (всего исправлений: 1)

У вас получилось что-то похожее на закон Бернулли.

6/8 вероятность что она стоит на месте

Только вот это не правильно, получается что в присутствии стенок частица теряет энергию.

thunar ★★★★★
()
Последнее исправление: thunar (всего исправлений: 2)
Ответ на: комментарий от thunar

А в каких программах это можно более точно промоделировать? Как скорректировать вероятности для случайного шага частицы, если слева и справа преграда?

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 1)
Ответ на: комментарий от SZT

Я пока не очень понимаю вашу постановку. Какую именно физику вы хотите смоделировать? Именно движение броуновских частиц в однородной газовой среде, или сам газ «в вакууме» состоящий из чатиц? Какой характерный размер частицы в сравнении с размером системы и длиной свободного пробега? По крайней мере, в тонкой трубке, размер которой сравним с эффективным размером частицы Kn~1 и это уже свободно-'молекулярный' режим и Броуна там нет.

Возможно, вы вообще хотите LBM? $cast AntonI.

Как скорректировать вероятности для случайного шага частицы, если слева и справа преграда?

В трубке единичного размера считаем, что она сразу переотражается от стенки, тогда в итоге вероятность 1/2 для двух оставшихся направлений.

thunar ★★★★★
()
Последнее исправление: thunar (всего исправлений: 1)
Ответ на: комментарий от thunar

Я пока не очень понимаю вашу постановку. Какую именно физику вы хотите смоделировать? Именно движение броуновских частиц в однородной газовой среде, или сам газ «в вакууме» состоящий из чатиц?

Ну допустим что есть одна тяжелая молекула или атом, типа гексафторид серы или какой-нибудь ксенон, остальные частицы газа это атомы гелия. Это всё находится в сильном гравитационном поле, и частицы летают по «лабиринтам», где есть такие вот тонкие трубки как на той картинке, и они по размеру сопоставимые с размерами той тяжелой частицы. Длина связи S-F в молекуле гексафторида серы - 156.4 пм., тогда допустим радиус вертикально уложенных между секциями нанотрубок будет 156.4 * 5 = 782 пм.

Надо узнать плотность вероятности нахождения тяжелой частицы при неких условиях, будет ли она быстрее падать внутри этих трубок, или нет?

В трубке единичного размера считаем, что она сразу переотражается от стенки, тогда в итоге вероятность 1/2 для двух оставшихся направлений.

Тогда получим обратный эффект — частица будет быстро покидать эту зону с трубками, и гравитация будет меньше срабатывать при такой симуляции. Это по-моему тоже неправильно.

SZT ★★★★★
() автор топика

Если при попытке пойти куда-то частица упирается в стенку, она остается неподвижной на этом шаге симуляции.

А если она упирается в стенку под углом? Почему она остаётся на месте, а не отражается под углом?

grem ★★★★★
()
Ответ на: комментарий от grem

А если она упирается в стенку под углом? Почему она остаётся на месте, а не отражается под углом?

Нипочему, я просто такие правила симуляции установил. Можно сделать более сложный набор условий, куда частица может сдвинуться, если в ее окрестностях находятся такие-то стенки. Но если такое правило добавить, на общую картину это не повлияет. В любом случае эта симуляция не претендует на какую-либо достоверность.

SZT ★★★★★
() автор топика

Да, можно еще это моделировать как движение частицы в куче соединенных между собой крестовин с перегородками: https://i.imgur.com/FPVYOiG.png

Тогда случайное движение частицы будет как https://en.wikipedia.org/wiki/Taxicab_geometry

[ ][?][ ]
[?][*][?]
[ ][?][ ]
И при таком сценарии тоже должен наблюдаться такой эффект, что частица будет быстрее падать, находясь в «трубчатых» секциях.

SZT ★★★★★
() автор топика
Ответ на: комментарий от SZT

И при таком сценарии тоже должен наблюдаться такой эффект, что частица будет быстрее падать, находясь в «трубчатых» секциях.

Тут я ошибся. Не должен. Случайное движение на 4 стороны с 1/2 вероятностью не меняет высоту(шаг влево или вправо), с 1/4 поднимает, с 1/4 падает, и в трубках (когда слева и справа препятствие) это будет работать в точности так же. А вот случайное движение на 8 сторон в открытом пространстве с 2/8 оставляет частицу неподвижной, с 3/8 поднимается и с 3/8 падает, если же добавить стенок, то вероятность что частица будет неподвижной 6/8, на поднятие и падение по 1/8.

SZT ★★★★★
() автор топика
Ответ на: комментарий от thunar

Не, LBM тут не поможет.

ТС сделал свой клеточный автомат с очень странной физикой. Что бы там физика стала хоть как то похожей на реальность надо сделать Монте-Карло (схема Метрополиса ЕМНИП).

Но IMHO гравитация тут очень слабое влияение будет оказывать. Вот если центробежную силу включить… могу ошибаться конечно.

AntonI ★★★★★
()
Ответ на: комментарий от AntonI

Если у ТС размер трубки сравним с размером частицы, то это вообще получается задача на молекулярную динамику, ну или динамику крупных частиц, если там фон из лёгкого газа.

thunar ★★★★★
()
Последнее исправление: thunar (всего исправлений: 1)
Ответ на: комментарий от thunar

Да. Но из Монте-Карло можно какие то оценки вытянуть…

AntonI ★★★★★
()

Если при попытке пойти куда-то частица упирается в стенку, она остается неподвижной на этом шаге симуляции.

Это почему?

tyamur ★★
()
Ответ на: комментарий от tyamur

А как надо? Как это согласовать с реальной физикой? В чем эту симуляцию делать? GROMACS может запатчить? Или есть готовые пакеты, где можно это можно промоделировать более точно?

SZT ★★★★★
() автор топика

Вот например адсорбция. Понятно что плотность вероятности нахождения молекулы газа в адсорбенте будет выше, чем вне его (при прочих равных). Если взять анизотропный адсорбент, вроде кучи нанотрубок, соединенных вертикально в секции, и в них сверху проваливаются молекулы газа, вероятность что такая молекула опять сверху вылетят - она выше или ниже вероятности без этих трубок (как если б на том месте было пустое пространство)? Или не влияет?

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 2)
Ответ на: комментарий от SZT

Зависит от температуры адсорбера, материала трубок, размера трубок, типа молекулы. Например, если диаметр трубок сравним с размером молекул и молекулы более-менее прилипают к стенкам и друг другу за счёт вандервальса, то они просто покроют адсорбер плёнкой и он работать не будет. Если размер трубок значимо больше и всё это ещё и охлаждается, то да, молекула попавшая внутрь будет там долго болтаться и с большей вероятностью потеряет энергию и там же и останется чем вылетит наружу.

в них сверху проваливаются молекулы газа

За исключением сверхнизких температур, дельта скорости приобретаемая за счёт разности гравитационного потенциала на размерах сосуда много меньше тепловой скорости молекул. Поэтому гравитация тут вообще никак.

thunar ★★★★★
()
Последнее исправление: thunar (всего исправлений: 10)
Ответ на: комментарий от thunar

Если размер побольше и всё это ещё и охлаждается, то да, молекула попавшая внутрь будет там долго болтаться и с большей вероятностью потеряет энергию и там же и останется чем вылетит наружу.

И если она вылетает наружу, то это будет происходить чаще снизу, раз она теряет энергию, так? И если повторить эту лестницу https://i.imgur.com/u9nnDCS.png, используя в качестве той «решетки» такие секции с нанотрубками, что тогда получится, что молекула с нижней ступени будет иногда залетать сверху в эти трубки и проваливаться на ступеньку выше, т.е. увеличивая свою потенциальную энергию? Как это может быть?

SZT ★★★★★
() автор топика
Ответ на: комментарий от thunar

Поэтому гравитация тут вообще никак.

Почему никак, если тяжелые газы в гравитационном поле чаще распределены внизу, а легкие газы вверху? Верно ли, что молекула газа в трубках с бОльшей вероятностью выпадает вниз из-за гравитации, чем без нее?

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 1)
Ответ на: комментарий от SZT

https://i.imgur.com/u9nnDCS.png

Я не разумею вашу схему, но по моему вы ищите тонкости кинетики там основной эффект статистический. Вангую, что то что вы хотите — это сорбционный/криосорбционный насос.

иногда залетать сверху в эти трубки и проваливаться на ступеньку выше, т.е. увеличивая свою потенциальную энергию?

Распределение Максвелла.

увеличивая свою потенциальную энергию

\delta E << kT

thunar ★★★★★
()
Последнее исправление: thunar (всего исправлений: 1)
Ответ на: комментарий от thunar

Распределение Максвелла.

Распределение Максвелла никак не учитывает гравитацию т.к. оно про идеальный газ.

SZT ★★★★★
() автор топика
Ответ на: комментарий от SZT

Хорошо, Максвелла-Больцмана.

учитывает гравитацию

У вас размер системы сотни метров в высоту, или это центрифуга с бешенными оборотами?

thunar ★★★★★
()
Последнее исправление: thunar (всего исправлений: 2)
Ответ на: комментарий от thunar

У вас размер системы сотни метров в высоту, или это центрифуга с бешенными оборотами?

Пусть будет центрифуга.

SZT ★★★★★
() автор топика
Ответ на: комментарий от thunar

Я не разумею вашу схему

Есть несколько соединенных камер на разной высоте, каждая камера соединена с другой вышестоящей через эти анизотропные трубки, в которые если влетают молекулы тяжелого газа, то они чаще чем в «пустом» пространстве вылетают внизу, чем вылетают вверху, и в итоге они оказываются в более высокой камере. https://i.imgur.com/lQydKxK.png

Вот надо проверить, как реальные частицы газа в таких нанотрубках будут себя вести, будут ли они чаще проваливаться, чем вылетать сверху. И если да, то каким образом молекула газа приобретает потенциальную энергию с бОльшей вероятностью, чем ее теряет? Это вроде нарушает второе начало термодинамики, хотя оно не про реальные газы, и гравитацию там не учитывают никак.

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 4)

Не совсем понимаю как у тебя вдоль стенки она спускается быстрее, ну и ладно. Если хочешь поизучать такие вещи формально – тебя ждут цепи Маркова, статистическая механика и lattice gas, возможно какая-нибудь перколяция.

tyakos ★★★
()
Последнее исправление: tyakos (всего исправлений: 1)
Ответ на: комментарий от SZT

Вот надо проверить, как реальные частицы газа в таких нанотрубках будут себя вести

Возможно, как нано-«сосиска Винера» ©.

каким образом молекула газа приобретает потенциальную энергию с бОльшей вероятностью, чем ее теряет? Это вроде нарушает второе начало термодинамики

Демон Максвелла придёт
И порядок наведёт :)

quickquest ★★★★★
()
Последнее исправление: quickquest (всего исправлений: 1)
Ответ на: комментарий от quickquest

нано-«сосиска Винера»

Не будет нанососиски когда длина пробега или корень сечения сравнимы с размером трубки.

thunar ★★★★★
()
Последнее исправление: thunar (всего исправлений: 1)
Ответ на: комментарий от SZT

Распределение Максвелла никак не учитывает гравитацию т.к. оно про идеальный газ.

Нет, распределение Максвелла не только про идеальный газ, а гравитация на идеальный газ тоже действует.

Ещё раз - если Вы хотите сделать клеточный автомат с правильной физикой, берите метод Монте-Карло. Все уже придумано до Вас.

Я так понял Вам надо посмотреть насколько пучок нанотрубок будет эффективнее обычной мембраны?

AntonI ★★★★★
()
Ответ на: комментарий от SZT

каждая камера соединена с другой вышестоящей через эти анизотропные трубки

А чем эти трубки анизотропные то? Гравитацией? Так что бы эта гравитация начала играть роль, надо что бы как писал @thunar mgl>kT, где l длина трубки. Посчитайте сначала какое там должно быть gl

Кроме того есть взаимодействие частицы со стенками трубки, Вы его не учитываете. Вот если сделать трубку конической, то она действительно может стать анизотропной и фильтровать газ даже без гравитации…

AntonI ★★★★★
()
Ответ на: комментарий от AntonI

Ещё раз - если Вы хотите сделать клеточный автомат с правильной физикой, берите метод Монте-Карло. Все уже придумано до Вас.

А у меня разве уже не метод Монте-Карло? Я пошагово моделирую этот клеточный автомат, который каждый шаг случайно меняет координату частицы, беря случайные байты из /dev/urandom.

Я так понял Вам надо посмотреть насколько пучок нанотрубок будет эффективнее обычной мембраны?

Надо посмотреть, что если частица в сильном гравитационном поле упала в пучок вертикально ориентированных нанотрубок:

[ ][ ][ ][ ][ ][ ][ ][#]
[ ][ ][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][@][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][ ]

То какова вероятность, что частица вылетит в итоге сверху, какова вероятность, что частица вылетит в итоге снизу:

[ ][ ][ ][ ][ ][ ][ ][#]
[ ][ ][ ][ ][ ][ ][ ][#]
[ ][#][?][?][?][?][?][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][@][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][ ][#][ ][#][ ][#]
[ ][#][?][?][?][?][?][#]
[ ][#][ ][ ][ ][ ][ ][ ]

и как эти вероятности будут отличаться, если б никаких нанотрубок там в том месте не было:

[ ][ ][ ][ ][ ][ ][ ][#]
[ ][ ][ ][ ][ ][ ][ ][#]
[ ][#][?][?][?][?][?][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][@][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][ ][ ][ ][ ][ ][#]
[ ][#][?][?][?][?][?][#]
[ ][#][ ][ ][ ][ ][ ][ ]

и как на всё это влияет наличие или отсутствие гравитации и ее сила.

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 4)
Ответ на: комментарий от AntonI

А чем эти трубки анизотропные то? Гравитацией?

Тем, что они ограничивают движение этой частицы. Частица не может сходить налево или направо. В пространстве без трубок такого нет. Частица будет часто сталкиваться со стенками трубок, обмениваясь с ними энергией.

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 1)
Ответ на: комментарий от AntonI

Кроме того есть взаимодействие частицы со стенками трубки, Вы его не учитываете.

Каким образом его учитывать при моделировании? Моделировать каждый отдельный атом в этой нанотрубке, методом молекулярной динамики?

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 1)
Ответ на: комментарий от SZT

В общем пока склоняюсь к версии, что надо взять некий пакет для молекулярной динамики (GROMACS например) и как-нибудь его запатчить, чтобы частица немного падала на каждом шаге.

Там для взаимодействия разных атомов используется потенциал Леннарда-Джонса, можно будет его выкинуть, заменив на что-то более простое, чтобы быстрее считалось.

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 2)
Ответ на: комментарий от SZT

А у меня разве уже не метод Монте-Карло?

Метод Монте-Карло это не просто че то как то куда то случайно двигать. Метод Монте-Карло это метод позволяющий на основании заданной физическо-математической модели (потенциалов взаимодействия и пр) построить алгоритм, который будет выдавать правильные средние величины. А у того алгоритма который Вы построили физ-мат модель фиг знает какая.

Надо посмотреть, что если частица в сильном гравитационном поле упала в пучок вертикально ориентированных нанотрубок

Для начала сравните mgl и kT. Если они одного порядка то можно о чем то дальше говорить. Если mgl<<kT то и без всякого моделирования понятно что гравитация тут даст такой же вклад как сила Кориолиса и пятна на Солнце.

AntonI ★★★★★
()
Ответ на: комментарий от SZT

Каким образом его учитывать при моделировании? Моделировать каждый отдельный атом в этой нанотрубке, методом молекулярной динамики?

А это зависит от потенциала взаимодействия со стенкой. В терминах клеточного автомата, энергия в пристеночной клетке будет отличаться от энергии в клетке которая не граничит со стенкой

AntonI ★★★★★
()
Ответ на: комментарий от SZT

Там для взаимодействия разных атомов используется потенциал Леннарда-Джонса, можно будет его выкинуть, заменив на что-то более простое, чтобы быстрее считалось.

Там используются очень разные потенциалы и основная вычислительная сложность обусловлена отнюдь не вычислительной сложностью потенциала Л-Дж, есть туча других факторов.

AntonI ★★★★★
()
Ответ на: комментарий от AntonI

Для начала сравните mgl и kT. Если они одного порядка то можно о чем то дальше говорить. Если mgl<<kT то и без всякого моделирования понятно что гравитация тут даст такой же вклад как сила Кориолиса и пятна на Солнце.

Ну хорошо, допустим. В качестве газа возьмем ксенон. Атомная масса (m) у него 131.293 а.е.м., что равно примерно 2.18e-19 г. Ускорение свободного падения (g) возьмем за 10000 см/с^2 (т.е. мы раскручиваем в центрифуге или где-то на другой планете это проводим). Высоту (h) возьмем 10000 см. Тогда потенциальная энергия E = mgh = 10000*10000*2.18E-19 = 2.18E-11 г*см^2/c^2. Это в Эргах, переведем в джоули. Один Эрг равен 1E-7 Дж - получается 2.18E-18 Дж.

Температура кипения ксенона в кельвинах равна 165 К, для температуры модели пусть будет чуть больше, например 175 К. Умножим постоянную Больцмана (k) 1.380649E-23 на это дело - получается что kT равно 2.4161358E-21 Дж.

Выходит так, что kT < mgh. Я нигде не ошибся?

В общем я не вижу проблемы подобрать такие параметры, чтобы kT < mgh. Только в чем это можно адекватно моделировать?

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 2)
Ответ на: комментарий от SZT

В общем я не вижу проблемы подобрать такие параметры, чтобы kT < mgh.

Но может быть проблемой реализовать такие параметры в реальности - если Вы изучает вопрос создания реальной установки. А так то да.

Только в чем это можно адекватно моделировать?

Это позволит понять нужно ли моделировать вообще. И ещё поможет выбрать параметры при которых моделирование будет интересным. Ваш алгоритм должен зависеть от температуры и g, теперь Вы знаете как они должны соотносится что бы искомый эффект имел место.

В первом приближении наличие нанотрубки не должно никак влиять, т.е. искомого эффекта нет. Но я могу ошибаться

AntonI ★★★★★
()
Ответ на: комментарий от AntonI

Но может быть проблемой реализовать такие параметры в реальности - если Вы изучает вопрос создания реальной установки. А так то да.

Если пытаться делать реальную установку, чтобы она работала по мотивам того клеточного автомата, лучше наверное взять банку с некоторой жидкостью при условиях вблизи точки кипения, в нее поместить другую банку на высокой подставке, сверху той банки разместить некий адсорбент, на который пары той жидкости легко бы конденсировались, отдавая потенциальную энергию адсорбенту, и все это дело термостатировать. https://i.imgur.com/LrMhoJy.png . И надеяться на то, что жидкость при постоянной температуре со временем переконденсируется во внутреннюю банку.

Тут уже процессы испарения-конденсации будут, и моделировать это надо будет сильно по-другому. Но вряд ли это заработает.

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 1)
Ответ на: комментарий от SZT

Пишем уравнение Фоккера-Планка для такой системы:

f_t + v f_r - g f_v = gamma (T f_v + v f)_v

f = f(r, v, t) - функция распределния, r, v - координата и скорость тяжелой частицы, _t производная по времени, _r, _v означают соответствующую nabla, gamma - коэффициент диссипации, T - безразмерная температура.

Смотрим на него и понимаем, что поскольку есть расщепление по координатам то предложенные Вами вариант с нанотрубками ничего не даст.

А вот для конических нанотрубок не все так очевидно. Но делать их не умеют. Можно еще градиент температур по ветикали создать и на этом попытаться поиграть…

AntonI ★★★★★
()
Последнее исправление: AntonI (всего исправлений: 1)
Ответ на: комментарий от AntonI

Если использовать воронки, можно тогда в качестве газа взять линейные алканы, чтобы они хорошо вниз соскальзывали, и плохо - вверх. И воронки со сдвигом установить друг над другом https://i.imgur.com/JEriAe8.png

Должно получиться так, что при попытке броуновского движении снизу вверх, алкан будет утыкаться в какие-то тупики и быстро падать назад.

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 1)
Ответ на: комментарий от SZT

Если использовать воронки, можно тогда в качестве газа взять линейные алканы, чтобы они хорошо вниз соскальзывали, и плохо - вверх.

Глянь решение без воронок и трубок в моделирующем комплексе “Виртуальная центрифуга” (PDF) фиг.1,2.

И воронки со сдвигом установить друг над другом https://i.imgur.com/JEriAe8.png

Если в качестве газа взять электроны, а вместо гравитации ЭМ-поле, то получится ФЭУ :).

quickquest ★★★★★
()
Ответ на: комментарий от AntonI

Нет, распределение Максвелла не только про идеальный газ, а гравитация на идеальный газ тоже действует.

Распределение Максвелла не описывает тот факт, что частица в гравитационном поле будет чаще лететь вниз, чем вверх.

Координату частицы запишем в декартовой системе координат x, y, z. Скорость это sqrt( (dx/dt)^2 + (dy/dt)^2 + (dz/dt)^2 ), распределение Максвелла описывает распределение вероятности скоростей для частиц разных масс при разных температурах, но оно не описывает, что изменение координаты по вертикальной оси z чаще будет отрицательным, чем положительным (если внизу нет пола, в которую частица уперлась, и кстати распределение Максвелла это тоже не описывает).

Скорость можно представить и в полярной форме, например так {\begin{cases}\frac{\Delta x}{\Delta t}=\bar {v}\sin \theta \cos \varphi ,\\\frac{\Delta y}{\Delta t}=\bar {v}\sin \theta \sin \varphi ,\\\frac{\Delta z}{\Delta t}=\bar {v}\cos \theta .\end{cases}} (https://i.imgur.com/rAotSFQ.png)

Если частица влетит в трубку, то скорости по осям x y (т.е. dx/dt и dy/dt) явно будут ограничены радиусом этой трубки, распределение Максвелла это тоже никак не учитывает.

Ну хорошо, допустим такая идея. Координату частицы храним как x y z, каждый шаг из ГПСЧ берем два случайных угла θ и φ (равномерное распределенные между 0 и 2pi) и скорость v (распределена по распределению Максвелла), и переводим это в декартову систему, немного уменьшаем координату z (частица падает) и сначала проверяем, врежется ли частица в стенку (пол, потолок и проч.) на таком шаге. И если врезается, что лучше делать? Сделать как бы отражение и частичную потерю энергии? Или может сначала стать в точке пересечения траектории частицы и стенки, а потом под таким-то случайным углом с каким-то сложным распределением делать рикошет? А может распределение Максвелла вообще не стоит использовать, если есть рядом какие-то стенки? Ведь если моделируется тяжелый атом ксенона и другие атомы газа это гелий, то и у атомов гелия будет другое распределение скоростей в окрестности стенок, и там надо иначе все считать?

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 4)
Ответ на: комментарий от SZT

Распределение Максвелла не описывает тот факт, что частица в гравитационном поле будет чаще лететь вниз, чем вверх.

Не описывает. Потому что распределение Максвелла это РАВНОВЕСНОЕ (стационарное) распределение, и если оно установилось то частицы летают вверх и вниз одинаково часто.

что лучше делать?

Лучше взять метод Монте-Карло, схему Метрополиса. У Вас есть две возможности - изобретать что то свое (и оно будет с вероятностью 99.99% отражать неверную физику) или взять готовое. Для этого надо погуглить и почитать.

AntonI ★★★★★
()
Ответ на: комментарий от AntonI

Лучше взять метод Монте-Карло, схему Метрополиса.

Какую литературу по этой теме вы можете порекомендовать, чтобы я эту схему Метрополиса мог запрограммировать и сделать такое моделирование? А есть уже готовые свободно-доступные программы, где можно провести такое моделирование? Если есть, где мне их скачать?

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 1)
Ответ на: комментарий от AntonI

Из того что я понял по ссылке, алгоритм Метрополиса никакой физической модели не содержит, ему нужна некая функция распределения вероятности, что система из такого состояния с такой вероятностью поменяется в то состояние, и с такой вероятностью - в другое состояние и проч. Мой вопрос был именно про то, как это пространство вероятностей для одного шага найти.

Вот цитата с хабра

Марковская цепь будет обходить дискретное пространство состояний, образуемое тремя состояниями погоды:

state_space = ("sunny", "cloudy", "rainy")

В дискретном пространстве состояний оператор перехода – это просто матрица. В нашем случае столбцы и строки соответствуют солнечной, облачной и дождливой погоде. Выберем относительно разумные значения для вероятностей всех переходов:

transition_matrix = np.array(((0.6, 0.3, 0.1),
                              (0.3, 0.4, 0.3),
                              (0.2, 0.3, 0.5)))

И как мне понять, какие для моей задачи будут относительно разумные значения переходов (в моей задаче - изменение положения частицы в пространстве в зависимости от окружения в ее окресности и текущей скорости)?

Допустим, есть некая частица, для простоты моделируемая клеточным автоматом

   ???
  ?????
 ???????
 ???@???
 ???????
  ?????
   ???
Знаком ? отмечены позиции, которые частица может занять после 1 шага симуляции. Допустим, мы добавили стену
  #
  #???
  #????
  #?????
  #?@???
  #?????
  #????
  #???
  #
И теперь количество возможных позиций ограничено, и вероятности нахождения в доступных позициях отличаются от тех, которые были раньше при свободном плавании. Если раньше частица полетела бы налево и заняла б крайне левую позицию, то теперь она уткнется в стенку, отскочит, потеряет часть энергии и займет позицию справа. Как (по какому принципу) мне это подбирать?

SZT ★★★★★
() автор топика
Последнее исправление: SZT (всего исправлений: 2)

Так что, ни у кого нет идей насчет того, как для одного шага эту функцию вероятности подобрать?

cast Dorif

SZT ★★★★★
() автор топика
Ответ на: комментарий от SZT

А в каких программах это можно более точно промоделировать?

А почему не доработать немного матан до уровня ньютоновской физики и дробных чисел? А от стенок пусть отскакивает с сохранением импульса. Ну и гравитацию нормальную

pihter ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.