MATLAB数学建模1自行车的运动

  • 格式:pdf
  • 大小:1.49 MB
  • 文档页数:9

%x标签
ylabel('\ity/R','FontSize',fs)
%y标签
txt=['\itr/R\rm=',num2str(r),',\it\alpha\rm=',num2str(alpha),'\circ'];%字符串
text(0,0,txt,'FontSize',fs)
%显示字符串
M1_2a图
alpha=input('请输入斜坡的度数alpha:'); %键盘输入角度
a=alpha*pi/180;
%化为弧度
x0=0:0.001:20;
%自变量向量
y0=x0*tan(a);
%坡度的纵坐标
th=x0/cos(a);
%参数向量
x=x0-sin(a)-r*sin(th-a);
%横坐标向量
y=y0+cos(a)-r*cos(th-a);
设 P'的坐标为(x,y),则 x = xC – rsin(θ - φ),y = yC + rcos(θ - φ)
其中θ是圆心角,φ是法线与竖直方向的夹角,也是切线与水平方向的夹角,称为仰角。由(1) 式可得圆心角
1 x0 1 [ f (x)]2 dx
R0
(4)
根据导数的定义可得仰角
xlabel('\itx/R','FontSize',fs)
%x标签
ylabel('\ity/R','FontSize',fs)
%y标签
txt=['\itr/R\rm=',num2str(r),',\itp/R\rm=',num2str(p)];%参数字符串
text(0,0,txt,'FontSize',fs)
grid on
%加网格
fs=16;
%字体大小
title('自行车轮饰物的摆线族','FontSize',fs)%显示标题
xlabel('\itx/R','FontSize',fs)
%x标签
ylabel('\ity/R','FontSize',fs)
%y标签
legend([repmat('\itr/R\rm=',length(r),1),num2str(r')])%显示图例
)
(
xC

x0 )
y
(x0 xC )2 [ f (x0 ) yC ]2 R2
解得圆心坐标
xC x0
f (x0 ) R 1 [ f (x0 )]2
(2)
yC f (x0 )
1
R
1 [ f (x0 )]2
(3)
R
C'
C P' θ
r P
φ A'
OA A1图
φ x
(7b)
当 r < R 时,上式是短摆线方程;如果 r = R,上式就是典型的摆线方程。
[算法](1)取R为长度单位,则短摆线方程可化为
x* = θ – r*sinθ,y* = 1 – r*cosθ
(7*)
其中x* = x/R,y* = y/R,r* = r/R。θ是自变量,r*是可调节的参数。
[图示](1)如M1_1_1a图所示,当r < R时,短摆线处处光滑。如M1_1_1b图所示,当r = R
1 ( x0* / p* )2
y*

x0*2 2 p*

1
r* cos( )
1 ( x0* / p* )2
仰角为 圆心角为
φ = arctan(x0*/p*)


p* 2
{
x0* p*
1 (
x0* p*
)2
ln[
x0* p*

1

(
x0* p*
)2
]}
x0*是自变量,r*和p*是可调节的参数。 [程序]zqy1_3bicycle.m 如下。
1 [ f (x0 )]2
(6b)
[解析](1)设 y = 0,路面是一条直线,则 f '(x) = 0,φ = 0,θ = x0/R,饰物的轨迹方程为
x = x0 – rsin(x0/R),y = R – rcos(x0/R)
(7a)

x = Rθ – rsinθ,y = R – rcosθ
M1_1_1b图
%清除变量 %键盘输入半径比 %参数向量 %横坐标向量 %纵坐标向量 %建立图形窗口 %画横线 %保持图像 %画摆线 %使坐标间隔相等 %加网格 %字体大小
2
title('摆线的轨迹','FontSize',fs)
%显示标题
xlabel('\itx/R','FontSize',fs)
y x02
1
R r cos( )
2 p 1 (x0 / p)2
[算法](3)取R为长度单位,则抛物线方程可化为 y0* = x0*2/2p*
其中p* = p/R,x0* = x0/R,y0* = y0/R。 饰物的方程可化为
x* x0*
x0* / p*
r* sin( )
于f ''(x) = 1/p,根据曲率半径的公式
(1 y2 )3/ 2 y
6
可得抛物线在底部的半径为p,因此p/R不得小于1,如M1_3d图所示。
[解析](4)正弦线可设为
f(x) = Asinkx
(15)
路面是波浪形曲线,A 是正弦线的幅度,k 是系数。幅度和系数决定了正弦线的形状。由于
ds dx2 dy2 1 y2 dx 1 [ f (x)]2 dx
设 A'点的坐标为(x0,y0),则有弧长关系
x0
R 1 [ f (x)]2 dx
(1)
0
设圆心 C'的坐标为(xC,yC),C'在曲线的法线上,因此联立方程
yC

f
(x0 )


f
1 ( x0
%半径比向量
th=linspace(0,2*2*pi,1000);
%参数向量
[R,TH]=meshgrid(r,th);
%化为矩阵
X=TH-R.*sin(TH);
%横坐标向量
Y=1-R.*cos(TH);
%纵坐标向量
figure
%建立图形窗口
plot(X,Y)
%画摆线
axis equal
%使坐标间隔相等
M1_2b图
[图示](2)如M1_2a图所示,当α > 0时,自行车上坡。如M1_2b图所示,当α < 0时,自行
车下坡。
4
[解析](3)抛物线的标准方程为 f(x) = x2/2p
路面是一条抛物线,p 是抛物线的准焦距。由于 f '(x) = x/p,因此仰角为 φ = arctan(x0/p)
5
(11) (12)
(13) (14a) (14b) (11*) (14a*) (14b*) (12*) (13*)
phi=atan(x0/p);
%仰角
th=p*(xx0.*sqrt(1+xx0.^2)+log(xx0+sqrt(1+xx0.^2)))/2;%圆心角
x=x0-xx0./sqrt(1+xx0.^2)-r*sin(th-phi);%横坐标
时,摆线在x/R = 2nπ处出现尖点。如M1_1_1c图所示,当r > R时,即:饰物在车轮之外(例
如火车车轮边缘的情况),摆线在x/R = 2nπ附近出现回旋。
M1_1_1a图 [程序]zqy1_1_1bicycle.m %摆线的轨迹 clear r=input('请输入半径r/R:'); th=linspace(0,2*2*pi,1000); x=th-r*sin(th); y=1-r*cos(th); figure plot([0,th(end)],[0,0]) hold on plot(x,y) axis equal grid on fs=16;
1
φ = arctan[f '(x0)]
(5)
饰物的轨迹方程为
x xC r sin( ) x0
f (x0 ) R r sin( ) 1 [ f (x0 )]2
(6a)
y yC r cos( ) f (x0 )
1
R r cos( )
y=y0+1./sqrt(1+xx0.^2)-r*cos(th-phi); %纵坐标
figure
%建立图形窗口
plot(x0,y0)
%画抛物线
hold on
%保持图像
plot(x,y)
%画摆线
axis equal
%使坐标间隔相等

grid on
%加网格
fs=16;
%字体大小
title('自行车沿着抛物线运动时饰物的轨迹','FontSize',fs)%显示标题
%自行车沿着抛物线运动时饰物的轨迹 clear r=input('请输入相对半径r/R:'); p=input('请输入相对准焦距p/R:'); x0=-20:0.001:20; xx0=x0/p; y0=x0.*xx0/2;