Ejemplo n.º 1
0
        /// <summary>
        /// Convert the matrix to a readable string.
        /// </summary>
        /// /// <param name="message">an optional message</param>
        /// <returns>A string.</returns>
        public string ToString(string message)
        {
            StringBuilder b = new StringBuilder();

            b.Append("Matrix (" + MatrixMath.Rows(Values) + "x" + MatrixMath.Columns(Values) + ")" + (message.Length > 0 ? " - " : "") + message + "\n");

            for (int r = 0; r < MatrixMath.Rows(Values); r++)
            {
                b.Append("[");
                for (int c = 0; c < MatrixMath.Columns(Values); c++)
                {
                    b.Append(Values[r][c]);
                    if (c + 1 != MatrixMath.Columns(Values))
                    {
                        b.Append(", ");
                    }
                }
                b.Append("]\n");
            }

            return(b.ToString());
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Create a new matrix object.
 /// </summary>
 /// <param name="rows">number of rows</param>
 /// <param name="columns">number of columns</param>
 public Matrix(int rows, int columns)
 {
     Values = MatrixMath.CreateMatrix(rows, columns);
 }
Ejemplo n.º 3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="a"></param>
 /// <param name="b"></param>
 /// <returns></returns>
 public static Matrix Multiply(Matrix a, Matrix b)
 {
     return(new Matrix(MatrixMath.Multiply(a.Values, b.Values)));
 }
Ejemplo n.º 4
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="m"></param>
 /// <param name="scalar"></param>
 /// <returns></returns>
 public static Matrix Scale(Matrix m, float scalar)
 {
     return(new Matrix(MatrixMath.Scale(m.Values, scalar)));
 }
Ejemplo n.º 5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="a"></param>
 /// <param name="b"></param>
 /// <param name="operation"></param>
 /// <returns></returns>
 public static Matrix ElementWiseOperation(Matrix a, Matrix b, ElementWiseOperation operation)
 {
     return(new Matrix(MatrixMath.ElementWiseOperation(a.Values, b.Values, operation)));
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Transpose a matrix and return a new object containing the result.
 /// </summary>
 /// <param name="m">the matrix</param>
 /// <returns>the transposed matrix</returns>
 public static Matrix Transpose(Matrix m)
 {
     return(new Matrix(MatrixMath.Transpose(m.Values)));
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Create a one column matrix from a vector.
 /// </summary>
 /// <param name="v">the vector</param>
 public Matrix(Vector v)
 {
     Values = MatrixMath.VectorToMatrix(v.Values);
 }
Ejemplo n.º 8
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="shape"></param>
 public Matrix(IMatrixShape shape)
 {
     Values = MatrixMath.CreateMatrix(shape.Rows, shape.Columns);
 }
 public static bool CompareColumnsWithRows(float[][] a, float[][] b)
 {
     return(MatrixMath.Columns(a) == MatrixMath.Rows(b));
 }