Модель двумерного движения материальной точки
1. Задача. Материальная точка массой m движется в силовом поле Fx = Fx(x,y), Fy = Fy(x,y), при этом на нее действует сила вязкого трения с проекциями Fтx = - r vx, Fтy = - r vy, направленная противоположно скорости. Необходимо, зная начальные условия x0 , y0 , v0x , v0y , построить траекторию движения точки.
2. Теория. Примерами подобного движения являются движение точки, в однородном силовом поле, в центральном силовом поле сил притяжения или отталкивания, в центральном поле сил упругости и т.д. При этом могут быть учтены силы вязкого трения.
Проанализируем основные ситуации.
1. Движение в однородном поле. Во всех точках пространства вектор силы имеет постоянные проекции на оси координат. При отсутствии силы трения точка движется по параболе, а при ее наличии -- по более сложной кривой.
2. Движение в центрально - симметричном поле, действующем по закону обратных квадратов. На точку с координатами x, y действует сила F = GmM/r2, r2 = x2 + y2 Ее проекции на оси координат:
Fx = - Fcosα = - Fx/r,
Fy = - Fsinα = - Fy/r.
В поле притяжения в зависимости от начальных координат и скоростей точка движется по гиперболе, параболе или эллипсу. В поле отталкивания траекторией движения точки является гипербола.
3. Движение в магнитном поле. Движение заряженной частицы в магнитном поле будет двумерным, если начальная скорость частицы перпендикулярна силовым линиям магнитного поля. При этом со стороны поля действует сила Лоренца F = qvB, лежащая в плоскости экрана и направленная перпендикулярно вектору скорости. Введем угол β, который образует вектор скорости с осью x. Проекции силы Лоренца на координатные оси:
Fx = - Fsinβ = Fvy /v,
Fy = - Fcosβ = - Fvx /v.
Заряженная частица описывает окружность. При наличии тормозящей силы радиус окружности уменьшается.
4. Движение частицы в скрещенных электрическом и магнитном полях. Пусть силовые линии электрического поля лежат в плоскости экрана и направлены вверх, а силовые линии магнитного поля направлены к нам перпендикулярно вектору напряженности электрического поля.
Если заряд частицы положительный, то на него со стороны электрического поля действует постоянная сила, направленная вверх. Чтобы учесть ее влияние необходимо к вертикальной проекции силы Лоренца прибавить постоянное слагаемое qE:
Fx = Fvy /v, Fy = qE - Fvx /v.
Если начальная скорость частицы равна нулю, то траекторией ее движения является циклоида.
3. Алгоритм. Пусть в момент времени t материальная точка имеет координаты x, y и проекции скорости vx , vy . Запишем второй закон Ньютона в проекциях:
Fx(x,y) -r vx = max, Fy(x,y) -r vy = may.
Отсюда следует, что проекции ускорения точки в момент времени t + Δ t равны:
ax (t + Δ t) = (Fx (t) - r vx (t))/m, ay (t + Δ t) = (Fy (t) - r vy (t))/m.
Определив координаты и проекции скорости точки в момент времени t + Δ t, можно повторить процедуру вычисления требуемое количество раз и построить траекторию движения точки.
Построим алгоритм модели.
1. Задают массу материальной точки m, коэффициент вязкости r, начальные координаты x0 , y0 и проекции скорости v0x , v0y , силовое поле Fx = Fx (x,y,z), Fy = Fy (x,y,z), а также шаг по времени Δ t.
2. Начало цикла по t. Дают приращение по времени: переменной t присваивают значение t + Δ t.
3. Определяют ускорение, скорость и координату тела в следующий момент времени:
ax (t + Δ t) = (Fx (t) - r vx (t))/m,
ay (t + Δ t) = (Fy (t) - r vy (t))/m,
vx (t + Δt) = vx (t) + ax (t + Δt)Δ t,
vy (t + Δ t) = vy (t) + ay (t + Δ t)Δ t,
x(t + Δ t) = x(t) + vx (t + Δ t)Δ t,
y(t + Δ t) = y(t) + vy (t + Δ t)Δ t.
4. Результаты вычислений x(t + Δ t), y(t + Δ t) выводят на экран в числовом виде либо строят соответствующие точки на координатной плоскости.
5. Возвращение к операции 2. Если цикл по t закончился, -- выход из цикла.
4. Компьютерная реализация. Предлагаемая компьютерная программа позволяет изучить движение материальной точки в различных силовых полях с учетом действующей на точку силы трения.
program PROGRAMMA3;uses crt, graph;var v, B, q, F, Fx, Fy : real; r, x, y, vx,vy,ax,ay : real; Gd, Gm, i: integer;const M=500; mm=100; dt=0.005; rr=0.1; k=2;Begin Gd:= Detect; InitGraph(Gd, Gm, 'c:\bp\bgi'); if GraphResult <> grOk then Halt(1); line(320,240,640,240); line(320,240,320,0); circle(320,240,5); x:=100; y:=120; vx:=1; vy:=-2;Repeat begin{--Заданние силового поля--}(* Fy:=3; Fx:=0; *)(* Fx:=-k*x; Fy:=-k*y; *)(* r:=sqrt(x*x+y*y); F:=M*mm/(r*r); Fx:=-F*x/r; Fy:=-F*y/r; *) B:=2; q:=1; F:=B*v*q; v:=sqrt(vx*vx+vy*vy); Fx:=F*vy/v; Fy:=-F*vx/v;(* B:=2; q:=1; F:=B*v*q; v:=sqrt(vx*vx+vy*vy); Fx:=F*vy/v; Fy:=-0.5-F*vx/v; *){--Расчет скоростей и ускорений--}ax:=(Fx-rr*vx)/mm; ay:=(Fy-rr*vy)/mm;vx:=vx+ax*dt; vy:=vy+ay*dt; x:=x+vx*dt; y:=y+vy*dt;circle(round(x)+320,240-round(y),2); setcolor(12);circle(round(x)+320,240-round(y),1); setcolor(15);end;until KeyPressed;CloseGraph;END.