四个java程序在资源管理器中的位置
1.平均系数增长法求迭代OD表:Pjxs.java
package transportation;
public class Pjxs{
static int m=3;//起点个数,出发地
static int n=3;//讫点个数,目的地
static int k=0;
static Double e=0.01;//收敛标准
static Double[] c=new Double[m+n];/*发生与吸引交通量增长系数,0~m-1为发生交通量增长系数;m~m+n为吸引交通量增长系数;*/
static Double[][] a={
{17.0,7.0,4.0,28.0},
{7.0,38.0,6.0,51.0},
{4.0,5.0,17.0,26.0},
{28.0,50.0,27.0,105.0}
};//初始化现状OD矩阵
static Double[][] b={
{0.0,0.0,0.0,38.6},
{0.0,0.0,0.0,91.9},
{0.0,0.0,0.0,36.0},
{39.3,90.3,36.9,166.5}
};//初始化将来OD矩阵
static Double[][] d={
{0.0,0.0,0.0,0.0},
{0.0,0.0,0.0,0.0},
{0.0,0.0,0.0,0.0},
{0.0,0.0,0.0,0.0}
};//新矩阵,用来存放迭代后的新OD表
/*根据输入的OD表求其发生与吸引交通量增长系数*/
public void qxs(Double[][] a) {
for(int i=0;i<m;i++) {
c[i]=b[i][n]/a[i][n];
}
for(int i=0;i<n;i++) {
c[i+m]=b[m][i]/a[m][i];
}
System.out.print("根据OD表求得发生交通增长系数:\n");
for(int i=0;i<m+n;i++) {
System.out.println(c[i]);
}
}
/*进行收敛判定*/
public void slpd() {
for(int i=0;i<m+n;i++) {
if(c[i]>1+e||c[i]<1-e) {
System.out.println("存在某些项系数误差满足条件!");
js();
qxs(d);
}
}
System.out.println("各项系数误差满足条件!");
}
/*通过平均系数增长法迭代之后的OD表*/
public void js() {
for(int i=0;i<=m;i++) {
for(int j=0;j<=n;j++) {
if(