Кирсанов М.Н. Решебник.Теоретическая механика. М.:ФИЗМАТЛИТ, 2002.
Иллюстрации и программы к книге
8.5. Пример 2
> | restart: |
> | read «ris.m»; |
Подписи шарниров на рисунке
> | nam:=array(1..5,[‘O’,’A’,’B’,’C’,’M’]): Начальные значения и размеры ( cм) OA:=40: AB:=35: BC:=41: AM:=38: R:=10: |
время
> | T:=pi/18: |
Координаты опоры O
> | x[1]:=0:y[1]:=0: |
> | y[4]:=R: |
Количество кадров K
> | K:=12:with(plots):with(plottools): |
Создаем все кадры
> | for i from 0 to K do |
> | t:=i/K*T: |
> | phi1:=sin(2*pi*t/T)*pi/8+pi/6: phi2:=-sin(2*pi*t/T)*pi/4+2*pi/3: Координаты шарнира A |
> | x[2]:=OA*cos(phi1): y[2]:=OA*sin(phi1): x[3]:=x[2]+AB*sin(phi1): y[3]:=y[2]-AB*cos(phi1): x[4]:=x[3]+sqrt(BC^2-(y[4]-y[3])^2): x[5]:=x[2]+AM*cos(phi2): y[5]:=y[2]+AM*sin(phi2): centr(1,2,6):centr(3,2,7): P0:=PLOT(POLYGONS([[x[2],y[2]],[x[6],y[6]],[x[7],y[7]]],COLOR(HUE,0.4))): P[i]:=display(seq(Cir(i,1),i=2..5),Cir(4,R),P0, cir4(4,R,-x[4]/R), seq(Line(i,i+1,6+i),i=1..3), Line(2,5,6), seq(TEXT([x[j]-2,y[j]+3],nam[j]),j=1..5)): od: |
Изображение механизма в движении
> | PP:=display(seq(P[i],i=0..K),insequence=true, thickness=2, scaling=constrained, axes=none): |
Warning, the name changecoords has been redefined
Warning, the name arrow has been redefined
> | display(PP,Опора(1,1),Поверхность(55,0,45,3)); |
> |
> |
> |