Компьютерные лабораторные занятия по теоретической механике. Ч. 2 (110
.pdfЗадача 8.4
Известно, что потенциальная энергия системы имеет вид U(x) = z4 mgz. Найти частоту малых колебаний.
Ответ: |
|
! = r108 m : |
|
6 |
g2 |
Задача 8.5
Найти положения равновесия и частоту малых колебаний в задаче
4.2.
Ответ при l0 < a:
r
xeq = 0; ! = ma(a l0):
Ответ при l0 > a:
|
q |
|
|
|
|
r |
ml02 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xeq = |
|
l02 |
|
a2; ! = |
(l02 |
|
a2): |
||||
|
|
|
|
|
Задача 8.6
В задаче 4.3 найти положение равновесия и частоту колебаний.
Ответ: |
|
|
|
|
|
|
1 m |
2 |
|
: |
|
! = r |
|
||||
|
|
+ |
|
|
|
Положение равновесия находится на расстоянии
1l1 + (2a l2) 2
1 + 2
от левой стенки, что соответствует расстоянию от центра
2(q l2) 1(q l1):1 + 2
Задача 8.7
В задаче 4.6(а) найти частоту колебаний. Решение.
Введя угол равновесия 'eq, перейдем к малой величине = ' 'eq.
Тогда полученное ранее уравнение движения при малых амплитудах должно трансформироваться в уравнение гармонических колебаний
a |
|
g |
|
! |
• |
2 |
|
||
'• + |
l |
|
cos ' + |
l |
sin ' = 0 |
+ ! |
= 0: |
11
•
Поскольку '• = , нам достаточно приравнять соответствующие части
без производных, предварительно разложив тригонометрические функции в ряд Тейлора:
> subst(phi=theta+phieq,a/l*cos(phi)+g/l*sin(phi));
> eq:taylor(%,theta,0,2)=omega^2*theta;
> eq1:coeff(eq,theta,0); eq2:coeff(eq,theta,1);
Чтобы выразить частоту, возведем каждые части уравнений в квадрат и сложим:
> trigsimp(eq1^2+eq2^2);
Ответ: r
! = 4 g2 + a2 : l2
Задача 8.8
Найти частоту колебаний однородного полушара, находящегося на гладкой коризонтальной поверхности, если известна функция Лагранжа системы
L = mR2 |
|
8 sin2 |
' + |
640 |
|
'2 |
mgR 1 |
8 cos ' |
: |
|
|
|
3 |
|
|
83 |
|
|
|
3 |
|
Ответ: r
! = 2 8330Rg :
Задача 8.9
Два шарика, соединенные пружиной, движутся вдоль гладкой горизонтальной прямой. Найти частоту колебаний, если в координатах центра масс и относительного смещения функция Лагранжа системы имеет вид:
L =
p
Ответ: = .
Задача 8.10
Плоский маятник длины l и массы m2 прикреплен к телу массы m1,
движущемуся по горизонтальной прямой в той же плоскости. Найти ча- стоту малых колебаний, если функция Лагранжа системы имеет вид:
|
m1 + m2 |
2 |
|
l |
|
L = |
|
x |
+ m2l' |
|
' + x cos ' + m2gl cos ': |
|
|
||||
2 |
|
|
2 |
12
Решение.
Разложим функцию Лагранжа в ряд Тейлора до второго порядка малости включительно. Обобщенные скорости сначала введем как fx è f':
> Lold:(m1+m2)/2*vx^2+m2*l*vf
*(l/2*vf+vx*cos(phi))+m2*g*l*cos(phi);
> ta:ratdisrep(taylor(Lold,[x,phi,vx,vf],0,3));
Подстановка в уравнения Лагранжа II рода приводит к системе уравнений:
> depends([x,phi],t);
> L:subst([vx=diff(x,t),vf=diff(phi,t)],ta);
> eq1:diff(diff(L,diff(x,t)),t)-diff(L,x)=0;
> eq2:diff(diff(L,diff(phi,t)),t)-diff(L,phi)=0;
Благодаря наличию интеграла движения, частота колебаний в задаче одна. Избавившись от величины x•,
> eliminate([eq1,eq2],[diff(x,t,2)]);
получим дифференциальное уравнение (второго порядка)
lm2 (lm1'• + gm2' + gm1') = 0;
которое решим с помощью стандартной команды ode2. Так как команда eliminate дает серию выражений, то перейдем к единственному уравнению, указав в квадратных скобках единицу:
> ode2(%[1],phi,t);
Ответив на вопрос Maxima Is glm1(m2+m1) positive, negative, or zero? positive, получаем закон движения '(t). Так как положением
равновесия является угол 'eq = 0, то явный вид частоты колебаний можно получить по формуле
p
! = '='• :
> f:part(%,2);
> factor(diff(f,t,2)/f);
> omega:sqrt(-%);
Ответ: s
! = |
g(m1 + m2) |
: |
|
||
|
l m1 |
Задача 8.11
Точки подвеса двух математических маятников одинаковой массы m и одинаковой длины l находятся на одном уровне на расстоянии l0 äðóã
13
от друга. Материальные точки маятников соединены пружиной жесткости {, имеющей в ненапряженном состоянии длину l0 (¾связанные ма-
ятники¿). Найти частоты малых колебаний связанных маятников, если известна функция Лагранжа системы:
|
|
|
|
L = |
ml2 |
'12 + '22 + mgl(cos '1 + cos '2) |
|
|
|
|
|
|
|
2 |
|
|
|||
|
|
k |
|
|
|
|
|
|
2 |
|
|
p(l0 + l sin '2 l sin '1)2 + (l cos '2 l cos '1)2 l0 |
|
||||||
|
|
: |
|||||||
Здесь |
2 |
||||||||
|
'1; '2 углы отклонения маятников от вертикали. |
|
|
Решение.
В равновесии маятники располагаются вертикально, поэтому считаем j'1j 1; j'2j 1:
Разложим функцию Лагранжа в ряд Тейлора до второго порядка малости включительно. Обобщенные скорости сначала введем как f1 è f2:
> depends([phi1,phi2],t);
> Lold:m*l^2/2*(f1^2+f2^2)+m*g*l*(cos(phi1)+cos(phi2))
-k/2*(sqrt((l0+l*sin(phi2)-l*sin(phi1))^2+(l*cos(phi2) -l*cos(phi1))^2)-l0)^2;
> ta:taylor(Lold,[phi1,phi2,f1,f2],0,3);
> ratdisrep(ta);
Подстановка в уравнения Лагранжа II рода приводит к системе уравнений:
> L:subst([f1=diff(phi1,t),f2=diff(phi2,t)],%);
> eq1:expand(diff(diff(L,diff(phi1,t)),t)
-diff(L,phi1)=0);
> eq2:expand(diff(diff(L,diff(phi2,t)),t)
-diff(L,phi2)=0);
Это система линейных однородных дифференциальных уравнений. Рассмотрим ее решения применим замену Эйлера и сократим экспоненты
> eqq1:subst([phi1=A1*exp(%i*omega*t),
phi2=A2*exp(%i*omega*t)],eq1)$
> eqq2:subst([phi1=A1*exp(%i*omega*t), phi2=A2*exp(%i*omega*t)],eq2)$
> al1:ratsimp(ev(eqq1,nouns)/exp(%i*omega*t));
> al2:ratsimp(ev(eqq2,nouns)/exp(%i*omega*t));
14
Полученная система алгебраических уравнений ( al1 è al2), ãäå A1, A2 неизвестные, ! параметр, имеет нетривиальное решение при условии равенства нулю определителя матрицы коэффициентов:
> coefmatrix([al1,al2], [A1,A2]);
> determinant(%)=0;
> solve(%,omega);
Рассмотрим также второй способ решения, который опирается на симметрию задачи. Для этого введем вспомогательные переменные 1 è2, такие, что
'1 = |
1 |
( 1 |
+ 2) ; '2 |
= |
1 |
( 1 |
2) : |
|
|
|
|
||||||
2 |
2 |
Тогда сложение и вычитание полученных дифференциальных уравнений приведет к несвязанным между собой уравнениям.
> depends([theta1,theta2],t);
> eqq1:subst([phi1=theta1+theta2,
phi2=theta1-theta2],eq1+eq2)$ eqq2:subst([phi1=theta1+theta2, phi2=theta1-theta2],eq1-eq2)$> t1:ratsimp(ev(eqq1,nouns));
t2:ratsimp(ev(eqq2,nouns));
Решая по-отдельности, находим закон изменения переменных 1 è 2
в виде тригонометрических функций, из которых значения присутствующих частот очевидны.
> ode2(t1,theta1,t);
ode2(t2,theta2,t); |
|
|
|
|
|
|
|
|
|
Ответ: |
|
|
|
|
|
|
|
|
|
= r |
|
|
|
= r l |
|
|
|
||
!1 |
|
l |
; !2 |
+ m : |
|||||
|
|
|
g |
|
g |
|
2k |
Задача 8.12
Найти частоты малых колебаний двойного плоского маятника, если известна функция Лагранжа системы:
|
m1 + m2 |
2 |
2 |
|
m2 2 |
2 |
+ m2l1l2'1'2 cos('1 '2)+ |
|
L = |
|
l1 |
'1 |
+ |
|
l2 |
'2 |
|
2 |
2 |
|||||||
|
|
|
|
|
|
|
|
+ (m1 + m2)gl1 cos '1 + m1gl2 cos '2: |
Ответ:
!2 = |
g(l1 |
2l1l2m1 |
+ m2) |
"1 s |
1 (l1 |
+ l2)2(m1 + m2) |
# |
: |
||
|
+ l2)(m1 |
|
|
|
4l1l2m1 |
|
|
15
8.2. Вынужденные колебания
Задача 8.13
На систему маятников, описанных в задаче (8.11), действует горизонтальная гармоническая сила F0 cos t, приложенная ко второй материальной точке. Исследовать зависимость отношения амплитуд маятников от частоты внешней силы . Указание: использовать функцию Лагранжа
связанных маятников при малых колебаниях, дополнив ее потенциальной энергией, обусловленной внешней силой.
Ответ: |
|
|
|
|
|
'1(t) |
|
kl |
|
|||
|
|
|
|
|
|
|
= |
: |
||||
|
|
|
|
|
|
|
|
|
|
|||
|
|
k |
|
|
g |
|
'2(t) kl + gm 2lm |
|
||||
Ïðè 2 |
= |
|
+ |
отношение амплитуд маятников стремится к бесконеч- |
||||||||
|
l |
|||||||||||
ности. |
m |
|
|
|
|
|
|
|
Задача 8.14
На линейный осциллятор массы m с собственной частотой ! действует сила F (t). Найти закон колебаний, если начальные условия x(0) = x0, x(0) = v0 известны.
à) F = F0 постоянная;
á) F = F0 t= ; â) F = F0 e t;
ã) F = F0 cos( t);
д) случай (г) при = ! (резонанс).
Здесь F0, , , постоянные. Решение для случая (а).
> eq:'diff(x,t,2)+omega^2*x=F0/m;
> ode2(eq,x,t);
> ic2(%,t=0,x=x0,'diff(x,t)=v0);
> expand(%);
Ответ:
|
|
|
|
|
|
|
v0 |
|
F0 |
|
(1 cos(!t)) ; |
|||||
a) x(t) = x0 cos(!t) + |
|
|
|
sin(!t) + |
|
|
||||||||||
! |
m!2 |
|||||||||||||||
|
|
|
|
|
|
v0 |
|
F0 |
|
(!t sin(!t)) ; |
||||||
á) x(t) = x0 cos(!t) + |
|
|
sin(!t) + |
|
|
|||||||||||
! |
m!3 |
|
||||||||||||||
â) x(t) = |
x0 |
m( 2 + !2) cos !t+ |
|
|
|
|
|
|||||||||
|
|
|
F0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ ! v0 + m( 2 + !2) |
sin(!t) + m( 2 + !2)e t; |
||||||||||||
|
|
1 |
|
|
|
|
|
|
F0 |
|
|
|
|
F0 |
16
ã) x(t) = x0 cos(!t) + |
v0 |
sin(!t) + |
F0 |
|
cos( t) cos(!t) |
; |
|
m |
!2 2 |
||||
! |
|
|
|
ä) x(t) = x0 cos(!t) + v!0 sin(!t) + 2Fm!0 t sin(!t):
Задача 8.15
В предыдущей задаче рассмотреть случай, когда при t = 0 осциллятор покоится в положении равновесия, а сила действует при 0 t .
Найти закон гармонических колебаний и амплитуду после выключения силы; построить график для произвольных значений постоянных.
Решение для случая (а).
Введем полученный ранее закон движения и соответствующую скорость в переменные x1 è v1:
> x1:F0/(m*omega^2)*(1-(cos(omega*t))); v1:diff(x1,t);
После выключения силы колебания станут гармоническими, введем их в переменные x2 è v2:
> x2:A*cos(omega*t)+B*sin(omega*t); v2:diff(x2,t);
Постоянные A è B найдем сшивкой решений:
> d:trigsimp(solve([subst(t=tau,x2=x1),
subst(t=tau,v2=v1)],[A,B]));
Подставим значения постоянных A è B в закон движения x2 и присвоим переменной xnew:
eliminate([x2=xx,d[1][1],d[1][2]],[A,B])[1];
xnew:part(solve(%,xx)[1],2);
Амплитуду таких колебаний найдем по формуле (8.1) при xeq = 0:
a:sqrt(trigsimp(xnew^2+diff(xnew,t)^2/omega^2));
Ответ:
x(t ) = m!F0 2 [(cos(! ) 1) cos(!t) + sin(! ) sin(!t)] ;
|
F0 |
|
|
|
2F0 |
|
|
|
|
|
|
|
|||
a = |
|
p2 |
2 cos(! ) = |
|
sin(! =2): |
||
m!2 |
m!2 |
Для построения графиков присвоим численные значения силы, массы
èсобственной частоты в переменные f0, m0 è om:
> load(draw);
> f0:1$ m0:1$ om:5$
Превратим коэффициенты A, B и переменные x1, x2 в функции вре- ìåíè t (и момента выключения силы ):
> X1(tt):=subst([F0=f0, m=m0, omega=om,t=tt],x1);
> A1:part(d[1][1],2); B1:part(d[1][2],2);
17
> X2(tt,TT):=subst([A=A1,B=B1,F0=f0, m=m0, omega=om,
t=tt,tau=TT],x2);
После выбора величины построим график из двух частей, до и после выключения силы:
> tau:4;
> xf:parametric(t,X1(t),t,0,tau);
> xh:parametric(t,X2(t,T),t,tau,10);
> draw2d([nticks=200,color=blue,xf,color=green,xh]);
График показан на рисунке.
Задача 8.16
Определить вынужденные колебания осциллятора с частотой ! ïðè
наличии силы трения под действием внешней силы f = f0 et cos t: Решение.
Считаем коэффициент затухания известным, используем для него
переменную lam, так как команда lambda задействована в среде Maxima как функция. Подставим условие задачи
> assume(m>0,omega>0,lam>0);
> F:F0*exp(alpha*t)*cos(g*t);
в уравнение вынужденных колебаний в среде в сопротивлением:
x• + 2 x + !2x = F (t) m
> eq:'diff(x,t,2)+omega^2*x+2*lam*'diff(x,t)=F/m;
Решим дифференциальное уравнение с учетом малой вязкости ( < !). Задав нулевые начальные условия, оставим только неоднородную часть решения:
18
> assume(omega>lam); ode2(eq,x,t);
> des:part(factor(subst([%k1=0,%k2=0],%)),2);
Ответ, присвоенный в переменную des, оказался довольно громоздким. Сгруппировав в числителе множители при функциях cos и sin,
> trigrat(num(des));
введем обозначения
b1 = (2 + 2 ) ; b2 = !2 + 2 2 + 2
> cond1:omega^2+2*alpha*lam-g^2+alpha^2=b1;
cond2:2*g*lam+2*alpha*g=b2;
С учетом введенных условий упростим решение
> x1:scsimp(num(des),cond1,cond2)/
scsimp(denom(des),cond1,cond2);> factor(%);
Ответ: |
F0et |
b1 cos( t) + b2 sin( t) |
|
|
|
|
|||
x(t) = |
|
|
|
: |
m |
b12 + b22 |
Задача 8.17
Определить энергию, приобретаемую осциллятором с частотой ! ïîä действием силы F = F0 exp t2= 2 за все время действия силы, если ïðè t ! 1 осциллятор покоился в положении равновесия.
Решение.
> kill(all);
> assume(m>0,omega>0,tau>0);
> F:F0*exp(-t^2/tau^2);
> xi:exp(%i*omega*t)*integrate(F/m*exp(-%i*omega*t),
t,-inf,inf);
Используем команду cabs для взятия модуля в формуле энергии ос-
циллятора |
|
|
mj j2 |
|
|
|
|
E = |
: |
|
|
||
|
2 |
|
|
|
||
> E:trigsimp(m*cabs(xi)^2/2); |
|
|
|
|||
Ответ: |
F02 2 |
|
2!2 |
|
||
|
|
|
||||
E = |
|
exp |
|
: |
||
2m |
2 |
19
9. Формализм Гамильтона
9.1. Функция Гамильтона и канонические уравнения
Задача 9.1
Выписать уравнения Гамильтона для физического маятника массы m, если одна из главных осей инерции параллельна оси вращения и про-
ходит от нее на расстоянии l. Соответствующий момент инерции равен J. Проинтегрировать уравнения движения для случая малых углов от-
клонения.
Решение.
Функция Лагранжа физического маятника имеет вид
L('; ') = (J + ml2)'2 + mgl cos(') : 2
> L:(m*l^2+J)/2*'diff(phi,t)^2+m*g*l*cos(phi);
Запишем обобщенный импульс, соответствующий переменной ', и функцию Гамильнона (согласно определениям) в виде равенств:
@L
p' = @'; H = p'' L;
> eq:pp=diff(L,'diff(phi,t));
> eqH:Ham=pp*'diff(phi,t)-L;
Выразим обобщенную скорость через импульс и подставим в функцию Гамильтона, решив систему алгебраических уравнений:
> s:solve([eq,eqH],['diff(phi,t),Ham]);
Искомое выражение находится в правой части первого решения для второй переменной; извлечем его:
> H:part(s[1][2],2);
Для того, чтобы представить ответ в более удобном виде, воспользуемся командой разбиения на элементарные дроби partfrac, взяв знаменатель в качестве переменной разложения:
> partfrac(H,denom(H));
Подставляя функцию H в канонические уравнения
' = |
|
@H |
; p' = |
@H |
; |
|
|
|
|||
@p' |
@' |
> eq1:'diff(phi,t)=ratsimp(diff(H,pp));> 'diff(pp,t)=-partfrac(diff(H,phi),phi);
20