private static List<double> GetUnbalHaarVector(double[] a)
{
double n = a[2] - a[0] + 1;
double m = a[1] - a[0] + 1;
List<double> returnVector = new List<double>();
double val1 = Math.Sqrt(1 / m - 1 / n);
double val2 = -1.0 / Math.Sqrt(n * n / m - n);
for (uint i = 0; i < Math.Floor(n); i++)
{
if (i < m) returnVector.Add(val1);
else returnVector.Add(val2);
}
return returnVector;
}