Моделирование броуновского движения
-
- beginner
- Сообщения: 17
- Зарегистрирован: 08 апр 2016, 19:55
- Версия LabVIEW: 2013
- Контактная информация:
Моделирование броуновского движения
Здравствуйте! Мне нужно смоделировать движение молекул газа в прямоугольном замкнутом сосуде, учитывая, что при соударении молекулы с горизонтальной (вертикальной) стенкой сосуда вертикальная (горизонтальная) проекция ее скорости меняет свой знак на противоположный. Прошу помочь с алгоритмом создания программы, т.к я не очень понимаю некоторые вещи в реализации этой программы:
- как организовать движение сразу нескольких точек в XY Graph (или в чем-то подобном)
- как задать угол, относительно которого будут считаться проекции скорости
Заранее благодарен.
- как организовать движение сразу нескольких точек в XY Graph (или в чем-то подобном)
- как задать угол, относительно которого будут считаться проекции скорости
Заранее благодарен.
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Моделирование броуновского движения
Посмотрите: http://www.labviewportal.org/viewtopic.php?f=21&t=4251san_raise писал(а):Здравствуйте! Мне нужно смоделировать движение молекул газа в прямоугольном замкнутом сосуде, учитывая, что при соударении молекулы с горизонтальной (вертикальной) стенкой сосуда вертикальная (горизонтальная) проекция ее скорости меняет свой знак на противоположный. Прошу помочь с алгоритмом создания программы, т.к я не очень понимаю некоторые вещи в реализации этой программы:
- как организовать движение сразу нескольких точек в XY Graph (или в чем-то подобном)
- как задать угол, относительно которого будут считаться проекции скорости
Заранее благодарен.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 17
- Зарегистрирован: 08 апр 2016, 19:55
- Версия LabVIEW: 2013
- Контактная информация:
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Моделирование броуновского движения
У меня ее не осталось, год назад винт рухнул.san_raise писал(а):IvanLis, вы не могли бы загрузить вот эту программу?
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 17
- Зарегистрирован: 08 апр 2016, 19:55
- Версия LabVIEW: 2013
- Контактная информация:
Re: Моделирование броуновского движения
IvanLis, помогите, пожалуйста, разобраться с Вашей программой. Зачем нужен генератор синуса и косинуса (обвел красным)? И еще, если я хочу сделать больше шариков в этой программе, получается, мне нужно создать массивы под координаты шариков и на каждом цикле их сравнивать? А как быть в случае с столкновением, допустим, не одного, а трех шариков?IvanLis писал(а): Посмотрите: http://www.labviewportal.org/viewtopic.php?f=21&t=4251
-
- beginner
- Сообщения: 17
- Зарегистрирован: 08 апр 2016, 19:55
- Версия LabVIEW: 2013
- Контактная информация:
Re: Моделирование броуновского движения
Сама программа
- Вложения
-
- Dva_Sharika.vi
- (31.39 КБ) 91 скачивание
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Моделирование броуновского движения
Сейчас вспоминать нет времени, тем более разбираться заново.
Это скорее всего перевод единичного вектора (направление) в проекции на декартовые координаты.san_raise писал(а):Зачем нужен генератор синуса и косинуса (обвел красным)?
Да - массив шариков, тот путь, который выбрали Вы сейчас, утопичен.san_raise писал(а):И еще, если я хочу сделать больше шариков в этой программе, получается, мне нужно создать массивы под координаты шариков и на каждом цикле их сравнивать?
Вероятность практически равна "0". Но в любом случае, при малом шаге, сталкивается сначала "первая" пара, потом "вторая", не влияя на общую картину.san_raise писал(а):А как быть в случае с столкновением, допустим, не одного, а трех шариков?
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 17
- Зарегистрирован: 08 апр 2016, 19:55
- Версия LabVIEW: 2013
- Контактная информация:
Re: Моделирование броуновского движения
Вот мои попытки реализовать программу через массивы данных, для того, чтобы можно было моделировать большое число шариков. Но не могу понять, как осуществить перерисовку всех шариков по данным из массива, а затем вывод в 2D Picture. Кто знает, подскажите, пожалуйста.
- Вложения
-
- Shariki.vi
- (12.69 КБ) 90 скачиваний
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Моделирование броуновского движения
Как-то так: Но у Вас массив координат был 2D, а должен быть 1D.san_raise писал(а):Но не могу понять, как осуществить перерисовку всех шариков по данным из массива, а затем вывод в 2D Picture. Кто знает, подскажите, пожалуйста.
По этому я даже исходники не выкладываю, т.к. там до отрисовки еще править необходимо.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 17
- Зарегистрирован: 08 апр 2016, 19:55
- Версия LabVIEW: 2013
- Контактная информация:
Re: Моделирование броуновского движения
В моей программе возникла такая необходимость- отсортировать массив обсчитанных данных, чтобы подать их на вход, но реализовать задуманное не получается с помощью Index Array, Replace Array Subset и прочих. На выходе цикла при работе с этими функциями получается двумерный массив, а должен быть одномерный. Прошу вашей помощи!
-
- beginner
- Сообщения: 17
- Зарегистрирован: 08 апр 2016, 19:55
- Версия LabVIEW: 2013
- Контактная информация:
Re: Моделирование броуновского движения
san_raise писал(а): реализовать задуманное не получается с помощью Index Array, Replace Array Subset и прочих.
- Вложения
-
- Shariki_1.vi
- (24.43 КБ) 102 скачивания