Example #1
0
 public void computeDistribution(PlotFrame data) {
   int numberOfBins = 20;
   int numberOccupied = 0;
   double occupied[] = new double[numberOfBins];
   double number[] = new double[numberOfBins];
   double binSize = 1.0 / numberOfBins;
   int minX = Lx / 3;
   int maxX = 2 * minX;
   for (int x = minX; x <= maxX; x++) {
     for (int y = 0; y < Ly; y++) {
       int bin = (int) (numberOfBins * (site[x][y] % 1));
       number[bin]++;
       if ((site[x][y] > 1) && (site[x][y] < 2)) {
         numberOccupied++;
         occupied[bin]++;
       }
     }
   }
   data.setMessage("Number occupied = " + numberOccupied);
   for (int bin = 0; bin < numberOfBins; bin++) {
     data.append(0, (bin + 0.5) * binSize, occupied[bin] / number[bin]);
   }
 }