@@ -27,49 +27,49 @@ public static class MatrixExtention
27
27
}
28
28
29
29
/// <summary>
30
- /// Calculates cofactor matrix.
30
+ /// Calculates determinant for double matrix.
31
31
/// </summary>
32
- /// <param name="rowIndex">Index of row element(starts from 0)</param>
33
- /// <param name="columnIndex">Index of column element(starts from 0)</param>
34
32
/// <param name="matrix">Input matrix</param>
35
- /// <returns>Cofactor matrix</returns>
36
- public static double [ , ] CofactorMatrix ( this double [ , ] matrix , int rowIndex , int columnIndex )
33
+ /// <param name="row">Input row</param>
34
+ /// <returns>Determinant value</returns>
35
+ public static double Determinant ( this double [ , ] matrix , int row )
37
36
{
38
- return MatrixCalculator . CalculateElementCofactor ( rowIndex , columnIndex , matrix ) ;
37
+ return MatrixDeterminantCalculator . CalculateDeterminant ( row , matrix ) ;
39
38
}
40
39
41
40
/// <summary>
42
- /// Calculates cofactor matrix.
41
+ /// Calculates determinant for int matrix.
43
42
/// </summary>
44
- /// <param name="rowIndex">Index of row element(starts from 0)</param>
45
- /// <param name="columnIndex">Index of column element(starts from 0)</param>
46
43
/// <param name="matrix">Input matrix</param>
47
- /// <returns>Cofactor matrix</returns>
48
- public static int [ , ] CofactorMatrix ( this int [ , ] matrix , int rowIndex , int columnIndex )
44
+ /// <param name="row">Input row</param>
45
+ /// <returns>Determinant value</returns>
46
+ public static int Determinant ( this int [ , ] matrix , int row )
49
47
{
50
- return MatrixCalculator . CalculateElementCofactor ( rowIndex , columnIndex , matrix ) ;
48
+ return MatrixDeterminantCalculator . CalculateDeterminant ( row , matrix ) ;
51
49
}
52
50
53
51
/// <summary>
54
- /// Calculates determinant for double matrix.
52
+ /// Calculates cofactor matrix.
55
53
/// </summary>
54
+ /// <param name="rowIndex">Index of row element(starts from 0)</param>
55
+ /// <param name="columnIndex">Index of column element(starts from 0)</param>
56
56
/// <param name="matrix">Input matrix</param>
57
- /// <param name="row">Input row</param>
58
- /// <returns>Determinant value</returns>
59
- public static double Determinant ( this double [ , ] matrix , int row )
57
+ /// <returns>Cofactor matrix</returns>
58
+ public static double [ , ] ElementCofactor ( this double [ , ] matrix , int rowIndex , int columnIndex )
60
59
{
61
- return MatrixDeterminantCalculator . CalculateDeterminant ( row , matrix ) ;
60
+ return MatrixCalculator . CalculateElementCofactor ( rowIndex , columnIndex , matrix ) ;
62
61
}
63
62
64
63
/// <summary>
65
- /// Calculates determinant for int matrix.
64
+ /// Calculates cofactor matrix.
66
65
/// </summary>
66
+ /// <param name="rowIndex">Index of row element(starts from 0)</param>
67
+ /// <param name="columnIndex">Index of column element(starts from 0)</param>
67
68
/// <param name="matrix">Input matrix</param>
68
- /// <param name="row">Input row</param>
69
- /// <returns>Determinant value</returns>
70
- public static int Determinant ( this int [ , ] matrix , int row )
69
+ /// <returns>Cofactor matrix</returns>
70
+ public static int [ , ] ElementCofactor ( this int [ , ] matrix , int rowIndex , int columnIndex )
71
71
{
72
- return MatrixDeterminantCalculator . CalculateDeterminant ( row , matrix ) ;
72
+ return MatrixCalculator . CalculateElementCofactor ( rowIndex , columnIndex , matrix ) ;
73
73
}
74
74
75
75
/// <summary>
@@ -92,15 +92,37 @@ public static int Determinant(this int[,] matrix, int row)
92
92
return InvertMatrixCalculator . CalculateInvertMatrix ( matrix ) ;
93
93
}
94
94
95
+ /// <summary>
96
+ /// Multiplies double matrix to matrix.
97
+ /// </summary>
98
+ /// <param name="a">First matrix</param>
99
+ /// <param name="b">Secont matrix</param>
100
+ /// <returns>Result of multiply</returns>
101
+ public static double [ , ] Multiply ( this double [ , ] a , double [ , ] b )
102
+ {
103
+ return MultiplyMatrixCalculator . Multiply ( a , b ) ;
104
+ }
105
+
106
+ /// <summary>
107
+ /// Multiplies int matrix to matrix.
108
+ /// </summary>
109
+ /// <param name="a">First matrix</param>
110
+ /// <param name="b">Secont matrix</param>
111
+ /// <returns>Result of multiply</returns>
112
+ public static int [ , ] Multiply ( this int [ , ] a , int [ , ] b )
113
+ {
114
+ return MultiplyMatrixCalculator . Multiply ( a , b ) ;
115
+ }
116
+
95
117
/// <summary>
96
118
/// Multiplies double matrix to number.
97
119
/// </summary>
98
120
/// <param name="number">Number for multiply</param>
99
121
/// <param name="matrix">Input matrix</param>
100
122
/// <returns>Result of multiply</returns>
101
- public static double [ , ] Multiply ( this double [ , ] a , double [ , ] b )
123
+ public static double [ , ] MultiplyToNumber ( this double [ , ] matrix , double number )
102
124
{
103
- return MultiplyMatrixCalculator . Multiply ( a , b ) ;
125
+ return MultiplyMatrixCalculator . MultiplyToNumber ( number , matrix ) ;
104
126
}
105
127
106
128
/// <summary>
@@ -109,9 +131,9 @@ public static int Determinant(this int[,] matrix, int row)
109
131
/// <param name="number">Number for multiply</param>
110
132
/// <param name="matrix">Input matrix</param>
111
133
/// <returns>Result of multiply</returns>
112
- public static int [ , ] Multiply ( this int [ , ] a , int [ , ] b )
134
+ public static int [ , ] MultiplyToNumber ( this int [ , ] matrix , int number )
113
135
{
114
- return MultiplyMatrixCalculator . Multiply ( a , b ) ;
136
+ return MultiplyMatrixCalculator . MultiplyToNumber ( number , matrix ) ;
115
137
}
116
138
117
139
public static double [ , ] Round ( this double [ , ] matrix , int number )
0 commit comments