Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Моделирование сложных процессов


Автор: rocco 2.7.2008, 09:48
Кто-нибудь занимался моделированием движения физического тела в пространстве? Задача такого плана: есть зенитная управляемая ракета (ЗУР), которая встреливается под под определенным углом. На нее действуют три силы: переменная сила тяжести(уменьшается по ходу выгорания топлива), переменная аэродинамическая сила(изменяется в зависимости от угла атаки и угла отклонения рулей ракеты) и переменная сила тяги(увеличивается по мере набора высоты). Нужно промоделировать ее движение до встречи с определенной точкой (цель), предусмотреть возможность изменения параметров движения с помощью изменения углов отклонения рулей ракеты. Движение пока только в одной плоскости. В МатЛаб есть неплохая физическая модель ЗУР, но хотелось бы для начала посмотреть как всезнающие форумчане решали подобные задачи и какие средства визуализации использовали. Не откажусь от толкового примера или ссылок на соответствующие ресурсы.

Автор: SoWa 2.7.2008, 13:28
Эммм, дифуры в помощь. И больше ничего не нужно. Вся модель будет на бумаге в решении 3 и более уравнений.
А если есть в матлабе- разбирай решение сам.

Автор: Ln78 3.7.2008, 09:08
Цитата(SoWa @  2.7.2008,  14:28 Найти цитируемый пост)
Эммм, дифуры в помощь. И больше ничего не нужно. Вся модель будет на бумаге в решении 3 и более уравнений.

SoWa, и всё? Как оказывается просто, непонятно, чем только занимаются в таком случае многочисленные НИИ и КБ smile 

rocco, не совсем понятно, в чём именно вопрос. Если речь идёт о моделировании реальных ракет, самое сложное составить адекватную модель, с помощью которой можно, например, выбирать оптимальный закон управления. Задача регистрации и визуализации в таких моделях явно не самая сложная часть. МатЛаб в таких задачах хорош для баловства, по быстродействию такие модели будут уступать моделям, реализованным, например, на C++, порядка на 2, т.е. раз в сто. А собственно, визуализация требует умения рисовать графики (большая часть - двумерные, для них можно написать и свои соответствующие функции, либо воспользоваться готовыми библиотеками, для незначительной части параметров предпочтительнее трёхмерные графики, опять же можно воспользоваться готовыми библиотеками), составить список из параметров, которые можно регистрировать и те, которые будут зарегистрированы при расчёте текущей реализации. Первый список может содержать несколько сотен параметров, второй - несколько десятков (а может и сотен, это непринципиально). Предусмотреть, что отображается только часть графиков, на каждом из которых часть параметров, и средства выбора какие именно графики отображаются. Можно сделать, чтобы было что-то вроде страниц: отображается одна страница, можно переходить к любой странице как во время расчёта, так и по его завершении (сами регистрируемые параметры сохраняются в памяти, чтобы их можно было перерисовать). Большая часть параметров - графики, в которых аргументом является время. Но, например, траекторные параметры "ракета-цель", кроме как от времени, можно рисовать и в плоскостях X-Y, X-Z, с возможными временными отметками на самих графиках, либо, на любителя, можно и трёхмерные. Преимущества своих средств реализации графики - эффективность реализации, простота при добавлении различных средств их обработки (например, преобразования из графиков в числа и обратно), но есть и сторонние библиотеки, допускающие подключение собственных средств обработки событий. Лет 15 назад и раньше, когда только начинался переход с "больших" машин на персоналки, моделирование и визуализация были разнесены: при моделировании проводилась регистрация в файлы, а потом, используя статграф или нечто подобное данные из файлов визуализировались и обрабатывались. 

Автор: SoWa 3.7.2008, 09:20
Цитата(Ln78 @  3.7.2008,  09:08 Найти цитируемый пост)
SoWa, и всё? Как оказывается просто, непонятно, чем только занимаются в таком случае многочисленные НИИ и КБ 

А они их решают smile И не в условиях двухмерной модели+идеальных условий, а с учетом ветра, прочей дряни как координаты, от которых зависит g... В общем, этим и занимабтся.
А если у человека есть МатЛабовская модель- флаг в руки и барабан на шею- пускай разбирает smile
Однозначно- решение в ДУ.

Автор: Ln78 3.7.2008, 09:28
 smile 
Цитата(SoWa @  3.7.2008,  10:20 Найти цитируемый пост)
 И не в условиях двухмерной модели+идеальных условий, а с учетом ветра, прочей дряни как координаты, от которых зависит g... 

Когда ракета движется со скоростью порядка км/с, самое главное - учесть ветер, собственно сопротивлением воздуха можно пренебречь smile . А почему однозначно ДУ, а не теория вероятностей, математическое моделирование, теория оптимального управления, и ещё целая куча теорий?

Автор: rocco 3.7.2008, 13:55
 smile Нда...
