Кирсанов М.Н.
Решебник.Теоретическая механика.
М.:ФИЗМАТЛИТ, 2002.
Иллюстрации и программы к книге
17.3. Колебания системы с двумя степенями свободы
> | restart; |
Массы (кг)
> | ma:=50:mb:=20: |
Жесткость пружин (Н/м)
> | c:=90: |
Ускорение свободного падения (м/c2)
> | g:=9.81: |
Кинетические энергии тел A, B
Ta:=3*ma*vx^2/4:
> | Tb:=mb*(vs+2*vx)^2/4: |
Кинетическая энергия системы
> | T:=Ta+Tb: |
Инерционные коэффициенты
> | a11:=coeff(diff(T,vx),vx): |
> | a12:=coeff(diff(T,vx),vs): |
> | a22:=coeff(diff(T,vs),vs): |
Частота колебаний omg
> | B1:=c-a11*omg^2: B2:=a12*omg^2: |
> | УравнениеЧастот:=B1*(c-a22*omg^2)-B2^2=0: |
Решение уравнения частот
> | sol:=fsolve(УравнениеЧастот,omg=0..infinity); |
Дифференциальные уравнения колебаний
> | eq1:=a11*diff(x(t),t$2)+a12*diff(s(t),t$2)=-c*x(t): |
> | eq2:=a12*diff(x(t),t$2)+a22*diff(s(t),t$2)=-c*s(t): |
Численное решение системы с начальными данными
> | r:=dsolve({eq1,eq2,s(0)=0.1,x(0)=0.1,D(s)(0)=0,D(x)(0)=0}, {s(t),x(t)},type=numeric, output=listprocedure): |
> | with(plots): |
> | T0:=14.3: |
> | odeplot(r,[t,x(t)],0..T0,numpoints=150, labels=[t,x], color=black); |
Warning, the name changecoords has been redefined
> |
> |