Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/17/09 17:05:22 (15 years ago)
Author:
gkronber
Message:

Updated ALGLIB to latest version. #751 (Plugin for for data-modeling with ANN (integrated into CEDMA))

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/ALGLIB/ap.cs

    r2430 r2563  
    4545        public static bool operator==(Complex lhs, Complex rhs)
    4646        {
    47             return (lhs.x==rhs.x) & (lhs.y==rhs.y);
     47            return ((double)lhs.x==(double)rhs.x) & ((double)lhs.y==(double)rhs.y);
    4848        }
    4949        public static bool operator!=(Complex lhs, Complex rhs)
    5050        {
    51             return (lhs.x!=rhs.x) | (lhs.y!=rhs.y);
     51            return ((double)lhs.x!=(double)rhs.x) | ((double)lhs.y!=(double)rhs.y);
    5252        }
    5353        public static Complex operator+(Complex lhs)
     
    9292            return result;
    9393        }
    94     }   
     94    public override int GetHashCode()
     95    {
     96      return x.GetHashCode() ^ y.GetHashCode();
     97    }
     98    public override bool Equals(object obj)
     99    {
     100      if( obj is byte)
     101        return Equals(new Complex((byte)obj));
     102      if( obj is sbyte)
     103        return Equals(new Complex((sbyte)obj));
     104      if( obj is short)
     105        return Equals(new Complex((short)obj));
     106      if( obj is ushort)
     107        return Equals(new Complex((ushort)obj));
     108      if( obj is int)
     109        return Equals(new Complex((int)obj));
     110      if( obj is uint)
     111        return Equals(new Complex((uint)obj));
     112      if( obj is long)
     113        return Equals(new Complex((long)obj));
     114      if( obj is ulong)
     115        return Equals(new Complex((ulong)obj));
     116      if( obj is float)
     117        return Equals(new Complex((float)obj));
     118      if( obj is double)
     119        return Equals(new Complex((double)obj));
     120      if( obj is decimal)
     121        return Equals(new Complex((double)(decimal)obj));
     122      return base.Equals(obj);
     123    }
     124  }   
    95125   
    96126  /********************************************************************
Note: See TracChangeset for help on using the changeset viewer.