Exemplo n.º 1
0
        public IArrayVector Sum(IArrayVector anotherVector)
        {
            int n;

            if (vector.Length > anotherVector.GetSize())
            {
                n = anotherVector.GetSize();
            }
            else
            {
                n = vector.Length;
            }

            double[] another = anotherVector.Get();
            double[] sum     = new double[n];

            for (int i = 0; i < n; i++)
            {
                sum[i] = vector[i] + another[i];
            }

            anotherVector.Set(sum);

            return(anotherVector);
        }
Exemplo n.º 2
0
 public void Code(Type t, ref IArrayVector value)
 {
     var array  = value.Array; Code(value.ArrayType, ref array);
     var origin = value.Origin; CodeLong(ref origin);
     var length = value.Size; CodeLong(ref length);
     var delta  = value.Delta; CodeLong(ref delta);
 }
Exemplo n.º 3
0
 public void Code(Type t, ref IArrayVector value)
 {
     value = (IArrayVector)FastObjectFactory.ObjectFactory(t)();
     Array array  = null; Code(value.ArrayType, ref array); value.Array = array;
     long  origin = 0L; CodeLong(ref origin); value.Origin = origin;
     long  length = 0L; CodeLong(ref length); value.Size = length;
     long  delta  = 0L; CodeLong(ref delta); value.Delta = delta;
 }
Exemplo n.º 4
0
        public static bool TestClone1()
        {
            //arrange
            IArrayVector expected = new ArrayVector(new double[] { 1, 2, 3, 4 });

            //act
            IArrayVector actual = expected.Clone();

            //assert
            return(Enumerable.SequenceEqual(actual.Get(), expected.Get()));
        }
Exemplo n.º 5
0
        public static bool TestSum()
        {
            //arrange
            IArrayVector currentVector = new ArrayVector(new double[] { 1, 1, 1, 1 });
            IArrayVector anotherVector = new ArrayVector(new double[] { 1, 1, 1 });
            IArrayVector expected      = new ArrayVector(new double[] { 2, 2, 2 });

            //act
            IArrayVector actual = currentVector.Sum(anotherVector);

            //assert
            return(Enumerable.SequenceEqual(actual.Get(), expected.Get()));
        }
Exemplo n.º 6
0
        public void Code(Type t, ref IArrayVector value)
        {
            var item = new XElement("Vector");

            m_elementStack.Push(m_element);
            m_element = item;

            var element = new XElement("Data");

            m_elementStack.Push(m_element);
            m_element = element;

            var array = value.Array; Code(value.ArrayType, ref array);

            m_element = m_elementStack.Pop();
            m_element.Add(element);

            element = new XElement("Origin");
            m_elementStack.Push(m_element);
            m_element = element;

            var origin = value.Origin; CodeLong(ref origin);

            m_element = m_elementStack.Pop();
            m_element.Add(element);

            element = new XElement("Length");
            m_elementStack.Push(m_element);
            m_element = element;

            var length = value.Size; CodeLong(ref length);

            m_element = m_elementStack.Pop();
            m_element.Add(element);

            element = new XElement("Delta");
            m_elementStack.Push(m_element);
            m_element = element;

            var delta = value.Delta; CodeLong(ref delta);

            m_element = m_elementStack.Pop();
            m_element.Add(element);

            m_element = m_elementStack.Pop();
            AddValue(item);
        }
Exemplo n.º 7
0
        public double ScalarMult(IArrayVector anotherVector)
        {
            int n;

            if (vector.Length > anotherVector.GetSize())
            {
                n = anotherVector.GetSize();
            }
            else
            {
                n = vector.Length;
            }

            double[] another    = anotherVector.Get();
            double   scalarMult = 0;

            for (int i = 0; i < n; i++)
            {
                scalarMult += vector[i] * another[i];
            }

            return(scalarMult);
        }
Exemplo n.º 8
0
 public void Code(Type t, ref IArrayVector value)
 {
     throw new NotImplementedException();
 }