Программа 25. Задача 42
| > | restart; |
| > | with(PDEtools): declare(s(t),phi(t)): |
| > | read "C:\\diff.m"; |
| > | read "C:\\teylor.m"; |
| > | read "C:\\graph.m"; |
Обозначения
| > | f:=phi(t): vs:=diff(s(t),t): w:=diff(f,t): |
Известны скорости
| > | v[P,1]:=0: v[P,2]:=0: v[B,1]:=vs: |
| > | G[1]:=Граф([P,B],[R],[Pi/2],[w1]): |
| > | G[2]:=Граф([A,B],[R-r],[f+Pi/2],[w]): |
| > | G[3]:=Граф([A,K,B],[r,R],[f-Pi/2,f+Pi/2],[w2,w1]): |
| > | k:=0: |
| > | for i to 3 do #Формируем систему |
| > | for j to 2 do k:=k+1: eq[k]:=G[i][j] |
| > | od;od; |
| > | #solve({G[1][1],G[2][1],G[2][2],G[3][2]},{v[A,1],v[A,2],w1,w2}); |
| > | Система:=seq(eq[k],k=1..6); |
| > | Решение:=solve({Система},{v[B,2],v[A,1],v[A,2],w1,w2});assign(Решение); |
| > | Va:=simplify(sqrt(v[A,1]^2+v[A,2]^2)): |
| > | J1:=m[1]*R^2:J2:=m[2]*r^2/2: |
| > | T:=collect(1/2*m[1]*vs^2+1/2*J1*w1^2+1/2*m[2]*Va^2+1/2*J2*w2^2,w,factor); |
| > | P:=m[2]*g*(R-(R-r)*cos(f)):#Потенциальная энергия |
| > | L:=T-P:#Кинетический потенциал |
Уравнения Лагранжа
| > | Eq1:=collect(diff(Дифф(L,vs),t)-Дифф(L,s(t)),diff(w,t),factor); |
| > | Eq2:=factor(diff(Дифф(L,w),t)-Дифф(L,f)); |
| > | Order:=2: |
| > | U1:=Тейлор(Eq1,[diff(s(t),t,t),diff(w,t),phi(t)]); |
| > | U2:=simplify(Тейлор(Eq2,[diff(s(t),t,t),diff(w,t),phi(t)])/m[2]/(R-r)); |
| > | Реш:=solve({U1,U2},{diff(w,t),diff(s(t),t,t)}); |
| > | -rhs(Реш[1])/f; |
| > | k:=sqrt(%);#Частота колебаний |
| > | limit(k,m[1]=infinity); |
| > |