アットウィキロゴ

乱数0

package p4;
 
 
public class pro {
 
  int[] point=new int[31];
  int[] pointx=new int[31];
  String[] data=new String[500];
  int s,number,datanumber;
  double[] mu=new double[11];
  double[] sig=new double[11];
  double[] p=new double[11];
  double[] mux=new double[11];
  double[] sigx=new double[11];
  double[] mus=new double[11];
  double[] sigs=new double[11];
  double[] ps=new double[11];
 
  double[] dmu=new double[11];
  double[] dsig=new double[11];
 
   double[][] px=new double[11][22];
 
    public static void main(String[] args) {
        pro t=new pro();
    }
    pro(){
 
        number=10;
 
 
        for(s=1;s<number+1;s++){
        mu[s]=2*s;
        sig[s]=2;
        p[s]=0.1;
        mux[s]=2*s;
        sigx[s]=2;
        }
 
 
 
    for(s=1;s<11;s++){
    int sx;
    double p1=0;    
    for(sx=1;sx<22;sx++){
    p1=p1+f(sx,mu[s],sig[s]);   
    }    
    for(sx=1;sx<21;sx++){
    px[s][sx]=p[s]*f(sx,mu[s],sig[s])/p1;    
    }
    }
 
 
 System.out.println(sample(1,2));       
 
 
 
    }
 
    double sample(double mumu,double sigsig) {
 
 
 
 
  double pi = Math.PI;
 
  double p1 = 0;
  double p2 = 0;
 
 
  double x1=Math.random();
  double x2=Math.random();
 
  double f1=Math.log(x1);
  double r=Math.sqrt(-2*f1)*Math.cos(2 * pi * x2);
 
  double z=mumu+sigsig*r;
 
 
 return z;
 
}
 
 
 
 
      double f(double x,double mux,double sigx){
double pi,f1,f2;
 
        pi=Math.PI;
 
        f2=Math.sqrt(2*pi*sigx*sigx);
        f1=-(x-mux)*(x-mux)/(2*sigx*sigx);
 
        return Math.exp(f1)/f2;
}
 
 
 
 
 
}
 
最終更新:2016年12月20日 05:06