没有合适的资源?快使用搜索试试~ 我知道了~
列车运行图MATLAB程序.doc
9 浏览量
2022-11-29
12:41:58
上传
评论
收藏 77KB DOC 举报
列车运行图MATLAB程序.doc
资源推荐
资源详情
资源评论










.
.
. .word..
%第一个
%设 6:42 时间为 0 时刻,转换如下。
a1=[6 7 7 7 7 7 7 8 8 9 9 9 9 9 10 10 10 10 10 10 11 11 12 12 12 12 13 13 14 14 15 15 15 16 16 16 16
17 17 17 17 18 18 18 18 19 20 21];
b1=[42 0 10 22 33 40 52 15 30 12 17 22 27 40 5 10 15 28 45 50 33 43 7 13 34 43 5 18 25 43 6 40 45 0
18 35 57 3 19 32 37 2 12 36 42 22 47 6];
c1=7*ones(1,length(a1));
d1=60*(a1-c1)+b1+18;
e1=[7 7 7 8 8 8 8 8 9 9 9 10 10 10 10 10 11 11 11 11 12 12 12 12 13 13 13 14 15 15 15 16 16 16 16 17
17 18 18 18 18 18 19 19 19 20 21 21];
f1=[23 41 58 3 15 28 37 56 11 53 58 10 15 21 46 51 3 9 26 31 14 24 48 54 15 24 46 15 6 24 47 21 26
48 59 23 38 0 7 13 18 43 0 17 30 17 35 47];
g=7*ones(1,length(a1));
h1=60*(e1-g)+f1+18;
%输入经历时间,求众数,得到一个差值矩阵 f。
x1=[41
41
48
41
42
48
45
41
41
41
41
48
48
41
41
41
48
41
41
41
41
41
41
41
41
41
41
57
41

.
.
. .word..
41
41
41
41
48
41
48
41
57
48
41
41
41
48
41
48
55
48
41]';
v1=mode(x1)
j1=x1-v1;
disp(j1)
%矩阵剔除,将 f 中大于 0 的用 0 代替得以矩阵 m,将 f 小于 0 的数代替得一矩阵 n,n,m 都是 1*20
的矩阵。
n1=(j1+abs(j1))/2;
m1=j1;
m1(find(j1>0))=0;
%选取可行列车
z1=zeros(1,d1(end)-d1(1)+1);%〔或 zeros〔1,d〔end〕-d(1)〕〕
y11=d1(1):1:d1(end);
for k=1:length(x1)-1
for i=1:d1(end)-d1(1)+1
if d1(k+1)-y11(i)+m1(k+1)>=5 && y11(i)-d1(k)-n1(k)>=5;
z1(i)=y11(i);
end
end
end
%将满足条件的列车再进展剔除,求数量最大且满足条件的列车
r=0;
g=0;
k=1;
p=1;
l1=zeros(1,length(d1)+50);
t1=zeros(1,d1(end)-d1(1)+1);

.
.
. .word..
for i=1:d1(end)-d1(1)
if z1(i)+1==z1(i+1)
k=k+1;
end
if z1(i)>z1(i+1)
r=floor((k-1)/5)+1;
for u=1:r
g=i-k+1+5*(u-1);
if g>d1(end)-d1(1)+1
g=d1(end)-d1(1)+1;
end
l1(g)=z1(g);
end
k=1;
end
end
l1(find(l1==0))=[];%找到 l 中 0 的位置,并令其为空,即删除
w1=l1+v1;
y13=0.1*ones(1,length(l1));
y14=41*ones(1,length(w1));
for i=1:length(l1)
plot([l1(i),w1(i)],[y13(i),y14(i)]);
hold on
end
y11=0.1*ones(1,length(d1));
y12=41*ones(1,length(h1));
for i=1:length(d1)
plot([d1(i),h1(i)],[y11(i),y12(i)]);
hold on
end
%第二个
%设 6:42 时间为 0 时刻,转换如下。
a2=[8 8 8 10 10 10 11 13 14 15 16 19 20];
b2=[6 44 58 0 24 53 16 32 23 58 28 19 19];
c2=7*ones(1,length(a2));
d2=60*(a2-c2)+b2+18;
e2=[8 9 9 10 10 11 11 13 14 16 16 19 20];
f2=[24 4 16 18 42 11 34 50 43 16 46 37 37];
g=7*ones(1,length(a2));
h1=60*(e2-g)+f2+18;
%输入经历时间,求众数,得到一个差值矩阵 f。
x2=[18

.
.
. .word..
20
18
18
18
18
18
18
20
18
18
18
18
]';
v2=mode(x2)
j2=x2-v2;
disp(j2)
%矩阵剔除,将 f 中大于 0 的用 0 代替得以矩阵 m,将 f 小于 0 的数代替得一矩阵 n,n,m 都是 1*20
的矩阵。
n2=(j2+abs(j2))/2;
m2=j2;
m2(find(j2>0))=0;
%选取可行列车
z2=zeros(1,d2(end)-d2(1)+1);%〔或 zeros〔1,d〔end〕-d(1)〕〕
y21=d2(1):1:d2(end);
for k=1:length(x2)-1
for i=1:d2(end)-d2(1)+1
if d2(k+1)-y21(i)+m2(k+1)>=5 && y21(i)-d2(k)-n2(k)>=5;
z2(i)=y21(i);
end
end
end
%将满足条件的列车再进展剔除,求数量最大且满足条件的列车
r=0;
g=0;
k=1;
p=1;
l2=zeros(1,length(d2)+50);
t2=zeros(1,d2(end)-d2(1)+1);
for i=1:d2(end)-d2(1)
if z2(i)+1==z2(i+1)
k=k+1;
end
if z2(i)>z2(i+1)
r=floor((k-1)/5)+1;
剩余18页未读,继续阅读
资源评论

matlab大师
- 粉丝: 4
- 资源: 8万+

上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制
