protected double smallestAngleBetweenWeights(int index){
  double smallestAngle=Double.POSITIVE_INFINITY;
  for (int i=0; i < weights.size(); i++) {
    if (i != index) {
      smallestAngle=Math.min(smallestAngle,acosine(weights.get(index),weights.get(i)));
    }
  }
  return smallestAngle;
}

protected double smallestAngleBetweenWeights ( int index ) { double smallestAngle = Double . POSITIVE_INFINITY ; for ( int i = 0 ; i < weights . size ( ) ; i ++ ) { if ( i != index ) { smallestAngle = Math . min ( smallestAngle , acosine ( weights . get ( index ) , weights . get ( i ) ) ) ; } } return smallestAngle ; }
computes the smallest angle between the given reference vector and all remaining vectors .
