public virtual CompressedColumnStorage <T> ParallelMultiply(CompressedColumnStorage <T> other)
 {
     return(Multiply(other));
 }
 internal abstract int Scatter(int j, T beta, int[] w, T[] x, int mark, CompressedColumnStorage <T> mat, int nzz);
 /// <summary>
 /// Sparse matrix multiplication, C = A*B
 /// </summary>
 /// <param name="other">column-compressed matrix</param>
 /// <returns>C = A*B, null on error</returns>
 public abstract CompressedColumnStorage <T> Multiply(CompressedColumnStorage <T> other);
 /// <summary>
 /// Adds two matrices, C = alpha*A + beta*B, where A is current instance.
 /// </summary>
 /// <param name="alpha">Scalar factor for A, current instance.</param>
 /// <param name="beta">Scalar factor for B, other instance.</param>
 /// <param name="other">The matrix added to this instance.</param>
 /// <param name="result">Contains the sum.</param>
 /// <remarks>
 /// The (result) matrix has to be fully initialized and provide enough space for
 /// the nonzero entries of the sum. An upper bound is the sum of the nonzeros count
 /// of (this) and (other).
 /// </remarks>
 public abstract void Add(T alpha, T beta, CompressedColumnStorage <T> other,
                          CompressedColumnStorage <T> result);
 /// <summary>
 /// Transpose this matrix and store the result in given matrix.
 /// </summary>
 /// <param name="result">Storage for the tranposed matrix.</param>
 public void Transpose(CompressedColumnStorage <T> result)
 {
     this.Transpose(result, false);
 }
Beispiel #6
0
 /// <summary>
 /// Sparse matrix multiplication, C = A*B
 /// </summary>
 /// <param name="other">The sparse matrix multiplied to this instance.</param>
 /// <param name="options">Parallel options (optional).</param>
 /// <returns>C = A*B</returns>
 public virtual CompressedColumnStorage <T> ParallelMultiply(CompressedColumnStorage <T> other, System.Threading.Tasks.ParallelOptions options = null)
 {
     return(Multiply(other));
 }
Beispiel #7
0
 /// <summary>
 /// Sparse matrix multiplication, C = A*B
 /// </summary>
 /// <param name="other">The sparse matrix multiplied to this instance.</param>
 /// <param name="result">Contains the matrix product.</param>
 /// <remarks>
 /// The <paramref name="result"/> matrix has to be fully initialized, but doesn't have
 /// to provide enough space for the nonzero entries of the product. The storage will be
 /// automatically expanded if necessary.
 /// </remarks>
 public abstract void Multiply(CompressedColumnStorage <T> other, CompressedColumnStorage <T> result);