package rate;
public class pro {
double[] sigx=new double[11];
double[] mux=new double[11];
double[] p=new double[11];
double[] mu=new double[11];
double[] sig=new double[11];
int datanumber,number;
double[] avg=new double[101];
double[] delta=new double[101];
double[] ps=new double[11];
double deltas;
double[][] pxs=new double[11][2001];
double[] ratex=new double[11];
public static void main(String[] args) {
pro r=new pro();
}
pro(){
int sx,s;
int tr=5;
int y,y1,y2;
y1=50*tr-50;
y2=50*tr;
if(y2>1000)y2=2000;
for(s=1;s<number+1;s++){
double p1=0;
for(y=y1;y<y2;y++){
p1=p1+p[s]*f(y,mu[s],sig[s]);
}
ps[s]=p1;
}
for(y=1;y<2000;y++){
double[] px=new double[11];
for(s=1;s<number+1;s++){
px[s]=ps[s]*f(y,mux[s],sigx[s]);
}
double p1=0;
for(s=1;s<number+1;s++){
p1=p1+px[s];
}
for(s=1;s<number+1;s++){
pxs[s][y]=f(y,avg[tr],delta[tr])*px[s]/p1;
}
}
for(s=1;s<number+1;s++){
double p1=0;
for(y=1;y<2000;y++){
p1=p1+pxs[s][y]*f(y,avg[tr],delta[tr]);
}
ratex[s]=p1;
}
double p2=0;
for(s=1;s<number+1;s++){
p2=p2+ratex[s];
}
for(s=1;s<number+1;s++){
ratex[s]=ratex[s]/p2;
}
}
double f(double x,double mup,double sigp){
double pi,f1,f2;
pi=Math.PI;
f2=Math.sqrt(2*pi*sigp*sigp);
f1=-(x-mup)*(x-mup)/(2*sigp*sigp);
return Math.exp(f1)/f2;
}
}
最終更新:2017年01月12日 07:10