求解!! c++ 列车移动闭塞控制列车运行生成速度距离曲线
关于列车移动闭塞控车模型的设计,就是前后追车。通过牵引计算控制列车运行,有三个工况,牵引、惰行、制动。每个框架都有,就是不知道要怎么写,木有编程经验。。。这里有一个最简单的,请问怎么把生成的数组数据画成曲线?
程序代码:/*class Block
{
public:
int ID;
float length;
int LRBG;
Block(int a,float b,int c)
{
ID=a;
length=b;
LRBG=c;
}
};
//Block::Block(int a,float b,int c)
//定义对象
Block b0(100,2000,500);
Block b1(101,2000,501);
Block b2(102,2000,502);
Block b3(103,2000,503);
Block b4(104,2000,504);
Block b5(105,2000,505);
Block b6(106,2000,506);
Block b7(107,2000,507);
Block b8(108,2000,508);
*/
double v_current,v_limit,s[150001],a_limit;
void Brake()
{
int t;
t=1.0/v_current;
v_current=v_current-a_limit*t;
if(v_current<0)
v_current=0;
}
/*void Traction()
{
}
void Coasting()
{
}*/
#include<IOSTREAM.H>
void main()
{
int i=0,j=0,S2,s;
double S1,v1=25000.00/9.00;
int a[150001];
double b[150001];
S1=v1*v1/2/a_limit;
S2=int(136600.00-S1);
for(s=0;s<=150000;s++)
{
a[i++]=s;
if(s<6000) v_current=0; //列车从60m处开始运行,车长可以忽略
else if(s>=60&&s<S2) //限速100km/h
{
v_current=v_limit=25000.00/9.00;
}
else if(s>=S2) //限速0km/h,即车在1366m处停止
{
v_limit=0;
if(v_current>v_limit)
Brake();
}
b[j++]=v_current;
}
}






