Симуляция газа
От: vvs86 Великобритания  
Дата: 26.12.05 04:02
Оценка:
Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).

Спасибо
Re: Симуляция газа
От: SeLarin Россия http://selarin.livejournal.com
Дата: 26.12.05 07:21
Оценка:
Здравствуйте, vvs86, Вы писали:

V>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).


Задачу конкретнее поставь... Какие именно свойства надо симулировать, что имеется в качестве входных данных, что хочется получить в качестве выходных.


Во всем нужна мера, даже в том, чтобы соблюдать ее.
Re: Симуляция газа
От: Murom Россия  
Дата: 26.12.05 08:19
Оценка:
Здравствуйте, vvs86, Вы писали:

V>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).


V>Спасибо


На сколько я понимаю, это называется газодинамика. Просто дать пару формул не получится, т.к. бесполезно. Стоит взять какой-нибудь учебник/справочник/книжку и разбираться до необходимой для задачи глубины и сложности.
- Eugeny
Re: Симуляция газа
От: jhfrek Россия  
Дата: 26.12.05 09:07
Оценка: +1
Здравствуйте, vvs86, Вы писали:

V>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).


Дык это же бильярд Закон сохранения импульса и энергий для векторов скоростей. У кого-то из С++ классиков даже пример был — bounce, по-моему называется.

ЗЫ. Я уж подумал это вопрос из "газовой" темы СВ
Re[2]: Симуляция газа
От: vvs86 Великобритания  
Дата: 26.12.05 18:40
Оценка:
Здравствуйте, SeLarin, Вы писали:

SL>Здравствуйте, vvs86, Вы писали:


V>>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).


SL>Задачу конкретнее поставь... Какие именно свойства надо симулировать, что имеется в качестве входных данных, что хочется получить в качестве выходных.


Входные — набор скоростей (векторов) шарообразных моделей, их масс, положений и размеров. Выходные: давление температура, плотность.

Спасибо
Re[2]: Симуляция газа
От: vvs86 Великобритания  
Дата: 26.12.05 18:41
Оценка:
Здравствуйте, Murom, Вы писали:

M>Здравствуйте, vvs86, Вы писали:


V>>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).


V>>Спасибо


M>На сколько я понимаю, это называется газодинамика. Просто дать пару формул не получится, т.к. бесполезно. Стоит взять какой-нибудь учебник/справочник/книжку и разбираться до необходимой для задачи глубины и сложности.


Да я так и думал — просто не знаю что бы почитать
Re[2]: Симуляция газа
От: vvs86 Великобритания  
Дата: 26.12.05 18:43
Оценка:
Здравствуйте, jhfrek, Вы писали:

J>Здравствуйте, vvs86, Вы писали:


V>>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).


J>Дык это же бильярд Закон сохранения импульса и энергий для векторов скоростей. У кого-то из С++ классиков даже пример был — bounce, по-моему называется.


J>ЗЫ. Я уж подумал это вопрос из "газовой" темы СВ

От примера билльярда бы тоже не отказался — не надо мне ничего обьяснять, просто ткните носом в нужном направлении. С Уважением.

ЗЫ: У меня мамины родители на Украине живут
Re[3]: Симуляция газа
От: vdimas Россия  
Дата: 27.12.05 08:53
Оценка:
Здравствуйте, vvs86, Вы писали:

V>Входные — набор скоростей (векторов) шарообразных моделей, их масс, положений и размеров. Выходные: давление температура, плотность.


Блин, ты хочешь моделировать каждую молекулу отдельно?????? Ну ладно... Тем проще алгоритмы, но тем больше вычислительная сложность модели.

Разве что при таком подходе рекомендую очень все экономить, например не держать массу и размеры на каждую молекулу, а просто пусть молекула ссылается на свой "тип", и уже из типа берутся эти значения. Причем, сылка пусть будет минимально возможной, 1 байта хватит для моделирования смеси из 256 разных газов.

Далее, плотность.

Плотность подсчитать легко. Из справочника по физике наделяешь молекулы весом, делишь суммарный вес на объем, получаешь плотность.

Температура и давление связаны м/у собой и зависят от суммарной кинетической энергии на единицу объема. Т.е. опять же, суммируешь общую кинетическую энергию и делишь на объем.
Re[3]: Симуляция газа
От: jhfrek Россия  
Дата: 27.12.05 09:17
Оценка:
Здравствуйте, vvs86, Вы писали:

V>От примера билльярда бы тоже не отказался — не надо мне ничего обьяснять, просто ткните носом в нужном направлении. С Уважением.


Почти обманул Пример есть в MSDN — здесь
Re: Симуляция газа
От: Рома Мик Россия http://romamik.com
Дата: 28.12.05 10:05
Оценка:
Здравствуйте, vvs86, Вы писали:

V>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).

Это уже не газ, это уже жидкость... Насколько я помню физику, модель т.н. идеального газа — несталкивающиеся между собой частицы. В газе молекулы летают очень свободно и действительно редко сталкиваются, по крайней мере уравнение Менделеева-Клайерона и др. из той же серии, которые получаются исходя именно из этой модели, дают очень неплохую точность предсказаний.
Re: Симуляция газа
От: Рома Мик Россия http://romamik.com
Дата: 28.12.05 12:21
Оценка:
Здравствуйте, vvs86, Вы писали:

V>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).

А если все-таки делать исходя из этой модели, то ничего сложного:
1. Читаем работы Брайана Митрича про моделирование физики твердого тела импульсным методом.
2. Основательно оптимизируем используя ограничения модели.


Серьезно:
1. На начальном этапе для каждой пары шаров находим столкнуться ли они, и если столкнуться, то когда. Пихаем все столкновения в очередь с приоритетами, с приоритетом по времени до столкновения.
2. Выбираем пару, которая столкнеться быстрее всех. Обмениваем столкнувшихся скоростями. И пересчитываем обоим время до столкновения со всеми прочими.
3. Повторяем пункт два, пока не надоест.

Это общая идея импульсного метода, примененная к случаю невращающихся шаров одинаковой массы. Оптимизировать можно и дальше, например, разбив пространство на секторы, и проверять столкновения только между шарами в смежных секторах и между шарами и границами сектора.
Re[3]: Симуляция газа
От: nut888 Россия  
Дата: 29.12.05 09:22
Оценка:
Здравствуйте, vvs86, Вы писали:

V>Здравствуйте, SeLarin, Вы писали:


SL>>Здравствуйте, vvs86, Вы писали:


V>>>Посоветуйте пожалуйста описание того как написать симулятор газа. Для начала: газ курглые незаряженные частицы обладающие размером (тоесть они сталкиваются между собой).


SL>>Задачу конкретнее поставь... Какие именно свойства надо симулировать, что имеется в качестве входных данных, что хочется получить в качестве выходных.


V>Входные — набор скоростей (векторов) шарообразных моделей, их масс, положений и размеров. Выходные: давление температура, плотность.


V>Спасибо


Вообще задача в такой постановке не имеет смысла
То есть она может иметь смысл при стремлении числа частиц к бесконечности что програмно не реализовать
Давление температура плотность — параметры описывающие макросостояние системы
В поставленной задаче корректно говорить не о их значениях а о функциях распределения их вероятности
Начните с энтропии
Поищите что нибудь на тему — метод сеток Больцмана , статистическая термодинамика ...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.