В матлабе для такого рода модели предусмотрено аж 4 подсистемы (модель атмосферы, модель ракеты, управляющий ракетой блок). Конечно при моделировании такого сложного физического процесса нельзя пренебрегать сопротивлением воздуха smile , тем более, что оно прямим образом влияет на аеродинамическую силу. Пренебрегают другими факторами (неоднородности воздуха и прочее). 
Просто хотелось узнать не работал ли кто с подобными вещами?

Автор: SoWa 3.7.2008, 17:28
Цитата(rocco @  3.7.2008,  13:55 Найти цитируемый пост)
В матлабе для такого рода модели предусмотрено аж 4 подсистемы

Во! Вот это уже подход к задаче. Мы на лекциях работали с подобными задачами, но там, увы, неуправляемые объекты были.
rocco, +1 за объективный подход smile smile извини за минус.
Цитата(Ln78 @  3.7.2008,  09:28 Найти цитируемый пост)
А почему однозначно ДУ, а не теория вероятностей, математическое моделирование, теория оптимального управления, и ещё целая куча теорий?

А потому что все они учитывают параметр времени лишь с помощью дифференциальных уравнений. Или ты можешь предложить прямые и точные зависимости всех факторов от времени?.. Нет, конечно возможно использование других теорий(Но не вероятности точно ;)) МатМоделирование сводится к ДУ... Да все они сводятся к ДУ, ибо прямых зависимостей для таких задач не разработано и разработано не будет. Вот есть три закона Ньютона, они есть. А если для каждой ракеты свои законы придумывать- помрешь smile

Автор: Ln78 3.7.2008, 18:14
 smile 
SoWa, анекдот знаешь: 
-первый день за рулём, думал увернусь. 
-А я, сынок, 20 лет за рулём, от меня не увернёшься.
Пока вы на лекциях, мы на практике занимались, не один десяток лет, а то, что ты пока ещё не знаком с другими теориями, не означает, что существуют только ДУ. А почему, например, не численные методы и разностные уравнения, или ты думаешь, что аналитически решить эти уравнения не позволяет только учёт изменения g от координат (вот уж это учитывать, это круто  smile ). Кстати, когда я был второкурсником, нам лектор тоже говорил, что всё описывается ДУ. Много времени с тех пор прошло...

Автор: SoWa 3.7.2008, 18:41
Ln78, ваше решение в студию! Ибо толковых предложений еще не поступало smile А то, чем ты занимаешься может быть не вполне понятно для тех, кто этим не занимается smile
Будет интересно для развития посмотреть на алгоритмы решения данной задачи численными методами или разностными уравнениями(честно, таких уравнений я еще не знаю)

Автор: Ln78 3.7.2008, 18:52
Цитата(SoWa @  3.7.2008,  19:41 Найти цитируемый пост)
Ln78, ваше решение в студию! Ибо толковых предложений еще не поступало 

SoWa, решение чего? И не торопись с оценками, какие предложения толковые, а какие нет. Ты уже поспешил оценить вопрос, потом и сам сожалеешь о содеянном smile . Мой ответ на пост топикстартера был дан, уточняющих вопросов пока не было. Сама эта тема неподъёмна для её обсуждения на этом форуме в полном объёме. А то, что это непонятно, так это понятно smile . Кстати, когда я пришёл на работу после университета, у меня тоже на первых порах было желание записать некую систему и пытаться решить её аналитически. Осознание ненужности таких действий пришло позже.

Автор: SoWa 3.7.2008, 19:09
Возможно. Но елки палки smile Есди невозможно обсудить всю проблемму во всем обьеме- надо предложить человеку решение, которое будет ему понятно.

Автор: rocco 7.7.2008, 08:58
Сейчас буду разбираться с аналоговой схемой, которая используется в электронных тренажорах для зенитчиков. Результати позже)

Автор: Promitheus 9.7.2008, 15:09
бородатая задача, сам такими вещами не занимался, но уверен что если поднять документацию хоть чуток там где тебе её задали, то там будет всё что угодно в плане математического описания. А графику сделать это вопрос времени. 

Автор: rocco 9.7.2008, 17:45
Все дело в том, что документация на аналоговые модели и куча фраз типа "после этого операционного усилителя стоит ...", я немного знаком с этим, но пока толковой модели еще не сделал

Автор: Promitheus 10.7.2008, 10:31
мне вот эти книги советовали, говорили очь хорошие

А.А. Лебедев и Л.С. Чернобровкин

"Траектория л.а." часть I 
"Устойчивость и управление л.а." ч II
динамика полёта беспилотных л.а.

насколько я знаю уравнения решаются для одной плоскости скажем XoY и/или для XoZ, устраняются конфликты и т.д.  а так чтобы сразу в трёхмерном пространстве такого по-моему нет.

мне кажется с аналоговыми схемами только время потеряешь.

Автор: rocco 10.7.2008, 12:33
Пока решаю как раз для одной плоскости. Спасибо за толковый совет! smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)