public XTVector(XTVector copy) { vector = new double[copy.vector.Length]; for (int i = 0; i < vector.Length; ++i) { vector[i] = copy.vector[i]; } }
public static XTVector MinVector(int dimension) { XTVector v = new XTVector(dimension); for (int i = 0; i < dimension; ++i) { v[i] = double.MinValue; } return v; }
internal bool EqualsByValue(XTVector vect) { bool ret = true; for (int i = 0; i < vector.Length; ++i) { ret = ret && (this[i] == vect[i]); if (!ret) return false; } return ret; }
public SimpleData(int x, int y) { Random r = new Random(); XTVector min = new XTVector(2); XTVector max = new XTVector(2); for (int i = 0; i < 2; ++i) { int z = r.Next(50) + 40; min[i] = (i==0?x:y) - z / 2; max[i] = min[i] + z / 2; } mbr = new MBR(min, max); }
public MBR GetMBR() { XTVector min = new XTVector(gauss.Mean.Elements.Length); XTVector max = new XTVector(gauss.Mean.Elements.Length); for (int i = 0; i < min.Length; ++i) { double s = Math.Sqrt(gauss.Covariance.Covariance[i, i] * Math.Log(owner.RelevanceLevel) * (-2)); min[i] = gauss.Mean.Elements[i] - s; max[i] = gauss.Mean.Elements[i] + s; } return new MBR(min, max); }