Кирсанов М.Н.
Решебник.Теоретическая механика.
М.:ФИЗМАТЛИТ, 2002.
Иллюстрации и программы к книге
13.6. Задача 4
:
> | restart:with(plottools): with(plots): read «stand.m»; |
Warning, the names arrow and changecoords have been redefined
Процедура создания и анимации рисунка задачи 4
> | WD[4]:=proc(xx) local i,dt,tn,p,p11,p13,p1,p2,p9,p91,p92,alpha,beta: alpha:=Pi/6: beta:=Pi/2: tn:=0.65: dt:=tn/40: for i from 0 to 40 do p:=pieslice([-2*eval(xx,t=i*dt),0],2,0..alpha,color=white): p1:=textplot([2.7-2*eval(xx,t=i*dt),0.55,»30″],align={ABOVE,RIGHT},color=red): p2:=textplot([-1,10,»Задача 4″],align={ABOVE,RIGHT},color=blue): p11:=plot({[[-2*eval(xx,t=i*dt),0],[10-2*eval(xx,t=i*dt),0]]},x=0..10,color=black,thickness=3): p13:=plot({[-10,-0.6],[15,-0.6]},x=-10..15,color=black,thickness=2): p9:=plot({[[10-2*eval(xx,t=i*dt),0],[12-2*eval(xx,t=i*dt),0]]},x=10..13,color=gold): p91:=line([11-2*eval(xx,t=i*dt),0.4],[10-2*eval(xx,t=i*dt),0],color=gold): p92:=line([11-2*eval(xx,t=i*dt),-0.4],[10-2*eval(xx,t=i*dt),0],color=gold): q||i:=display({ p,p1,p11,p13,p2, p9,p91,p92, ЛИНИЯ(-2*eval(xx,t=i*dt),0,10-2*eval(xx,t=i*dt),10*tan(alpha),3), ЛИНИЯ(10-2*eval(xx,t=i*dt),0,10-2*eval(xx,t=i*dt),10.7*tan(alpha),3), КОЛЕСО(10-2*eval(xx,t=i*dt),10.8*tan(alpha),1.6,green), КОЛЕСО(10-2*eval(xx,t=i*dt),10.8*tan(alpha),1,green), ТОЧКА(10-2*eval(xx,t=i*dt),10.8*tan(alpha)), КОЛЕСО(2.5-2*eval(xx,t=i*dt),0,0.5,wheat), ТОЧКА(2.5-2*eval(xx,t=i*dt),-0.1), КОЛЕСО(8-2*eval(xx,t=i*dt),0,0.5,wheat), ТОЧКА(8-2*eval(xx,t=i*dt),-0.1), ЛИНИЯ(4-eval(xx,t=i*dt)-2*eval(xx,t=i*dt),3.9-eval(xx,t=i*dt)*tan(alpha),9.48-2*eval(xx,t=i*dt),(9.48-4)*tan(alpha)+3.9,1), ЛИНИЯ(11.6-2*eval(xx,t=i*dt),6.01,11.6-2*eval(xx,t=i*dt),eval(xx,t=i*dt)+2.2,1), ТОЧКА(4.3-eval(xx,t=i*dt)-2*eval(xx,t=i*dt),3.3-eval(xx,t=i*dt)*tan(alpha)), КОЛЕСО(4.3-eval(xx,t=i*dt)-2*eval(xx,t=i*dt),3.3-eval(xx,t=i*dt)*tan(alpha),0.68,pink), ГРУЗ(10.6-2*eval(xx,t=i*dt),2.2+eval(xx,t=i*dt),12.6-2*eval(xx,t=i*dt),1.2+eval(xx,t=i*dt),0), ТОЧКА1(10-0.8*cos(eval(xx,t=i*dt))-2*eval(xx,t=i*dt),10.8*tan(alpha)-0.8*sin(eval(xx,t=i*dt))), ТОЧКА1(10-1.4*cos(eval(xx,t=i*dt))-2*eval(xx,t=i*dt),10.8*tan(alpha)-1.4*sin(eval(xx,t=i*dt))), ТОЧКА1(10+0.8*cos(eval(xx,t=i*dt))-2*eval(xx,t=i*dt),10.8*tan(alpha)+0.8*sin(eval(xx,t=i*dt))), ТОЧКА1(10+1.4*cos(eval(xx,t=i*dt))-2*eval(xx,t=i*dt),10.8*tan(alpha)+1.4*sin(eval(xx,t=i*dt))), ТОЧКА1(10-1.4*sin(eval(xx,t=i*dt))-2*eval(xx,t=i*dt),10.8*tan(alpha)+1.4*cos(eval(xx,t=i*dt))), ТОЧКА1(10-0.8*sin(eval(xx,t=i*dt))-2*eval(xx,t=i*dt),10.8*tan(alpha)+0.8*cos(eval(xx,t=i*dt))), ТОЧКА1(10+1.4*sin(eval(xx,t=i*dt))-2*eval(xx,t=i*dt),10.8*tan(alpha)-1.4*cos(eval(xx,t=i*dt))), ТОЧКА1(10+0.8*sin(eval(xx,t=i*dt))-2*eval(xx,t=i*dt),10.8*tan(alpha)-0.8*cos(eval(xx,t=i*dt))), А(12.2-2*eval(xx,t=i*dt),2.68+eval(xx,t=i*dt)), B(8-2*eval(xx,t=i*dt),0.5+12.8*tan(alpha)), C(2.3-eval(xx,t=i*dt)-2*eval(xx,t=i*dt),3.3-eval(xx,t=i*dt)*tan(alpha)), F(12.5-2*eval(xx,t=i*dt),0.2) },scaling=constrained); end do: display([seq(q||i,i=0..40)],out1): end proc: |
> | УСКОРЕНИЕ_ПРИЗМЫ:=W[4];WD[4](5*t**2); |
> |