Esempio n. 1
0
    //operator overloading for '+' operator. Adding t1 to every index of v1
    public static Vector <T> operator +(Vector <T> v1, T t1)
    {
        Vector <T> result = new Vector <T>(v1.Length, v1.MinIndex);

        /*  if( addTT == null )
         * {
         *    addTT = new BinaryOperatorT<T,T,T>( GenericOperatorFactory<T, T, T, Vector<T>>.Add );
         * }*/

        for (int i = v1.MinIndex; i <= v1.MaxIndex; i++)
        {
            result[i] = NumericOperations.Add(v1[i], t1);
        }
        return(result);
    }
Esempio n. 2
0
    //Operator overloading for '*' operator. Multiplying v1 and v2
    public static Vector <T> operator *(Vector <T> v1, Vector <T> v2)
    {
        Vector <T> result = new Vector <T>(v1.Length, v1.MinIndex);
        int        delta  = v1.MinIndex - v2.MinIndex;

        /*    if (mulTT == null)
         *  {
         *      mulTT = new BinaryOperatorT<T, T, T>(GenericOperatorFactory<T, T, T, Vector<T>>.Multiply);
         *  }*/

        for (int i = v1.MinIndex; i <= v1.MaxIndex; i++)
        {
            result[i] = NumericOperations.Add(v1[i], v2[i - delta]);
        }
        return(result);
    }
Esempio n. 3
0
 public static NumberValue operator -(NumberValue a, NumberValue b) => NumericOperations.Add(a, b.Neg());
Esempio n. 4
0
 public static NumberValue operator +(NumberValue a, NumberValue b) => NumericOperations.Add(a, b);