列车运行图MATLAB程序
交通运输学Matlab画图
用matlab画交通流密速关系为了作图更明显,这里分别假设畅行速度Sf的数值为1000,阻塞密度Dj的数值为500,这可能和实际情况不符,但是具体运用是可以对程序中的Sf 值和Dj值进行更改。
一、密度、流速和流量关系图及各种假设情况下的图。
图中:左上:V=DS;右上:1931年Green Shields 假设S=Sf(1-D/Dj);左下:1959年Greenberg 假设S=Sf*ln(Dj/D);右下:1961年Underwood 假设。
Matlab的程序如下:Sf=1000;Dj=500;subplot(2,2,1);for D=0:100:Dj;for S=0:10:Sf;V=D*S;plot3(S,D,V,'+r');hold on;end;end;for S=0:100:Sf;for D=0:10:Dj;V=D*S;plot3(S,D,V,'+r');hold on;end;end;Zlabel('流量','FontWeight','bold')Xlabel('流速','FontWeight','bold')Ylabel('密度','FontWeight','bold')title('\fontname{隶书}空间图形')subplot(2,2,2)D=0:10:Dj;S=Sf*(1-D/Dj);plot(S,D,'b*');Zlabel('流量','FontWeight','bold')Xlabel('流速','FontWeight','bold')Ylabel('密度','FontWeight','bold')title('\fontname{隶书} 1934年投影到XY平面') view(-37.5,80)subplot(2,2,3)Sf=1000;Dj=500;D=0:10:Dj;S=Sf*log(Dj./D);plot(S,D,'kh');Zlabel('流量','FontWeight','bold')Xlabel('流速','FontWeight','bold')Ylabel('密度','FontWeight','bold')title('\fontname{隶书} 1959年投影到XY平面')view(-37.5,80)subplot(2,2,4)Sf=1000;Dj=500;D=0:10:Dj;S=Sf*exp(-D/Dj);plot(S,D,'gp');Zlabel('流量','FontWeight','bold')Xlabel('流速','FontWeight','bold')Ylabel('密度','FontWeight','bold')title('\fontname{隶书} 1961年投影到XY平面')view(-37.5,80)二、Green Shields假设涉及到的图形。
train matlab 流程
train matlab 流程MATLAB 是一种用于数值计算的编程语言和环境,常用于机器学习和数据分析。
以下是一个简单的 MATLAB 训练流程,以线性回归为例:1. 数据准备:首先,你需要准备你的数据。
在 MATLAB 中,你可以使用`load` 函数从文件中加载数据,或者使用 `csvread` 或 `readtable` 函数从CSV 文件中读取数据。
```matlabdata = load('your_data_'); % 从 .mat 文件中加载数据```2. 数据预处理:接下来,你可能需要对数据进行一些预处理,例如归一化或标准化。
MATLAB 提供了 `zscore` 函数来进行标准化。
```matlabnormalized_data = zscore(data);```3. 特征选择:然后,你需要选择哪些特征用于训练模型。
你可以选择所有特征,或者只选择一部分特征。
4. 模型训练:接下来,你可以使用 MATLAB 的机器学习工具箱来训练你的模型。
对于线性回归,你可以使用 `fitlm` 函数。
```matlabX = normalized_data(:, 1:end-1); % 假设最后一列是目标变量Y = normalized_data(:, end);model = fitlm(X, Y);```5. 模型评估:训练完模型后,你需要评估它的性能。
你可以使用一些度量指标,例如均方误差 (MSE)。
```matlabY_predicted = predict(model, X);mse = mean((Y - Y_predicted).^2);```6. 模型优化:如果模型性能不佳,你可能需要优化你的模型。
你可以通过添加或删除特征、更改模型类型、调整模型参数等方式来实现。
7. 模型应用:最后,你可以使用训练好的模型来预测新数据。
以上是一个简单的 MATLAB 训练流程,具体步骤可能会根据你的数据和任务而有所不同。
matlab编程方法构建道路场景程序
MATLAB编程方法构建道路场景程序一、背景介绍随着交通运输行业的发展,道路场景模拟已经成为了交通工程领域的一个重要研究方向。
利用计算机模拟道路场景可以帮助交通工程师进行交通流量预测、路段规划和智能交通系统的设计等工作。
MATLAB 作为一种功能强大的高级编程语言,可以很好地实现道路场景的模拟和分析。
二、道路场景程序的构建步骤构建道路场景程序需要经过以下步骤:1. 确定道路场景需求在进行道路场景程序的构建之前,首先需要明确道路场景的需求。
这包括道路长度、车道数量、车辆类型等信息,这些信息将直接影响到程序的设计和实现。
2. 绘制道路场景图利用MATLAB的绘图功能,可以实现道路场景图的绘制。
可以使用线段、圆等基本图形来绘制道路、交通标志和路口等。
也可以添加文字标注和颜色填充来对道路场景进行说明和美化。
3. 模拟车辆运动通过编写车辆运动的模拟算法,可以实现车辆在道路场景中的运动轨迹。
这涉及到车辆的加速度、速度等物理特性的模拟,同时还需要考虑车辆之间的碰撞和超车等情况。
4. 添加交通信号灯控制在道路场景程序中,可以添加交通信号灯的控制系统。
通过编写相应的程序,可以实现交通信号灯的变化和车辆的停等行为,进一步提高道路场景程序的仿真度。
5. 数据分析和可视化利用MATLAB的数据分析和可视化功能,可以对道路场景程序的仿真结果进行分析和展示。
例如可以绘制车辆流量随时间的变化曲线,或者对道路拥堵情况进行热力图分析等。
6. 优化和改进在完成道路场景程序的基本构建之后,可以根据实际需求对程序进行优化和改进。
这包括提升程序的运行速度、增加仿真精度和改进用户界面等。
三、MATLAB编程方法1. MATLAB基本语法在编写道路场景程序时,需要熟悉MATLAB的基本语法和程序结构。
这包括变量定义、逻辑判断、循环控制和函数定义等内容。
熟练掌握这些基本知识对于编写道路场景程序至关重要。
2. MATLAB绘图功能MATLAB具有强大的绘图功能,可以实现道路场景图的绘制和美化。
一种列车运行可视化分析软件的设计与实现
一种列车运行可视化分析软件的设计与实现摘要:列车运行过程中,不同的列车操纵指令直接影响列车的运行速度、安全性和平稳性等运行品质的优劣,需要通过数据记录以及离线数据分析来制定优化操纵指令。
针对记录数据繁杂,人工分析时间长、效率低的问题,本文提出一种针对列车运行数据的可视化分析软件的设计与实现方法。
本软件可直观分析列车运行速度曲线,并将列车运行速度曲线与标准运行曲线进行对比,或进行不同车次间的列车运行速度曲线对比,根据直观分析和差异化分析,快速发现列车操纵指令序列的不合理处,进而对操纵指令序列的改进和优化提供指导建议。
关键词:列车运行分析;运行曲线绘制;Iocomp控件;IplotDesign and Implementation of a Visual Analysis Software for Train OperationLi Tiebing,Tang Wei,Xiong ChaoKun(Zhuzhou CRRC Time Electric Co., Ltd., Zhuzhou,Hunan 412001)Abstract:In the process of train operation, different train operation instructions directly affect the quality of train operation, such as running speed, safety and stability. It is necessary to formulate optimized operation instructions through data recording and offline data analysis. In view of the complicated data, long manual analysis time and low efficiency, this paper proposes a design and implementation method of visual analysis software for train operation data. This software can directly analyze the train speed curve, compare the standard train speed curve with the train speed curve, quickly find the unreasonable train operation instruction sequence,and provide guidance for the improvement and optimization of thecontrol instruction sequence.Keywords:Train operation analysis; Speed curve drawing; Iocomp ; Iplot通信作者:李铁兵,男,湖南娄底,19880918,汉,硕士,工程师,从事机车自动驾驶系统开发工作。
汽车运用作业matlab程序
1.31)绘制驱动力与行驶阻力平衡图利用Matlab画图,具体语句如下:n=600:1:4000;Ttq=-19.313+295.27*n/1000-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; io=5.83;t=0.844;r=0.367;ig1=5.56;ua=0.377*r*n/(ig1*io);Ft1=Ttq*ig1*io*t/r;plot(ua,Ft1)hold on;n=600:1:4000;Ttq=-19.313+295.27*n/1000-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; io=5.83;t=0.844;r=0.367;ig2=2.769;ua=0.377*r*n/(ig2*io);Ft2=Ttq*ig2*io*t/r;plot(ua,Ft2)hold on;n=600:1:4000;Ttq=-19.313+295.27*n/1000-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; io=5.83;t=0.844;r=0.367;ig3=1.644;ua=0.377*r*n/(ig3*io);Ft3=Ttq*ig3*io*t/r;plot(ua,Ft3)hold on;n=600:1:4000;Ttq=-19.313+295.27*n/1000-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; io=5.83;t=0.844;r=0.367;ig4=1.00;ua=0.377*r*n/(ig4*io);Ft4=Ttq*ig4*io*t/r;plot(ua,Ft4)hold on;n=600:1:4000;Ttq=-19.313+295.27*n/1000-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4; io=5.83;t=0.844;r=0.367;ig5=0.793;ua=0.377*r*n/(ig5*io);Ft5=Ttq*ig5*io*t/r;plot(ua,Ft5)hold on;m=3880;f=0.012;g=9.8;CdA=2.77;u=0:1:120;Ff=m*g*f;Fw=CdA*u.^2/21.15;Fr=Ff+Fw;Ft5=Ttq*ig5*io*t/r;Ff=m*g*f;Fw=CdA*u.^2/21.15;Fr=Ff+Fw;plot(u,Fr)运行生成图像如下:2)求汽车最高车速,最大爬坡度及克服该坡度时相应的附着率当Ft=Ff+Fw时,汽车处于稳定状态,并达到最高车速由图可知Umax=101km/h最大爬坡度及附着率:一档时有最大爬坡度,由驱动力与阻力图当ua=8.037km/h时: Gsin错误!未找到引用源。
动车组运用计划编制问题及其优化
动车组运用计划编制问题及其优化罗荣辉;王焕民【摘要】在不固定区段运行方式下,文章以动车组接续时间最短和动车组使用均衡为优化目标,将动车组运用计划问题归纳为特殊的旅行商问题,建立运用计划编制的数学模型,并利用蚁群算法进行求解.最后结合武广铁路进行实例验证,结果表明该算法可有效求解动车组运用计划.【期刊名称】《高速铁路技术》【年(卷),期】2017(008)004【总页数】4页(P66-69)【关键词】动车组运用计划;旅行商问题;蚁群算法【作者】罗荣辉;王焕民【作者单位】兰州交通大学, 兰州730070;兰州交通大学, 兰州730070【正文语种】中文【中图分类】U292.35近年来,我国高速铁路迅速发展,给人们出行带来了极大的便利,也促进了国民经济的发展。
与此同时,动车组作为高速铁路的载客工具,其运用计划的编制也被越来越多的人研究。
现今,我国动车组运用计划的编制仍是传统的手工编制[1],这既产生了大量重复工作,降低了编制的效率,又使得动车组的利用率不能达到最大,浪费了资源。
国内外很多学者对动车组运用问题做了深入研究,动车组运用计划一般是基于给定的列车运行图,综合考虑动车组的接续运行与检修计划转,建立数学模型并运用蚁群算法[2-4]、遗传算法[5]、模拟退火算法[6]等求解。
本文将动车组运用计划编制问题归纳为一种特殊的旅行商问题,根据运用计划特点建立数学模型,以动车组接续总时间最小和使用均衡为目标函数,并运用蚁群算法进行求解,最后以武广线为例进行算法验证。
动车组运用计划是在列车运行图给定的前提下,根据动车组检修规程的规定,对动车组在什么时间、在哪个车站、进行哪种类型的检修作出具体安排。
客运专线列车运行如图1所示,动车组运用计划如图2所示。
动车组运用计划按使用模式分为固定区段和不固定区段两种运用模式。
固定运用模式是指动车组只能在指定线路上运行,如图3所示,动车组只能担当A-C区段的列车任务。
不固定运用模式是指动车组在完成指定任务后,可根据情况担当区段的列车任务,如图4所示,动车组担当完G2→G3运行线后,可继续担当G5→G6→G8运行线,而不需要固定在A-B区段内。
车站列车运行数量时间序列模型分析
车站列车运行数量时间序列模型分析通过给定的数据,判断数据的平稳性和季节性,采取相应的措施,消除这些影响,然后利用B-J方法和P-W方法对所选的数据进行分析,进行模型的识别,阶数的识别,参数的拟合和适应性检验,最后再利用所留数据进行预测。
根据预测结果对求得的模型进行判断。
本文中已知的是某车站1993-1997年各月的列车运行数量60个,单位:千列/千米,具体数据见附录。
一、数据的平稳性判断利用matlab画出数据的二维图,如下图(1),程序(1)见附录图(1)由上图我们可以看到数据是不平稳的,因此需要对数据进行平稳化处理,利用一阶差分的方法得到52个数据,再次利用matlab画图,见图(2),程序(2)见附录图(2)有图(2)我们可以初步判断xt序列是平稳的,再对稳化后的数据进行零均值处理,得到的数据见附录。
二、利用B-J方法建模(1)模型的识别如果一个时间序列是由某一类模型生成,理论上它就应该具有相应的自相关特征,因而我们可以计算出平稳时间序列的样本自相关函数和样本偏自相关函数,将其特性与不同类型的序列的理论自相关函数和偏自相关函数的特性进行比较,进而初步判断序列x t所适合的模型类型。
在求样本的自相关函数和偏自相关函数时,利用了Eviews,得到如下数据下面利用|k i ρ+|≤2121[(12)/N]ml l ρ=+∑判断样本自相关函数的截尾性取]=7,当m=1时,1122221(12)(12*0.679)/0.192ρ+=+=在(k 2,3,4,5,6,7,8)k ρ=中满足|k ρ|<0.192的占6/7=85.7%>68.3%,因此k ρ一步截尾,可初步判断差分后的序列适合MA(1)模型。
(2) 阶数的识别图(4)由图(4)可以看出MA(1)模型的剩余平方和为73855.52图(5)由图(5)可以看出MA(2)模型的剩余平方和为73187.38图(6)由图(6)可以看出MA(3)的剩余平方和为67346.46图(7)由图(7)可知,剩余平方和为:66468.54图(8)由以上的五个图形可以看出对于零均值化平稳后的序列拟合1-5阶的MA 模型剩余平方和:73855.52 73187.38 67346.46 66468.54 68804.69MA(5)的剩余平方和超过了MA (4)的剩余平方和,因此从MA (4)考虑模型阶数是否可以降低对于MA (3)和MA (4)模型=0.647取α=0.05查F 分布表可得,F(1,49)大约为4.03,显然F<F(1,49)所以在α=0.05的显著性水平下MA(3)和MA(4)没有显著性差异。
城市轨道交通系统单列车能耗优化
城市轨道交通系统单列车能耗优化余后伦;熊舒威;郭嫚【摘要】The low-carbon environmental protection and energy-saving emission reduction are the future development trend of railway.To optimize the energy-saving operation of the train, the train is treated as a single particle model and approximately considered as only running the three stages of traction, coasting and braking.On this basis, this paper establishes a typical non-linear programming model for optimizing the energy consumption of single train in the urban rail transit system, uses the sequence quadratic programming (SQP) algorithm to calculate the optimization and gives an example to verify its feasibility.%低碳环保、节能减排是铁路未来的发展趋势,为减少城市轨道列车的能耗,将列车处理为单质点模型,近似地认为城市轨道列车在两站间只经历牵引、惰行和制动3个阶段,在此基础上建立具有代表性的城市轨道交通系统单列车能耗优化的非线性规划模型,利用序列二次规划法(SQP)优化求解,并给出算例验证其可行性.【期刊名称】《山东交通学院学报》【年(卷),期】2017(025)001【总页数】7页(P14-20)【关键词】城市轨道交通;单质点模型;阶段;能耗;序列二次规划法【作者】余后伦;熊舒威;郭嫚【作者单位】西南交通大学交通运输与物流学院,四川成都 610031;西南交通大学交通运输与物流学院,四川成都 610031;西南交通大学交通运输与物流学院,四川成都 610031【正文语种】中文【中图分类】U268.6低碳环保、节能减排是铁路未来的发展趋势,列车运行过程中的能耗问题愈发引人关注。
MATLAB与C_混合编程在列车动力学后处理计算中的应用
———————————————收稿日期:2009-07-23基金项目:国家自然科学基金(50705079);973项目(2007CB714701);863项目(2006AA04Z406) MATLAB 与C#混合编程在列车动力学后处理计算中的应用蒋益平,池茂儒,孟宪全,柴秀英(西南交通大学 牵引动力国家重点实验室,四川 成都 610031)摘要:详细介绍了MATLAB 和C#.NET 混合编程的实现方法。
将C#强大的界面开发能力与MATLAB 强大的数值计算和图形显示能力相结合,开发了适合于处理动力学计算所得时间载荷历程文件从而实现动力学计算和强度计算“无缝”结合的一个简单有效的数据处理软件。
最后通过对列车动力学计算所得到的时间载荷历程文件进行处理验证了该数据处理软件软件的可行性。
关键词:C#;MATLAB ;混合编程;动力学后处理;时间载荷历程中图分类号:TP391 文献标识码:A 文章编号:1006-0316 (2009) 12-0029-05Application of MATLAB and C# mixed-language programmingin post-processing of train dynamics calculationJIANG Yi-ping ,CHI Mao-ru ,MENG Xian-quan ,CHAI Xiu-ying(Traction Power State Key Laboratory ,Southwest Jiaotong University ,Chengdu 610031,China)Abstract :The implementation method of mixed-language programming using C# and MATLAB is described in detail. Combining the powerful interface development capabilities of C# with the powerful numerical computation and graphics display of MATLAB, a simple and effective data-processing software for processing the time-load history which got from dynamics calculation thus to combine the dynamics and strength calculation closely has been developed. Finally, the feasibility of this software is verified by processing the time-load history data got from a train dynamics calculation.Key words :C#;MATLAB ;mixed-language programming ;dynamics post-processing ;time-load history随着近几年高速、重载铁路的发展,我国铁路进入了快速发展的时期。
MATLAB 综合实验高铁牵引供电系统运行数据分析
实验名称:MATLAB 综合实验——高铁牵引供电系统运行数据分析实验目的:1. 理解MATLAB 在解决电气科学复杂工程问题中的应用;2. 掌握本实验复杂工程模型的建立、仿真与分析方法。
实验原理:1.基本原理综合运用教材书上的知识,以及本实验原理,对综合问题进行复杂工程模型的建立,仿真和分析。
2.谐波定义谐波(harmonic wave),从严格的意义来讲,谐波是指电流中所含有的频率为基波的整数倍的电量,一般是指对周期性的非正弦电量进行傅里叶级数分解,其余大于基波频率的电流产生的电量。
3. 电能质量标准及电能质量计算方法[1]中华人民共和国国家标准. GB/T 14549-1993 电能质量公用电网谐波.1993.[2]中华人民共和国国家标准. GB/T 15543-2008 电能质量三相电压允许不平衡度. 2008.第h 次谐波电压含有率HRU h计算公式:HRUh=Uh/U1 ×100 %式中:U h 为第h 次谐波电压(方均根值);U1 为基波电压(方均根值)。
第h 次谐波电流含有率HRI h计算公式:HRIh= Ih/I1 ×100 %式中:I h 为第h 次谐波电流(方均根值);I1 为基波电流(方均根值)。
.谐波电压含量U H计算公式:谐波电流含量I H计算公式:电压总谐波畸变率THD u计算公式:THDU =UH/U1×100%电流总谐波畸变率THD i计算公式:THDi= Ih/I1×100%4.离散傅里叶变换与快速傅里叶变换1) 傅里叶变换:它可以将一个以时间t 为自变量的连续的信号x(t)转换为以频率为自变量的函数X(j f),该函数是复数形式的2) 离散傅里叶变换:离散傅里叶变换,用于离散信号分析,是为适应于数字计算机计算的傅里叶DFT 处理信号的步骤可以简要归纳如下:①在得到一段信号后,首先得到的信息是该信号的时间长度 T。
②以一定的采样频率 Fs 进行采样,可以得到一个离散序列 x(n),其长度为 N=T*Fs。
基于Matlab模拟城轨列车紧急制动曲线图
基于Matlab模拟城轨列车紧急制动曲线图作者:沈效良来源:《电脑知识与技术》2012年第10期摘要:该文通过Matlab计算城市轨道车辆在紧急制动情况下的制动距离,并模拟出相应的距离-速度曲线图。
关键词:Matlab;紧急制动;曲线图中图分类号:TP311文献标识码:A文章编号:1009-3044(2012)10-2423-02The Emergency Braking Curve Graph of The City Rail Vehicle Based on MatlabSHEN Xiao-liang(Suzhou Vocational University, Suzhou 215104, China)Abstract: This paper describes the calculation of the braking distance in an emergency braking situation by Matlab, and draw the corresponding distance-speed curve graph.Key words: Matlab; emergency brake; curve graph由制动装置产生的与列车运行方向相反的外力,称为“制动力”。
“制动”和“制动装置”均可俗称为“闸”。
列车制动在操纵上按用途可分为“常用制动”和“紧急制动”两种。
在正常情况下为调节或控制列车速度包括进站停车所施行的制动,称为“常用制动”,它的特点是作用比较缓和而且制动力可以调节。
在紧急情况下为使列车尽快停住所施行的制动,称为“紧急制动”。
它的特点是作用比较迅猛而且要把列车制动能力全部用上。
从施行制动的瞬间起,至列车速度降为零的瞬间止,列车驶过的距离,称为制动距离。
整个列车制动过程可以分成两段:第一段是从施行制动到各车轮的闸瓦压力提升到相应值的空走过程,列车在空走过程内靠惯性惰行的距离称为空走距离,以sk表示;第二段是各车轮的闸瓦压力提升到相应值至列车停止的有效制动过程,也叫实制动过程,在全部制动力和运行阻力的作用下急剧减速所运行的距离,称为有效制动距离或实制动距离,以sz表示1基于Matlab的程序设计以上海明珠线轻轨车辆为例,已知列车质量333 460kg,回转质量25 200kg,求该车在平直轨道上以80km/h时施行紧急制动,至列车静止的制动距离,并绘制制动曲线图。
列车运行控制速度曲线
实验一:绘制列车限制速度曲线实验报告一.实验目标已知:列车在一段长1500米的试验线上运行。
列车全长55米,最大牵引加速度为1.7m/s/s,最大制动减速度为1.5m/s/s,牵引切断延时6秒。
列车运行起点在60米处,运行方向沿着里程增加的方向运行。
安全要求如下:●全线要求限速100公里每小时;●试验时为保证安全,要求列车运行时不得超过1366米处。
问题:请编程计算列车在线路上各点的安全运行速度(每隔一厘米计算一个速度点)。
安全运行速度是指:为保证行车安全,当列车速度超过此速度值后,必须采取制动措施。
本次实验的目标是生成一条速度曲线,对这条速度曲线有以下几点要求:1.全线速度不超过100公里每小时即27.78米每秒2.在1366米之前列车需减速到0二.实验过程本次问题的主要难点在速度曲线的生成。
1.速度曲线的生成首先列车在得到减速指令时,有6s的牵引力切断延时,考虑最不利的情况,在得到减速指令时,列车处于加速阶段,加速度a+=1.7m s2,加速时间t=6s,则空走距离S kou=V0t+12a+t2…………………………………………………………①之后列车视为做匀减速直线运动,减速度a−=1.5m s2,初速度为V0+a+t,末速度为0,则刹车距离S sℎa=V0+a+t22a−…………………………………………………………②根据要求,有S≥S kou+S sℎa其中S是列车距防护点的距离,取最不利情况即S=S kou+S sℎa………………………………………………………………③带入数据,根据①②③可得其防护速度V0与当前列车距防护点距离S的关系式为V0=−38.4+691.2+12S2当V0≥27.78时,V0=27.782.程序的编写使用matlab进行编程,算法流程如下图:限速计算函数:function [ v ] = xiansu( sz,s,vt )v=-19.2+0.5*sqrt(691.2+12*(sz-s)); if v> vtv= vt;endif v<=0v=0;endend其中sz为防护点位置,s为当前列车位置,vt为列车限速,v为防护速度。
计算机绘制列车运行图的设计方法
计算机绘制列车运行图的设计方法
柳进
【期刊名称】《铁道运输与经济》
【年(卷),期】1997(019)005
【摘要】列车运行图用手工绘制费时,费力,利用电子计算机采用C或C++语言能够编制出精练,快捷的程序代码,通过编制AUTOCAD图形交换文件函数和宏命令。
即可进行列车运行图的绘制。
【总页数】3页(P30-32)
【作者】柳进
【作者单位】铁道部科学研究院运输及经济研究所
【正文语种】中文
【中图分类】U292.41
【相关文献】
1.使用JSP+VML动态绘制列车运行图
2.基于面向对象设计方法的列车运行图绘制
3.应用面向对象程序设计方法实现列车运行图绘制
4.用计算机绘制列车运行图
5.我国计算机编制铁路列车运行图技术迈出历史性一步由交通运输与物流学院倪少权教授主持的“基于群体协同的铁路列车运行图编制系统”荣获中国铁道学会科学技术奖一等奖
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
%第一个%设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=[414148414248454141414148484141414841414141414141414141574141414141484148415748414141484148554841]';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)-1for i=1:d1(end)-d1(1)+1if d1(k+1)-y11(i)+m1(k+1)>=5 && y11(i)-d1(k)-n1(k)>=5;z1(i)=y11(i);endendend%将满足条件的列车再进行剔除,求数量最大且满足条件的列车r=0;g=0;k=1;p=1;l1=zeros(1,length(d1)+50);t1=zeros(1,d1(end)-d1(1)+1);for i=1:d1(end)-d1(1)if z1(i)+1==z1(i+1)k=k+1;endif z1(i)>z1(i+1)r=floor((k-1)/5)+1;for u=1:rg=i-k+1+5*(u-1);if g>d1(end)-d1(1)+1g=d1(end)-d1(1)+1;endl1(g)=z1(g);endk=1;endendl1(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 onendy11=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 onend%第二个%设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=[18201818181818182018181818]';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)-1for i=1:d2(end)-d2(1)+1if d2(k+1)-y21(i)+m2(k+1)>=5 && y21(i)-d2(k)-n2(k)>=5;z2(i)=y21(i);endendend%将满足条件的列车再进行剔除,求数量最大且满足条件的列车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;endif z2(i)>z2(i+1)r=floor((k-1)/5)+1;for u=1:rg=i-k+1+5*(u-1);if g>d2(end)-d2(1)+1g=d2(end)-d2(1)+1;endl2(g)=z2(g);endk=1;endendl2(find(l2==0))=[];%找到l中0的位置,并令其为空,即删除w2=l2+v2;y23=41*ones(1,length(l2));y24=59*ones(1,length(w2));for i=1:length(l2)plot([l2(i),w2(i)],[y23(i),y24(i)]);hold onendy21=41*ones(1,length(d2));y22=59*ones(1,length(h1));for i=1:length(d2)plot([d2(i),h1(i)],[y21(i),y22(i)]);hold onend%第三个%设6:42时间为0时刻,转换如下。
a3=[7 8 9 9 10 10 11 11 12 13 14 15 16 16 17 18 19 19 19 20];b3=[50 26 6 18 20 50 13 36 56 52 52 51 28 48 26 10 10 39 58 39]; c3=7*ones(1,length(a3));d3=60*(a3-c3)+b3+18;e3=[8 8 9 9 10 11 11 11 13 14 15 16 16 17 17 18 19 20 20 21];f3=[13 49 31 41 43 13 36 59 19 15 16 21 51 11 49 33 33 2 21 2]; g=7*ones(1,length(a3));h3=60*(e3-g)+f3+18;%输入经历时间,求众数,得到一个差值矩阵f。
x3=[2323252323222323232324302322232323232323]';v3=mode(x3)j3=x3-v3;disp(j3)%矩阵剔除,将f于0的用0代替得以矩阵m,将f小于0的数代替得一矩阵n,n,m都是1*20的矩阵。
n3=(j3+abs(j3))/2;m3=j3;m3(find(j3>0))=0;%选取可行列车z3=zeros(1,d3(end)-d3(1)+1);%(或zeros(1,d(end)-d(1)))y31=d3(1):1:d3(end);for k=1:length(x3)-1for i=1:d3(end)-d3(1)+1if d3(k+1)-y31(i)+m3(k+1)>=5 && y31(i)-d3(k)-n3(k)>=5;z3(i)=y31(i);endendend%将满足条件的列车再进行剔除,求数量最大且满足条件的列车r=0;g=0;k=1;p=1;l3=zeros(1,length(d3)+50);t3=zeros(1,d3(end)-d3(1)+1);for i=1:d3(end)-d3(1)if z3(i)+1==z3(i+1)k=k+1;endif z3(i)>z3(i+1)r=floor((k-1)/5)+1;for u=1:rg=i-k+1+5*(u-1);if g>d3(end)-d3(1)+1g=d3(end)-d3(1)+1;endl3(g)=z3(g);endk=1;endendl3(find(l3==0))=[];%找到l中0的位置,并令其为空,即删除w3=l3+v3;y33=59*ones(1,length(l3));y34=82*ones(1,length(w3));for i=1:length(l3)plot([l3(i),w3(i)],[y33(i),y34(i)]);hold onendy31=59*ones(1,length(d3));y32=82*ones(1,length(h3));for i=1:length(d3)plot([d3(i),h3(i)],[y31(i),y32(i)]);hold onend%第四个%设6:42时间为0时刻,转换如下。
a4=[7 8 8 8 8 8 9 9 9 10 10 11 11 11 13 13 13 13 15 15 16 16 16 18 18 19 20 20];b4=[0 0 21 28 48 57 9 15 25 51 59 16 39 57 21 32 42 56 7 47 5 24 54 4 36 42 9 39];c4=7*ones(1,length(a4));d4=60*(a4-c4)+b4+18;e4=[7 8 8 8 9 9 9 9 10 11 11 11 12 12 13 14 14 14 15 16 16 16 17 18 19 20 20 21];f4=[27 27 49 56 16 32 37 42 0 19 27 44 15 25 49 0 10 24 35 15 33 59 29 31 4 10 37 7]; g=7*ones(1,length(a4));h4=60*(e4-g)+f4+18;%输入经历时间,求众数,得到一个差值矩阵f。