Реализуем простую модель из курсов физики и механики и посмотрим, легко ли рассчитать поведение этой системы в среде физического моделирования Engee.
Описание модели
Рассмотрим простую задачу про груз заданной массы, который скользит по поверхности с известными параметрами трения.
Расчет таких задач обычно производится в педагогических целях. Задача очень хорошо сформулирована, очень легко переносится в реальность (в отличие даже от перекидных блоков с катушками), а ее решение показывает способность к сочетанию полезных абстракций физики и математики и манипуляции ими.
Решение такой задачи в пакете 1D моделирования требует некоторых оговорок. По первому предназначению, эти пакеты не рассматривают относительное движение предметов, поэтому мы не увидим наклонной поверхности и не сможем наклонить ее чтобы провести физическую симуляцию.
Блоки физического моделирования Engee созданы чтобы рассчитывать динамику одной представленной ситуации, и в эту постановку наша задача вполне укладывается.
Рассмотрим схему этой системы с точки зрения груза:
На груз (Масса) действуют только сила тяжести (ускорение 9.81 умноженное на массу минус та компонента силы тяжести, которую компенсирует реакиця опоры) и сила трения (ее направление не играет большой роли, хотя наклон скамьи может сказываться на параметрах).
Груз "не знает", под каким углом наклонена скамья. Но он ощущает некоторую комбинацию сил, которые выражаются в изменении его состояния. Движение груза фикситуется датчиком и измеряется относительно некоторой опоры.
Важное замечание. Трение рассчитывается пропорционально силе реакции опоры (). Это выражение должно быть записано в блоке Трение в параметре Сухое трение, при изменении наклона скамьи нужно будет зайти в блок Трение и обновить значение.
Более сложный эксперимент
Что если мы захотим добавить в эту модель еще несколько взаимодействий? Модель остается наглядной и будет понятна самым разным специалистам даже без чтения сопроводительного описания.
Мы добавили в модель еще одну Массу 5 кг, которая висит на тросе, намотанном на Катушку 10 см (диаметр), которая жестко соединена с другой Катушкой 5 см (в их оси есть трение) и мешает соскальзыванию Массы 10 кг вниз по скамье.
Расчет модели
Запустить эту модель можно множеством способов. Один из них состоит в том, чтобы открыть ее на холсте Engee и нажать на кнопку запуска и изучить графики на панели Визуализация графиков .
Другой вариант состоит в том, чтобы запустить модель из скрипта и получить данные для дальнейшего анализа:
In [ ]:
model=engee.open("Масса на наклонной плоскости.engee");data=engee.run(model)
Out[0]:
SimulationResult(
"Перемещение массы" => WorkspaceArray{Float64}("Масса на наклонной плоскости/Перемещение массы")
,
"Перемещение массы-2" => WorkspaceArray{Float64}("Масса на наклонной плоскости/Перемещение массы-2")
)
В структуре data содержится несколько таблиц, одна из которых соответствует переменной x, где сохраняется путь, пройденный телом некоторой массы, по поверхности с заданным трением под действием силы земного притяжения.
plot(experiment_1.time,experiment_1.value,title="Перемещение массы по наклонной скамье",label="Без противовеса",titlefont=font(11),markershape=:o)plot!(experiment_2.time,experiment_2.value,label="С противовесом",markershape=:o)
Out[0]:
Как мы видим, противовес тянет массу вверх по скамье, и в системе координат датчика она осуществляет отрицательное перемещение (путь не может быть отрицательным).
Заключение
Очень вероятно, что классические задачи из учебника физики невозможно упростить еще больше, только усложнить описание в угоду автоматизированному решению. Но в серьезных инженерных проектах обычно нужна не универсальная среда физического моделирования, а хорошо понятое, абстрагированное от ненужных взаимодействий описание конкретного явления.
1D моделирование представляет достаточно удобный формализм для расчета физических задач. Здесь можно пользоваться датчиками силы или перемещения для решения простых базовых задач, а графический характер моделей позволяет комбинировать их в подсистемы или просто собирать достаточно сложные и наглядные расчетные эксперименты.