/// <summary> /// Creates a new instance of the Vector class. /// </summary> /// <param name="data">The array to create this vector from.</param> /// <returns>The new <c>Vector</c>.</returns> protected override Vector<double> CreateVector(IList<double> data) { var vector = new UserDefinedVector(data.Count); for (var index = 0; index < data.Count; index++) { vector[index] = data[index]; } return vector; }
public void CanCreateDenseVectorFromUserDefinedVector() { var vector = new UserDefinedVector(this._data); var other = new DenseVector(vector); for (var i = 0; i < this._data.Length; i++) { Assert.AreEqual(vector[i], other[i]); } }
public void CanCreateSparseVectorFromUserDefinedVector() { var vector = new UserDefinedVector(Data); var other = new SparseVector(vector); for (var i = 0; i < Data.Length; i++) { Assert.AreEqual(vector[i], other[i]); } }
public void CanCreateDenseVectorFromUserDefinedVector() { var vector = new UserDefinedVector(Data); var other = Vector<double>.Build.DenseOfVector(vector); for (var i = 0; i < Data.Length; i++) { Assert.AreEqual(vector[i], other[i]); } }
/// <summary> /// Creates a <c>UserDefinedVector</c> with random values. /// </summary> /// <param name="order">The size of the vector.</param> /// <returns>A <c>UserDefinedVector</c> with the given dimension and random values.</returns> public static Vector GenerateRandomUserDefinedVector(int order) { // Fill a matrix with standard random numbers. var normal = new Normal(new MersenneTwister(1)); var v = new UserDefinedVector(order); for (var i = 0; i < order; i++) { v[i] = normal.Sample(); } // Generate a matrix which is positive definite. return v; }
public static Vector<double> GenerateRandomUserDefinedVector(int order) { // Fill a matrix with standard random numbers. var normal = new Distributions.Normal(); normal.RandomSource = new Random.MersenneTwister(1); var v = new UserDefinedVector(order); for (int i = 0; i < order; i++) { v[i] = normal.Sample(); } // Generate a matrix which is positive definite. return v; }