///// <summary> ///// ///// </summary> ///// <typeparam name="T"></typeparam> ///// <param name="matrix"></param> ///// <returns></returns> //public static ValueVector<T>[] MatrixVectorColumns<T>(Span2D<T> matrix) // where T : INumber<T> //{ // var rows = matrix.Height; // var vectors = new ValueVector<T>[rows]; // for (int i = 0; i < rows; i++) // { // vectors[i] = new ValueVector<T>(matrix.GetColumn(i).ToArray()); // } // return vectors; //} #endregion #region List the Rows of a Matrix /// <summary> /// /// </summary> /// <typeparam name="T"></typeparam> /// <param name="matrix"></param> /// <returns></returns> public static T[][] MatrixRows <T>(Span2D <T> matrix) { var columns = matrix.Width; var vectors = new T[columns][]; for (int i = 0; i < columns; i++) { vectors[i] = matrix.GetRow(i).ToArray(); } return(vectors); }