Imports System Imports CenterSpace.NMath.Core Imports Range = CenterSpace.NMath.Core.Range Namespace CenterSpace.NMath.Examples.VisualBasic A .NET example in Visual Basic showing some of the basic functionality of the vector classes. Module VectorExample The main entry point for the application. Sub Main() Console.WriteLine() Dim v As New DoubleVector("[1 2 3 4 5 6]") You can obtain different vector "views" of the data in v. For example, vector viewing every other element of v. Dim everyOther As DoubleVector = v(New Range(0, Position.End, 2)) Console.WriteLine("everyOther = {0}", everyOther.ToString()) [1 3 5] Console.WriteLine() Remember that this vector is a different views of the data in v. Changing a value in everyOther will change the corresponding value in v. everyOther(1) = 10 Console.WriteLine("Value of v[2] == 10 is {0}", v(2).Equals(10)) True Console.WriteLine() You can make sure that your data is not being shared with anyone else by invoking the DeepenThisCopy method. This will insure that you have your own private copy of the data and that it occupies contiguous storage. v.DeepenThisCopy() everyOther(1) = 100 Console.WriteLine("Value of v[2] == 100 is {0}", v(2).Equals(100)) False Console.WriteLine() The Resize method changes the length of a vector. Values are truncated or padded with zeros as appropriate. First lets save vs original values. Dim vOrig As DoubleVector = v.Clone() Now resize v. v.Resize(v.Length + 2) v will have its original values in the first v.Length-1 elements. The last two elements will be zero. Dim vOrig1 As DoubleVector = v(New Slice(0, vOrig.Length)) Console.WriteLine("values of v preserved during resize is {0}", vOrig.Equals(vOrig1)) Console.WriteLine() Console.WriteLine("v resized = {0}", v.ToString()) Console.WriteLine() vector dot, or inner, products are available as static methods in the NMathFunctions class. Dim u As New DoubleVector(v.Length, 1, 1) Dim dp As Double = NMathFunctions.Dot(v, u) Console.WriteLine("The dot product of {0} with {1} = {2}", v.ToString(), u.ToString(), dp) Console.WriteLine() There are also functions for computing mean and variance of the numbers in a vector. Dim mean As Double = NMathFunctions.Mean(v) Dim var As Double = NMathFunctions.Variance(v) Console.WriteLine("The mean of v is {0}, and the variance is {1}", mean, var) Console.WriteLine() Console.WriteLine("Press Enter Key") Console.Read() End Sub End Module End Namespace← All NMath Code Examples