采用matlab编程:曲线运动。高手请指教!!!
小孩和玩具的问题
题目.一个小孩借助长度为a的硬棒,拉或推某玩具.此小孩沿某曲线行走,计算并画出玩具的轨迹.
解:假设小孩拉的玩具如图1所示,由于整个推拉过程中(图2),玩具走的轨迹,只与C在地面上的投影点B的轨迹有关。所以我们把模型简化为图3。
假设1:小孩B点所走曲线为沿着小
棒a的方向(直线AB),则玩具A走的轨
迹为直线(沿AB方向的)。此时,小孩行
走的速度与玩具的速度相同。
假设2:小孩B点所走曲线为一个A点
为心的圆,则玩具不动。此时,如果小孩B
行走的速度为v,而玩具A的速度却为零,
这说明,在推玩具的过程中,小孩B的速度
与玩具A的速度不同。
由此特殊情况,我们可以看到,当小孩B行走的路线是曲线时,小孩B的速度与玩具A的速度是不同的。
假设3:如果小孩B点走的轨迹是一条曲线c(图4),不妨设曲线的轨迹方程是一个与时间t有关的参数方程。而玩具A走的轨迹为曲线c′。
则t时刻小孩的坐标为,
玩具的坐标为。
(1)t时刻,由于的距离为a,由于小孩拉的是硬棒,在小孩拉玩具的过程中,假设棒与地面的角度不变,因此有:
(2)设玩具在A¢点的速度,则的方向应为玩具所走曲线c¢的切线方向,而玩具始终是沿着小棒A¢B¢的方向,所以:
又,由向量知识有
小孩所走曲线为一个以原点为圆心半径为R的圆时,小孩所走路径的曲线方程为:
利用MATLAB软件求解上述微分模型,程序如下:
函数文件:
建立函数文件fUn5.m
functiondy=fun5(t,y)
dy=[(-5*sin(t)*(5*cos(t)-y(1))+5*cos(t)*(5*sin(t)-y(2)))*(5*cos(t)-y(1))./((5*cos(t)-y(1))^2+(5*sin(t)-y(2))^2)
clear,clc
closeall
[t,y]=ode45(fun5,[0,100],[10,0]);
X=5*cos(t);
Y=5*sin(t);
figure(1)
plot(X,Y,r.)
holdon
plot(y(:,1),y(:,2),*)
%玩具的初始位置为(12,0)
t0=0;tf=100;
[t,y]=ode45(fun5,[t0,tf],[12,0]);
X=5*cos(t);
Y=5*sin(t);
figure(2)
plot(X,Y,r.)
holdon
plot(y(:,1),y(:,2),*)
%玩具的初始位置为(8,0)
t0=0;tf=100;
[t,y]=ode45(fun5,[t0,tf],[8,0]);
X=5*cos(t);
Y=5*sin(t);
figure(3)
plot(X,Y,r*)
holdon
plot(y(:,1),y(:,2),.)
生产计划安排matlab 编程训练
我就是这个专业的大三学生,计算机要求确实挺高要学C语言,Matlab编程语言等等。不过我觉得你没必要着急,不用急提前着培训什么的。到了学校上课听好,课后多练习就好了。自己肯钻研才是真的。
BP神经网络MATLAB编程。
MATLAB编程题
做个测试,希望有所帮助。 代码 % by lyqmath% 一个两位数,用2除余1,用3除余2,用4除余3,用5除余4,用6除余5,求编程此clc; clear all; close all;for i = 10 : 99if rem(i, 2) == 1 && ...rem(i, 3) == 2 && ...rem(i, 4) == 3 && ...rem(i, 5) == 4 && ...rem(i, 6) == 5disp(i);endend 结果59 >>