示例#1
0
 public void MatrixMultiply(int rowsX, int columnsX, double[] x, int rowsY, int columnsY, double[] y, double[] result)
 {
     if (columnsX != rowsY || rowsX * columnsY != result.Length)
     {
         ThrowHelper.ThrowDimensionDontMatchException();
     }
     MklNativeMethod.dMatrixMatrixProduct(CBLAS_TRANSPOSE.CblasNoTrans, CBLAS_TRANSPOSE.CblasNoTrans, rowsX, columnsX, columnsY, x, y, 1, 0, result);
 }
示例#2
0
 public void VectorDotProduct(double[] x, double[] y, double result)
 {
     result = MklNativeMethod.dVectorDotProduct(x, y, x.Length);
 }
示例#3
0
 public void ArrayMultiply(double scalar, double[] x, double[] result)
 {
     x.CopyToWithoutCheck(result);
     MklNativeMethod.dVectorScalarProduct(result, result.Length, scalar);
 }
示例#4
0
 public void ArraySubtract(double[] x, double[] y, double[] result)
 {
     MklNativeMethod.dVectorSub(x, y, x.Length, result);
 }
示例#5
0
 public void ArrayAdd(double[] x, double[] y, double[] result)
 {
     MklNativeMethod.dVectorAdd(x, y, x.Length, result);
 }