示例#1
0
        /// <summary>
        /// Sets a single real array element.
        /// </summary>
        /// <param name="Val">The element value.</param>
        /// <param name="M">The row index.</param>
        /// <param name="N">The column index.</param>
        public override void SetReal(double Val, int M, int N)
        {
            IndexMN i = new IndexMN(M, N);

            if (!_indexSet.Contains(i))
            {
                _indexSet.Add(i);
            }
            _real.Add(i, Val);
        }
示例#2
0
        /// <summary>
        /// Gets a single real array element of A(m,n).
        /// </summary>
        /// <param name="M">Row index</param>
        /// <param name="N">Column index</param>
        /// <returns>Array Element</returns>
        public override double GetReal(int M, int N)
        {
            IndexMN i = new IndexMN(M, N);

            if (_real.ContainsKey(i))
            {
                return(_real[i]);
            }
            return((double)0);
        }
示例#3
0
 /// <summary>
 /// Sets a single imaginary array element.
 /// </summary>
 /// <param name="Val">Element value.</param>
 /// <param name="M">Row Index.</param>
 /// <param name="N">Column Index.</param>
 public override void SetImaginary(double Val, int M, int N)
 {
     if (IsComplex)
     {
         IndexMN i = new IndexMN(M, N);
         if (!_indexSet.Contains(i))
         {
             _indexSet.Add(i);
         }
         _imaginary.Add(i, (double)Val);
     }
 }
示例#4
0
 /// <summary>
 /// Gets a single imaginary array element of A(m,n)
 /// </summary>
 /// <param name="M">Row index</param>
 /// <param name="N">Column index</param>
 /// <returns>Array element</returns>
 public override double GetImaginary(int M, int N)
 {
     if (IsComplex)
     {
         IndexMN i = new IndexMN(M, N);
         if (_imaginary.ContainsKey(i))
         {
             return(_imaginary[i]);
         }
     }
     return((double)0);
 }