annotate docs/modules/txt/Matrix.txt @ 3:90ea638ce878 draft default tip

Uploaded
author deepakjadmin
date Wed, 20 Jan 2016 09:11:59 -0500
parents 2abf0d43254d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
1 NAME
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
2 Matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
3
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
4 SYNOPSIS
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
5 use Matrix;
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
6
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
7 use Matrix qw(:all);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
8
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
9 DESCRIPTION
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
10 Matrix class provides the following methods:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
11
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
12 new, AddColumnValues, AddRowValues, Copy, GetColumnValues,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
13 GetColumnValuesAsColumnMatrix, GetColumnValuesAsRowMatrix,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
14 GetColumnValuesAsString, GetColumnValuesAsVector, GetDiagonalValues,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
15 GetDiagonalValuesAsColumnMatrix, GetDiagonalValuesAsRowMatrix,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
16 GetDiagonalValuesAsString, GetDiagonalValuesAsVector, GetDimension,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
17 GetMatrixValuesReference, GetNumOfColumns, GetNumOfRows, GetRowValues,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
18 GetRowValuesAsColumnMatrix, GetRowValuesAsRowMatrix,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
19 GetRowValuesAsString, GetRowValuesAsVector, GetSize, GetValue,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
20 IdentityMatrix, IsAntiSymmetric, IsBiDiagonal, IsDiagonal, IsIdentity,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
21 IsLeftTriangular, IsLowerBiDiagonal, IsLowerTriangular,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
22 IsLowerUniTriangular, IsMatrix, IsNegative, IsPositive,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
23 IsRightTriangular, IsSkewSymmetric, IsSquare, IsStrictlyLowerTriangular,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
24 IsStrictlyUpperTriangular, IsSymmetric, IsTriDiagonal, IsUnit,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
25 IsUnitLowerTriangular, IsUnitUpperTriangular, IsUpperBiDiagonal,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
26 IsUpperTriangular, IsUpperUniTriangular, NewFromColumns,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
27 NewFromDiagonal, NewFromRows, One, SetAllValues, SetColumnValues,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
28 SetDiagonalValues, SetMatrixPrintStyle, SetRowValues, SetValue,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
29 SetValuePrintFormat, StringifyMatrix, Transpose, UnitMatrix, Zero,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
30 ZeroMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
31
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
32 The following functions are available:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
33
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
34 IsMatrix, IdentityMatrix, NewFromRows, NewFromColumns, NewFromDiagonal,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
35 UnitMatrix, ZeroMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
36
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
37 The following operators are overloaded:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
38
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
39 "" bool !
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
40 @{}
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
41 + - * / ** %
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
42 == != < <= > >=
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
43 neg
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
44 abs exp log sqrt cos sin
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
45
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
46 The matrix row and column indicies start from zero.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
47
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
48 FUNCTIONS
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
49 new
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
50 $NewMatrix = $Matrix->new($NumOfRows, $NumOfCols);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
51
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
52 Creates a new Matrix of size *NumOfRows x NumOfCol* and returns
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
53 NewMatrix object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
54
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
55 AddColumnValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
56 $Matrix->AddColumnValues(@Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
57 $Matrix->AddColumnValues(\@Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
58 $Matrix->AddColumnValues($VectorObject);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
59 $Matrix->AddColumnValues("Value1 Value2 Value3 ...");
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
60
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
61 Adds column values to *Matrix* using an array, reference to an
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
62 array, another vector, or space delimited value string and returns
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
63 *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
64
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
65 AddRowValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
66 $Matrix->AddRowValues(@Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
67 $Matrix->AddRowValues(\@Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
68 $Matrix->AddRowValues($VectorObject);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
69 $Matrix->AddRowValues("Value1 Value2 Value3 ...");
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
70
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
71 Adds row values to *Matrix* using an array, reference to an array,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
72 another vector, or space delimited value string and returns Matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
73
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
74 Copy
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
75 $NewMatrix = $Matrix->Copy();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
76
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
77 Creates a copy of *Matrix* and returns NewMatrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
78
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
79 GetColumnValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
80 @Values = $Matrix->GetColumnValues($ColIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
81 $ValueCount = $Matrix->GetColumnValues($ColIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
82
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
83 Returns an array containing column value specified using *ColIndex*
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
84 with column index starting at 0. In scalar context, number of column
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
85 values is returned.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
86
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
87 GetColumnValuesAsColumnMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
88 $ColumnMatrix = $Matrix->GetColumnValuesAsColumnMatrix($ColIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
89
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
90 Returns a new ColumnMatrix containing column values specified using
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
91 *ColIndex* with column index starting at 0.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
92
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
93 GetColumnValuesAsRowMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
94 $RowMatrix = $Matrix->GetColumnValuesAsRowMatrix($ColIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
95
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
96 Returns a new RowMatrix containing column values specified using
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
97 *ColIndex* with column index starting at 0.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
98
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
99 GetColumnValuesAsString
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
100 $ColumnValuesString = $Matrix->GetColumnValuesAsString($ColIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
101
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
102 Returns a space delimited ColumnValuesString column values specified
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
103 using *ColIndex* with column index starting at 0.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
104
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
105 GetColumnValuesAsVector
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
106 $ColumnVector = $Matrix->GetColumnValuesAsVector($ColIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
107
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
108 Returns a new ColumnVector column values specified using *RowIndex*
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
109 with column index starting at 0.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
110
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
111 GetDiagonalValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
112 @Values = $Matrix->GetDiagonalValues();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
113 $ValueCount = $Matrix->GetDiagonalValues();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
114
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
115 Returns an array containing diagonal values. In scalar context,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
116 number of diagonal values is returned.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
117
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
118 GetDiagonalValuesAsColumnMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
119 $ColumnMatrix = $Matrix->GetDiagonalValuesAsColumnMatrix();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
120
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
121 Returns a new ColumnMatrix containing diagonal values corresponding
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
122 to *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
123
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
124 GetDiagonalValuesAsRowMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
125 $RowMatrix = $Matrix->GetDiagonalValuesAsRowMatrix();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
126
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
127 Returns a new RowMatrix containing diagonal values corresponding to
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
128 *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
129
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
130 GetDiagonalValuesAsString
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
131 $DiagonalValuesString = $Matrix->GetDiagonalValuesAsString();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
132
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
133 Returns a space delimited DiagonalValuesString containing diagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
134 values corresponding to *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
135
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
136 GetDiagonalValuesAsVector
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
137 $DiagonalVector = $Matrix->GetDiagonalValuesAsVector();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
138
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
139 Returns a new DiagonalVector containing diagonal values
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
140 corresponding to *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
141
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
142 GetDimension
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
143 ($NumOfRows, $NumOfCols) = $Matrix->GetDimension();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
144
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
145 Returns size of *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
146
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
147 GetMatrixValuesReference
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
148 $ValuesRef = $Matrix->GetMatrixValuesReference();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
149
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
150 Returns a reference to array containing rows and column values
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
151 corresponding to *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
152
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
153 GetNumOfColumns
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
154 $NumOfCols = $Matrix->GetNumOfColumns();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
155
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
156 Returns NumOfCols in *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
157
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
158 GetNumOfRows
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
159 $NumOfRows = $Matrix->GetNumOfRows();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
160
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
161 Returns NumOfRows in *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
162
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
163 GetRowValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
164 @Values = $Matrix->GetRowValues($RowIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
165 $ValueCount = $Matrix->GetRowValues($RowIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
166
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
167 Returns an array containing row value specified using *RowIndex*
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
168 with row index starting at 0. In scalar context, number of row
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
169 values is returned.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
170
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
171 GetRowValuesAsColumnMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
172 $ColumnMatrix = $Matrix->GetRowValuesAsColumnMatrix($RowIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
173
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
174 Returns a new ColumnMatrix containing row values specified using
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
175 *RowIndex* with column index starting at 0.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
176
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
177 GetRowValuesAsRowMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
178 $RowMatrix = $Matrix->GetRowValuesAsRowMatrix($RowIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
179
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
180 Returns a new RowMatrix containing row values specified using
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
181 *RowIndex* with row index starting at 0.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
182
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
183 GetRowValuesAsString
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
184 $RowValuesString = $Matrix->GetRowValuesAsString($RowIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
185
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
186 Returns a space delimited RowValuesString row values specified using
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
187 *RowIndex* with row index starting at 0.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
188
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
189 GetRowValuesAsVector
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
190 $RowVector = $Matrix->GetColumnValuesAsVector($RowIndex);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
191
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
192 Returns a new RowVector row values specified using *RowIndex* with
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
193 row index starting at 0.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
194
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
195 GetSize
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
196 ($NumOfRows, $NumOfCols) = $Matrix->GetSize();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
197
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
198 Returns size of *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
199
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
200 GetValue
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
201 $Value = $Matrix->GetValue($RowIndex, $ColIndex, [$SkipIndexCheck]);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
202
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
203 Returns Value of *Matrix* element specified using *RowIndex* and
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
204 *ColIndex* with indicies starting at 0 with optional validation of
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
205 specified index values.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
206
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
207 IdentityMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
208 $NewIdentityMatrix = $Matrix->IdentityMatrix($NumOfRows, $NumOfCols);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
209 $NewIdentityMatrix = Matrix::IdentityMatrix($NumOfRows, $NumOfCols);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
210 $NewIdentityMatrix = Matrix::IdentityMatrix();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
211
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
212 Creates a new IdentityMatrix of specified size *NumOfRows x
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
213 NumOfCol* or of size 3 x 3 and returns NewIdentityMatrix object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
214
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
215 IsAntiSymmetric
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
216 $Status = $Matrix->IsAntiSymmetric();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
217
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
218 Returns 1 or 0 based on whether *Matrix* is an anti symmetric
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
219 matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
220
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
221 A matrix is an anti symmetric matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
222
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
223 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
224 . Its elements are asymmetric with respect to main diagonal. In other words,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
225 elements below the main diagonal are equal to the negative of elements above
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
226 the main diagonal.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
227
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
228 Transpose of an anti symmetric matrix equals the negative of the
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
229 matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
230
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
231 IsBiDiagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
232 $Status = $Matrix->IsBiDiagonal();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
233
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
234 Returns 1 or 0 based on whether *Matrix* is upper or lower
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
235 bidiagonal matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
236
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
237 IsDiagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
238 $Status = $Matrix->IsDiagonal();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
239
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
240 Returns 1 or 0 based on whether *Matrix* is a diagonal matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
241
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
242 A matrix is a diagonal matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
243
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
244 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
245 . All its off-diagonal elements are zeros and its diagonal elements may or may not
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
246 be zeros
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
247
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
248 IsIdentity
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
249 $Status = $Matrix->IsIdentity();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
250
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
251 Returns 1 or 0 based on whether *Matrix* is an identity matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
252
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
253 IsLeftTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
254 $Status = $Matrix->IsLeftTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
255
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
256 Returns 1 or 0 based on whether *Matrix* is a left or lower matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
257
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
258 A matrix is a left triangular matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
259
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
260 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
261 . All its entries above the main diagonal are zero
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
262
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
263 IsLowerBiDiagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
264 $Status = $Matrix->IsLowerBiDiagonal();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
265
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
266 Returns 1 or 0 based on whether *Matrix* is a lower bidiagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
267 matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
268
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
269 A matrix is a lower bidiagonal matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
270
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
271 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
272 . All its main diagonal and lower diagonal elements are non-zeros and all its
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
273 other elements are zeros
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
274
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
275 IsLowerTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
276 $Status = $Matrix->IsLowerTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
277
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
278 Returns 1 or 0 based on whether *Matrix* is a left or lower
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
279 triangular matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
280
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
281 A matrix is a lower triangular matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
282
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
283 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
284 . All its entries above the main diagonal are zero
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
285
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
286 IsLowerUniTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
287 $Status = $Matrix->IsLowerUniTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
288
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
289 Returns 1 or 0 based on whether *Matrix* is a lower triangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
290 matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
291
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
292 IsMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
293 $Status = Matrix::IsMatrix($Object);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
294
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
295 Returns 1 or 0 based on whether *Object* is a Matrix object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
296
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
297 IsNegative
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
298 $Status = $Matrix->IsNegative();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
299
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
300 Returns 1 or 0 based on whether *Matrix* is a negative matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
301 containing only values less than or equal to zero.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
302
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
303 IsPositive
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
304 $Status = $Matrix->IsPositive();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
305
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
306 Returns 1 or 0 based on whether *Matrix* is a negative matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
307 containing only values greater than or equal to zero.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
308
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
309 IsRightTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
310 $Status = $Matrix->IsRightTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
311
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
312 Returns 1 or 0 based on whether *Matrix* is a right or upper
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
313 triangular matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
314
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
315 IsSkewSymmetric
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
316 $Status = $Matrix->IsSkewSymmetric();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
317
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
318 Returns 1 or 0 based on whether *Matrix* is a skew or anti symmetric
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
319 matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
320
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
321 IsSquare
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
322 $Status = $Matrix->IsSquare();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
323
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
324 Returns 1 or 0 based on whether *Matrix* is a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
325 containing equal number of rows and columns.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
326
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
327 IsStrictlyLowerTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
328 $Status = $Matrix->IsStrictlyLowerTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
329
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
330 Returns 1 or 0 based on whether *Matrix* is a strictly lower
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
331 triangular matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
332
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
333 A matrix is a strictly lower triangular matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
334
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
335 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
336 . All its entries on and above the main diagonal are zero
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
337
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
338 IsStrictlyUpperTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
339 $Status = $Matrix->IsStrictlyUpperTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
340
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
341 Returns 1 or 0 based on whether *Matrix* is a strictly upper
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
342 triangular matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
343
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
344 A matrix is a strictly upper triangular matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
345
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
346 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
347 . All its entries on and below the main diagonal are zero
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
348
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
349 IsSymmetric
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
350 $Status = $Matrix->IsSymmetric();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
351
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
352 Returns 1 or 0 based on whether *Matrix* is a symmetric matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
353
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
354 A matrix is a symmetric matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
355
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
356 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
357 . Its elements are symmetric with respect to main diagonal. In other words,
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
358 elements below the main diagonal are equal to the elements above the main
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
359 diagonal.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
360
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
361 Transpose of a symmetric matrix equals the matrix itself.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
362
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
363 IsTriDiagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
364 $Status = $Matrix->IsTriDiagonal();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
365
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
366 Returns 1 or 0 based on whether *Matrix* is a tridiagonal matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
367
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
368 A matrix is a tribidiagonal matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
369
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
370 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
371 . All its main diagonal, upper diagonal, and lower diagonal elements are non-zeros and all its
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
372 other elements are zeros
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
373
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
374 IsUnit
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
375 $Status = $Matrix->IsUnit();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
376
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
377 Returns 1 or 0 based on whether *Matrix* is a unit matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
378
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
379 A matrix is a unit matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
380
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
381 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
382 . All its diagonal elements are ones and its off-diagonal elements are zeros
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
383
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
384 IsUnitLowerTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
385 $Status = $Matrix->IsUnitLowerTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
386
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
387 Returns 1 or 0 based on whether *Matrix* is an unit lower triangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
388 matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
389
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
390 A matrix is an unit lower triangular matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
391
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
392 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
393 . All its entries main diagonal are one
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
394 . All its entries above the main diagonal are zero
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
395
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
396 IsUnitUpperTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
397 $Status = $Matrix->IsUnitUpperTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
398
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
399 Returns 1 or 0 based on whether *Matrix* is an unit upper triangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
400 matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
401
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
402 A matrix is an unit upper triangular matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
403
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
404 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
405 . All its entries main diagonal are one
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
406 . All its entries below the main diagonal are zero
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
407
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
408 IsUpperBiDiagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
409 $Status = $Matrix->IsUpperBiDiagonal();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
410
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
411 Returns 1 or 0 based on whether *Matrix* is an upper bidiagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
412 matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
413
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
414 A matrix is an upper bidiagonal matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
415
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
416 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
417 . All its main diagonal and upper diagonal elements are non-zeros and all its
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
418 other elements are zeros
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
419
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
420 IsUpperTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
421 $Status = $Matrix->IsUpperTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
422
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
423 Returns 1 or 0 based on whether *Matrix* is a right or upper
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
424 triangular matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
425
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
426 A matrix is an upper triangular matrix:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
427
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
428 . It's a square matrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
429 . All its entries below the main diagonal are zero
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
430
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
431 IsUpperUniTriangular
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
432 $Status = $Matrix->IsUpperUniTriangular();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
433
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
434 Returns 1 or 0 based on whether *Matrix* is a right or upper
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
435 triangular matrix.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
436
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
437 NewFromColumns
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
438 $NewMatrix = Matrix::NewFromColumns($Col1Vector, $Col2Vector, ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
439 $NewMatrix = Matrix::NewFromColumns($Col1ValuesRef, $Col2ValuesRef, ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
440 $NewMatrix = Matrix::NewFromColumns("Val1 Val2 ...", "Val1 Val2", ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
441
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
442 $NewMatrix = $Matrix->NewFromColumns($Col1Vector, $Col2Vector, ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
443 $NewMatrix = $Matrix->NewFromColumns($Col1ValuesRef, $Col2ValuesRef, ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
444 $NewMatrix = $Matrix->NewFromColumns("Val1 Val2 ...", "Val1 Val2", ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
445
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
446 Creates a new Matrix using specified column values and returns
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
447 NewMatrix object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
448
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
449 The column values can be specified in one of the following formats:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
450
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
451 . List of vector objects
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
452 . References to list of values
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
453 . List of strings containing columns values delimited by space
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
454
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
455 Each column must contain the same number of values.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
456
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
457 NewFromDiagonal
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
458 $NewMatrix = Matrix::NewFromDiagonal($DiagonalVector);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
459 $NewMatrix = Matrix::NewFromDiagonal($DiagonalValuesRef);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
460 $NewMatrix = Matrix::NewFromDiagonal("Val1 Val2 ...");
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
461
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
462 $NewMatrix = Matrix->NewFromDiagonal($DiagonalVector);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
463 $NewMatrix = Matrix->NewFromDiagonal($DiagonalValuesRef);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
464 $NewMatrix = Matrix->NewFromDiagonal("Val1 Val2 ...");
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
465
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
466 Creates a new Matrix using specified diagonal values and returns
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
467 NewMatrix object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
468
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
469 The column values can be specified in one of the following formats:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
470
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
471 . A vector object
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
472 . Reference to list of values
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
473 . Strings containing diagonal values delimited by space
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
474
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
475 NewFromRows
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
476 $NewMatrix = Matrix::NewFromRows($Row1Vector, $RowVector, ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
477 $NewMatrix = Matrix::NewFromRows($Row1ValuesRef, $Row2ValuesRef, ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
478 $NewMatrix = Matrix::NewFromRows("Val1 Val2 ...", "Val1 Val2", ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
479
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
480 $NewMatrix = $Matrix->NewFromRows($Row1Vector, $Row2Vector, ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
481 $NewMatrix = $Matrix->NewFromRows($Row1ValuesRef, $Row2ValuesRef, ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
482 $NewMatrix = $Matrix->NewFromRows("Val1 Val2 ...", "Val1 Val2", ...);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
483
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
484 Creates a new Matrix using specified row values and returns
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
485 NewMatrix object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
486
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
487 The row values can be specified in one of the following formats:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
488
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
489 . List of vector objects
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
490 . References to list of values
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
491 . List of strings containing columns values delimited by space
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
492
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
493 Each row must contain the same number of values.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
494
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
495 One
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
496 $Matrix->One();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
497
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
498 Sets values of all *Matrix* elements to 1 and returns *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
499
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
500 SetAllValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
501 $Matrix->SetAllValues($Value);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
502
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
503 Sets values of all *Matrix* elements to specified *Value* and
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
504 returns *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
505
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
506 SetColumnValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
507 $Matrix->SetColumnValues($ColIndex, @Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
508 $Matrix->SetColumnValues($ColIndex, \@Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
509 $Matrix->SetColumnValues($ColIndex, $VectorObject);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
510 $Matrix->SetColumnValues($ColIndex, "Value1 Value2 Value3 ...");
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
511
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
512 Sets column values of a specified *ColIndex* of *Matrix* using an
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
513 array, reference to an array, another vector, or space delimited
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
514 value string and returns *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
515
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
516 SetDiagonalValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
517 $Matrix->SetDiagonalValues(@Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
518 $Matrix->SetDiagonalValues(\@Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
519 $Matrix->SetDiagonalValues($VectorObject);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
520 $Matrix->SetDiagonalValues("Value1 Value2 Value3 ...");
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
521
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
522 Sets values of the diagonal in square *Matrix* and returns *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
523
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
524 SetMatrixPrintStyle
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
525 $Matrix->SetMatrixPrintStyle($MatrixStyle);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
526 $Matrix::SetMatrixPrintStyle($MatrixStyle);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
527
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
528 Sets print style for matrix rows for an individual object or the
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
529 whole class during StringifyMatrix operation. Possible *MatrixStyle*
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
530 values: *AllRowsInOneLine, OneRowPerLine*. Default:
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
531 *AllRowsInOneLine*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
532
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
533 SetRowValues
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
534 $Matrix->SetRowValues($ColIndex, @Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
535 $Matrix->SetRowValues($ColIndex, \@Values);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
536 $Matrix->SetRowValues($ColIndex, $VectorObjext);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
537 $Matrix->SetRowValues($ColIndex, "Value1 Value2 Value3 ...");
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
538
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
539 Sets row values of a specified *RowIndex* of *Matrix* using an
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
540 array, reference to an array, another vector, or space delimited
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
541 value string and returns *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
542
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
543 SetValue
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
544 $Matrix->SetValue($RowIndex, $ColIndex, $Value, [$SkipIndexCheck]);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
545
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
546 Sets Value of *Matrix* element specified using *RowIndex* and
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
547 *ColIndex* with indicies starting at 0 with optional validation of
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
548 specified index values and return *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
549
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
550 SetValuePrintFormat
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
551 $Matrix->SetValuePrintFormat($ValueFormat);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
552 $Matrix::SetValuePrintFormat($ValueFormat);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
553
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
554 Sets value print format for an individual object or the whole class
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
555 during StringifyMatrix operation and returns *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
556
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
557 StringifyMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
558 $String = $Matrix->StringifyMatrix();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
559
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
560 Returns a string containing information about *Matrix* object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
561
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
562 Transpose
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
563 $Matrix->Transpose();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
564
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
565 Transposes *Matrix* by swaping rows with columns and returns
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
566 *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
567
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
568 UnitMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
569 $NewUnitMatrix = $Matrix::UnitMatrix($NumOfRows, $NumOfCols);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
570 $NewUnitMatrix = $Matrix::UnitMatrix();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
571 $NewUnitMatrix = $Matrix->UnitMatrix($NumOfRows, $NumOfCols);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
572
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
573 Creates a new UnitMatrix of specified size *NumOfRows x NumOfCol* or
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
574 of size 3 x 3 and returns NewUnitMatrix object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
575
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
576 Zero
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
577 $Matrix->Zero();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
578
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
579 Sets values of all *Matrix* elements to 0 and returns *Matrix*.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
580
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
581 ZeroMatrix
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
582 $NewZeroMatrix = $Matrix::ZeroMatrix($NumOfRows, $NumOfCols);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
583 $NewZeroMatrix = $Matrix::ZeroMatrix();
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
584 $NewZeroMatrix = $Matrix->ZeroMatrix($NumOfRows, $NumOfCols);
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
585
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
586 Creates a new ZeroMatrix of specified size *NumOfRows x NumOfCol* or
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
587 of size 3 x 3 and returns NewZeroMatrix object.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
588
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
589 AUTHOR
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
590 Manish Sud <msud@san.rr.com>
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
591
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
592 SEE ALSO
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
593 Vector.pm
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
594
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
595 COPYRIGHT
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
596 Copyright (C) 2015 Manish Sud. All rights reserved.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
597
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
598 This file is part of MayaChemTools.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
599
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
600 MayaChemTools is free software; you can redistribute it and/or modify it
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
601 under the terms of the GNU Lesser General Public License as published by
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
602 the Free Software Foundation; either version 3 of the License, or (at
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
603 your option) any later version.
2abf0d43254d Uploaded
deepakjadmin
parents:
diff changeset
604