Движение точки по пространственной кривой — КиберПедия 

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

Движение точки по пространственной кривой

2020-02-15 98
Движение точки по пространственной кривой 0.00 из 5.00 0 оценок
Заказать работу

Дополним нашу программу введением третьей координаты , а также обращением к функциям ezplot3, plot3 и quiver3. Получим возможность строить пространственные кривые. Введем еще команду на установку начальной точки визирования объекта и заключения его в коробку (бокс):

ezplot3(x,y,z,[0,tedge]), axis equal,

xlabel('\itx'), ylabel('\ity'), zlabel('\itz'),

view(210,30), box on, hold on;

На рис. 1 изображена пространственная траектория, а на рис. 2 - ее проекции. Картинку в МАТЛАБе можно поворачивать, раскрашивать, вводить надписи и т.д.

 

Рис. 1. Пространственная замкнутая кривая

 

Рассмотрим еще одну модернизацию процедуры task_k1. Добавим построение вектора  (здесь - орт касательной) и вектора . Добавляем

9

надписи методами дескрипторной графики. Команда text(x1+vx1*mv,y1+vy1*mv,'v') создает на фигуре текстовую строку 'v', левый нижний угол которой имеет координаты x1+vx1*mv, y1+vy1*mv.

 

Анимация

Организуем простейшую анимацию, иллюстрирующую движение точки по плоской кривой. Создаем цикл для расчетов и построения объектов в 41 расчетной точке, включая . Задержку кадров во времени заказываем командой pause. Чтобы стирать лишние объекты при переходе к следующему кадру, помечаем их вектором ссылок hp, и после любования стрелками стираем их все одной командой delete(hp). Стрелки, относящиеся к моменту , оставляем. Еще оставляем маркер в виде кружка, выделяющего начальную точку траектории.

 

 

 

Рис. 2.  Горизонтальная проекция пространственной кривой на и одна из проекций на вертикальную плоскость

 

 

 

%Task K1v2: evaluate the path, veloc. and accel.(version 2)

%for given x(t),y(t) and animation in 41 points

clear all

syms x y t;

novar = input('task_k1v2 Введи номер варианта = ');

x = input('Введи x = ');

y = input('Введи y = ');

t1 = input('Введи момент t1 = ');

tedge = input('Введи правую границу промежутка tedge = ');

if t1>tedge

tedge = 2*t1;

end%if t1

mv = input('Введи масштаб изображения скорости mv = ');

ma = input('Введи масштаб изображения ускорения ma = ');

ezplot(x,y,[0,tedge]), axis equal, hold on;

pause(0.5);

dt = t1/20;

10

vx = diff(x); vy = diff(y);

ax = diff(vx); ay = diff(vy);

for k = 1:41

t = dt*(k-1);

x1 = subs(x); y1 = subs(y);

hold on;

hp(1) = plot(x1,y1,'ko','MarkerSize',5,'MarkerFaceColor','k'); hold on;

if k==1

    plot(x1,y1,'ko','MarkerSize',8); hold on;

end% if k 

vx1 = subs(vx); vy1 = subs(vy);

ax1 = subs(ax); ay1 = subs(ay);

v1 = sqrt(vx1*vx1+vy1*vy1);

a1 = sqrt(ax1*ax1+ay1*ay1);

hp(2) = quiver(x1, y1, vx1*mv, vy1*mv,'b','LineWidth',1.5); hold on;

hp(3) = text(x1+vx1*mv,y1+vy1*mv,'v'); hold on;

hp(4) = quiver(x1, y1, ax1*ma, ay1*ma,'r','LineWidth',2); hold on;

hp(5) = text(x1+ax1*ma,y1+ay1*ma,'a'); hold on;

