package io;
public class pro {
double[][] y=new double[48][3];
double[][] c=new double[48][3];
double[][] v=new double[48][3];
double[][] ex=new double[48][3];
double[][] lab=new double[48][3];
double[] pop=new double[48];
double[] rate_c=new double[3];
double[] rate_lab=new double[3];
double[][] io=new double[3][3];
int s;
public static void main(String[] args) {
pro t=new pro();
}
pro(){
io[1][1]=0.1;
io[1][2]=0.2;
io[2][1]=0.3;
io[2][2]=0.05;
int tr;
for(tr=1;tr<48;tr++){
v[tr][1]=98;
v[tr][2]=11.5;
pop[tr]=100;
}
rate_c[1]=0.7;
rate_c[2]=0.05;
rate_lab[1]=0.2;
rate_lab[2]=0.3;
for(tr=1;tr<48;tr++){
rev sub4=new rev();
sub4.io=io;
sub4.v=v;
sub4.y=y;
sub4.makedata(tr);
y=sub4.y;
iox sub=new iox();
sub.io=io;
sub.y=y;
sub.pop=pop;
sub.rate_c=rate_c;
sub.rate_lab=rate_lab;
sub.v=v;
sub.lab=lab;
sub.ex=ex;
sub.c=c;
sub.makedata(tr);
lab=sub.lab;
v=sub.v;
ex=sub.ex;
c=sub.c;
for(s=1;s<3;s++){
System.out.println(v[tr][s]);
}
}
}
}
package io;
public class iox {
double[][] io=new double[3][3];
double[][] y=new double[48][3];
double[][] v=new double[48][3];
double[] d=new double[3];
double[][] c=new double[48][3];
double[][] ex=new double[48][3];
double[][] lab=new double[49][3];
double[] rate_lab=new double[3];
double[] rate_c=new double[3];
double[] pop=new double[48];
void makedata(int tr){
int s,sx;
for(s=1;s<3;s++){
double e1=0;
for(sx=1;sx<3;sx++){
e1=e1+io[s][sx]*y[tr][sx];
}
d[s]=e1;
}
for(s=1;s<3;s++){
v[tr][s]=y[tr][s]-d[s];
}
for(s=1;s<3;s++){
c[tr][s]=rate_c[s]*pop[tr];
}
for(s=1;s<3;s++){
ex[tr][s]=v[tr][s]-c[tr][s];
}
for(s=1;s<3;s++){
lab[tr][s]=rate_lab[s]*y[tr][s];
}
}
}
package io;
public class rev {
double[][] v=new double[48][3];
double[][] y=new double[48][3];
double[][] io=new double[3][3];
double[] b=new double[3];
double[][] a=new double[3][3];
void makedata(int tr){
int s;
for(s=1;s<3;s++){
b[s]=v[tr][s];
}
for(s=1;s<3;s++){
a[s][s]=1;
}
int sx;
for(s=1;s<3;s++){
for(sx=1;sx<3;sx++){
a[s][sx]=a[s][sx]-io[s][sx];
}}
int tx;
for(s=1;s<3;s++){
for(sx=1;sx<3;sx++){
double z=a[sx][s]/a[s][s];
if(sx==s)z=0;
for(tx=1;tx<3;tx++){
a[sx][tx]=a[sx][tx]-z*a[s][tx];
}
b[sx]=b[sx]-z*b[s];
}
}
for(s=1;s<3;s++){
y[tr][s]=b[s]/a[s][s];
}
}
}
最終更新:2016年12月14日 10:46