public boolean calcWeights() {
		boolean allAtMin = true;
		double total = 0;
		if (this.getAlpha() != 0.0) {
			for (int i=0; i < this.trackLocsByIndex.length; i++) {
				Integer location = this.trackLocsByIndex[i];
				this.sickEdgeWeight[i] = this.calcUnNormWeight(location);
				total += this.sickEdgeWeight[i];
				if (this.sickEdgeWeight[i] != Double.MIN_VALUE)
					allAtMin = false;
			}
			if (total > 0.0) {
				for (int i=0; i < this.trackLocsWeight.length; i++) {
					this.sickEdgeWeight[i] = this.sickEdgeWeight[i] / total;
					if (this.sickEdgeWeight[i] <= 0.0) this.sickEdgeWeight[i] = Double.MIN_VALUE;
				}
			}
		}
		for (int i=0; i < this.trackLocsWeight.length; i++) {
//			if (this.varAlpha)
//				this.calcAlpha();
			this.trackLocsWeight[i] = (MonBuildClose.this.getAlpha()*this.sickEdgeWeight[i]) + ((1.0-MonBuildClose.this.getAlpha())*this.popWeight[i]);
		}
		return allAtMin;
	}