if v1>1e-12

   at1 = (vx1*ax1+vy1*ay1)/v1;

   an1 = sqrt((a1+at1)*abs(a1-at1));

   atx1 = at1*vx1/v1;

   aty1 = at1*vy1/v1;

   anx1 = ax1 - atx1;

   any1 = ay1 - aty1;

   hp(6) = quiver(x1, y1, atx1*ma, aty1*ma,'r','LineWidth',2); hold on;

   hp(7) = text(x1+atx1*ma,y1+aty1*ma,'a_t'); hold on;

   hp(8) = quiver(x1, y1, anx1*ma, any1*ma,'r','LineWidth',2); hold on;

   hp(9) = text(x1+anx1*ma,y1+any1*ma,'a_n');

     if an1<1e-12

        ro1=Inf;

     else

        ro1 = v1*v1/an1;

     end%if an1

else

at1 = Nan;

an1 = Nan;

ro1 = Nan;

end%if v1

pause(0.5);

if k==21

  Vx1 = vx1; Vy1 = vy1; V1 = v1;

  Ax1 = ax1; Ay1 = ay1; A1 = a1;

  At1 = at1; An1 = an1; Ro1 = ro1;

else

  delete(hp);

end%if k

end%for k

no_var = novar

vx1_vy1_v1 = [Vx1 Vy1 V1]

ax1_ay1_a1 = [Ax1 Ay1 A1]

at1_an1_ro1 = [At1 An1 Ro1]

 

Вместо пауз можно ввести звуковые сигналы заданной длительности с помощью команды sound. Попробуйте ввести звуковое сопровождение: сначала в виде простых гармонических «нот», исполняемых при построении очередной фигуры. Заставьте точку прыгать по траектории в одном ритме с вашей любимой музыкальной пьесой. Точку можно представить смайликом с подвижной физиогномикой, наделенным способностью издавать политкорректные восклицания назидательного характера, восхваляющие автора программы, факультет и всяческое начальство.

 

11

Дополнительные задания

1) Составить уравнения движения точки М подвижного колеса радиуса , катящегося без скольжения по неподвижному колесу радиуса  планетарного механизма (рис. 2). Пусть отношение радиусов колес равно отношению целых чисел (тогда траектория замкнута). Кривошип (водило) вращается против часовой стрелки с угловой скоростью рад/с. Точка М отстоит от центра подвижного колеса на расстояние . В начальный момент времени точка М находится на оси в крайней правой позиции.

Построить траекторию точки, годографы скорости и ускорения точки. Построить векторы , , , , соответствующие задаваемому моменту времени . Рассмотреть случаи , ,  при внешнем и внутреннем зацеплении.

 

                                   

 

Рис. 2. Планетарный механизм

 

2) Исследовать равномерное движение точки по какой-нибудь плоской замечательной кривой (астроида, спираль Архимеда и проч.) и в пространстве (по винтовой линии, по геодезической кругового конуса и т.д.).

3) Исследовать движение точки по сфере. Исследовать случаи замкнутых и незамкнутых кривых на сфере.

4) На основании постулата приближенной теории удара о равенстве углов падения и отражения построить траекторию маленького шарика на прямоугольном биллиардном столе или на эллиптическом столе. Просмотреть в литературе и в Интернете рассуждения на тему об эргодичности траектории (и заодно этимологию термина). Составить условия эргодичности и наоборот и построить соответствующие траектории.

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

6) Построить эволюту и эвольвенту заданной плоской кривой.

7) Написать программу построения кривых Бертрана.

8) Построить кривые погони («собачьи кривые»).

9) Исследовать равномерное и иное движение точки по кривой, которая независимо от движения точки, извиваясь, перемещается по плоскости или в пространстве.

10) Исследовать движение точки по «дышащей» поверхности.

 

Заключение

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

12

Список литературы

 

1. Matlab: официальный учебный курс Кембриджского университета / Brian R. Hunt и др. – М.: Изд-во ТРИУМФ, 2008. - 352 с.

2. Ануфриев И. Е. MATLAB 7 / Ануфриев И. Е., Смирнов А. Б., Смирнова Е. Н. – СПб.: БХВ-Петербург, 2005. – 1104 с.

 

13


Поделиться с друзьями:

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.024 с.