matrix.dll
Classes:
#module root.mathematic
The MVector class represents vectors (row-vector or column-vector)
in the sense of linear algebra and defines vector operations.
In conjunction with the Matrix class class it allows to solve
linear simultaneous equations (for more information see
Matrix::SolveSystem);
This class has defined IsColumn field. This field value specifies
the vector orientation:
1 - specifies that vector is a column-vector,
0 - specifies that vector is a row-vector.
Methods:
param Operand;
Returns the vector which is obtained as a result of the '&' operation
between the vector, for which the method was called, and the Operand parameter.
If the Operand parameter represents an object of the MVector class then
the elementwise carrying-out of the '&' operation is performed;
Otherwise the '&' operation is performed between each vector element and
the Operand parameter value.
param Operand;
If the Operand parameter represents an object of the MVector
class then the elementwise carrying-out of the '&' operation is performed;
Otherwise the '&' operation is performed between each vector element and
the Operand parameter value.
Returns the reference to the vector that accepted the message.
param Operand;
Returns the vector which is obtained as a result of the vector,
for which the method was called, multiplication by the Operand parameter.
If the Operand parameter represents an object of the MVector class
then the multiplication by conventions of linear algebra is performed;
Otherwise each vector element is multiplied by the Operand parameter value.
param Operand;
If the Operand parameter represents an object of the MVector
class then the multiplication by conventions of linear algebra is
performed; Otherwise each vector element is multiplied by the Operand
parameter value.
Returns the reference to the vector that accepted the message.
param Operand;
Returns the vector which is obtained as a result of the Operand
parameter addition to the vector for which the method was called.
If the Operand parameter represents an object of the MVector class
then the elementwise adding is performed; Otherwise the Operand
parameter value is added to each vector element.
param Operand;
If the Operand parameter represents an object of the MVector
class then the elementwise adding is performed; Otherwise the Operand
parameter value is added to each vector element.
Returns the reference to the vector that accepted the message.
param Operand;
Returns the vector which is obtained as a result of the Operand
parameter subtraction from the vector for which the method was called.
If the Operand parameter represents an object of the MVector class
then the elementwise subtraction is performed; Otherwise the Operand
parameter value is subtracted from each vector element.
param Operand;
If the Operand parameter represents an object of the MVector
class then the elementwise subtraction is performed; Otherwise the Operand
parameter value is subtracted from each vector element.
Returns the reference to the vector that accepted the message.
Return autocorrelation value of MVector
param X;
Constructor which creates the X-dimension column-vector.
param Src;
Constructor which creates a copy of the Src.
param Src;
Constructor which creates a copy of the Src.
Returns the number that represents the norm (scalar) of vector.
Returns the number that represents the scalar product of vectors.
param Value;
This method populates the vector with the element determined
via the Value parameter.
Returns the vector which is transposed relative to the vector for which
the message was called.
Возвращает диагональную матрицу,
диагональными элементами которой являются элементы вектора self.
параметры - размерность результирующей матрицы.
Возвращает диагональную матрицу,
диагональными элементами которой являются элементы вектора self.
Returns the vector which is transposed relative to the vector for which
the message was called.
#rus Возвращает вектор, являющийся векторным произведеним векторов.
#rus Размерность векторов должна быть разна 3.
param Operand;
Returns the vector which is obtained as a result of the '^'
operation between the vector, for which the method was called, and
the Operand parameter.
If the Operand parameter represents an object of the MVector class
then the elementwise carrying-out of the '^' operation is performed;
Otherwise the '^' operation is performed between each vector element and
the Operand parameter value.
param Operand;
If the Operand parameter represents an object of the MVector
class then the elementwise carrying-out of the '^' operation is performed;
Otherwise the '^' operation is performed between each vector element and
the Operand parameter value.
Returns the reference to the vector that accepted the message.
param Operand;
Returns the vector which is obtained as a result of the '|' operation
between the vector, for which the method was called, and the Operand parameter.
If the Operand parameter represents an object of the MVector class then
the elementwise carrying-out of the '|' operation is performed;
Otherwise the '|' operation is performed between each vector element and
the Operand parameter value.
param Operand;
If the Operand parameter represents an object of the MVector
class then the elementwise carrying-out of the '|' operation is performed;
Otherwise the '|' operation is performed between each vector element and
the Operand parameter value.
Returns the reference to the vector that accepted the message.
#module root.mathematic
The Matrix class represents mathematical matrixes and defines matrix
operations. In conjunction with the MVector class it allows to solve
linear simultaneous equations (for more information see SolveSystem);
Methods:
- &(refer any)
- &=(refer any)
- *(refer any)
- *=(refer any)
- +(refer any)
- +=(refer any)
- -(refer any)
- -=(refer any)
- AutoChCor(refer object MVector)
- CTran(void)
- ColumnNorm2(int)
- Conjugate(void)
- Convolve(refer object Matrix)
- CrossCorrelation(void)
- Decompos3diagToQR(void)
- DecomposSymetr3diagTo1diag(number, refer ...)
- DecomposSymetrTo3diag(void)
- DecomposSymetrToEV(number)
- DecomposTo2diag(refer ...)
- DecomposToQR(void)
- Det(void)
- DetQR(void)
- GetColumn(int)
- GetMinor(int, int)
- GetRow(int)
- GetSubMatrix(int, int, int, int)
- GramSchmidtDecomposToQR(void)
- HouseholderDecomposToQR(void)
- InsertColumn(int)
- InsertRow(int)
- Inverse(int)
- Inverse(void)
- LeastSquare(refer object MVector)
- Matrix(copy)
- Matrix(number, number)
- Matrix(refer object Matrix)
- Matrix(refer object Vector)
- Max(void)
- MaxItemIndex(void)
- Min(void)
- MinItemIndex(void)
- MultByDiagonalMatrix(refer object Vector)
- Norm2(void)
- Print(object String)
- Print(void)
- PseudoInverse(int)
- PseudoInverse(void)
- Pythag(number, number)
- Remove(int, int)
- RemoveColumn(int)
- RemoveColumn(number)
- RemoveRow(int)
- RowNorm2(int)
- SVD(void)
- Set(refer any)
- Set3DTransform(number, number, number, number, number, number)
- SetColumn(refer any, int)
- SetColumn(refer object Vector, int)
- SetDiagonal(int, refer any)
- SetDiagonal(refer any)
- SetDiagonal(refer object Vector)
- SetDim(number, number)
- SetRow(refer object Vector, int)
- SetSubMatrix(refer object Matrix, int, int)
- SolveSystem(refer object MVector)
- SolveSystemBySVD(refer object MVector)
- SolveSystemExactly(object MVector)
- SolveSystemMinNExactly(object MVector)
- SwapColumn(int, int)
- SwapRow(int, int)
- Symetr3GetEV(number)
- Symetr3GetEV2(number)
- Symetr3GetEV3(number)
- T(void)
- Tr(void)
- Transpose(void)
- X(void)
- Y(void)
- ^(refer any)
- ^=(refer any)
- |(refer any)
- |=(refer any)
param Operand;
Returns the matrix which is obtained as a result of each matrix
element substitution for the value acquired after the '&' operation
between the matrix element and the Operand parameter.
param Operand;
Each matrix element is substituted for the value acquired after
the '&' operation between the matrix element and the Operand parameter.
Returns the reference to the matrix that accepted the message.
param Operand;
Returns the matrix which is obtained as a result of the matrix
multiplication for which the method with the Operand parameter was called.
If the Operand parameter represents a matrix then the matrixes
multiplication is performed (it is performed by the standard
row-by-column method); Otherwise each matrix element is multiplied
by the Operand parameter value.
param Operand;
If the Operand parameter represents a matrix then the matrixes
multiplication is performed (it is performed by the standard
row-by-column method); Otherwise each matrix element is multiplied
by the Operand parameter value.
Returns the reference to the matrix that accepted the message.
param Operand;
Returns the matrix which is obtained as a result of matrix addition for
which the method with the Operand parameter was called.
If the Operand parameter represents a matrix then the elementwise adding
of matrixes is performed; Otherwise the Operand parameter value is added
to each matrix element.
param Operand;
If the Operand parameter represents a matrix then the elementwise adding
of matrixes is performed; Otherwise the Operand parameter value is added
to each matrix element.
Returns the reference to the matrix that accepted the message.
param Operand;
Returns the matrix which is obtained as a result of subtraction from
matrix for which the method with the Operand parameter was called.
If the Operand parameter represents a matrix then the elementwise subtraction
of matrixes is performed; Otherwise the Operand parameter value is subtracted
from each matrix element.
param Operand;
If the Operand parameter represents a matrix then the elementwise subtraction
of matrixes is performed; Otherwise the Operand parameter value is subtracted
from each matrix element.
Returns the reference to the matrix that accepted the message.
Return value of two matrices convolution
Return cross-correlation matrix of Matrix
Метод производит QR разложение трехдиагональной матрицы.
Возвращает << Q, R >>,
где Q - ортогональная матрица,
R - верхнетреугольная матрица.
Причем self = Q * R;
Применяется метод отражений Хаусхолдера.
param Eps, [Progress];
Метод находит собственные числа и собственные вектора
симметричной трехдиагональной матрицы.
Eps - точночть вычисления собственных значений.
Progress - окно прогресса (необязательный параметр).
Возвращает << Q, L >>,
где Q - ортогональная матрица, столбцы которой являются собственными векторами,
L - вектор собственных значений.
Причем self = Q * L->ToMatrixDiag() * Q->T();
Применяется QR - алгоритм со сдвигами ( стратегия сдвигов по Рэлею ).
Возвращает << Q, A >>, где Q - ортогональная матрица,
A - трехдиагональная матрица.
Причем self = Q * A * Q->T();
Матрица self должна быть симетричной.
Применяется метод отражений.
param Eps;
Метод находит собственные числа и собственные вектора
симметричной действительной матрицы.
Eps - точночть вычисления собственных значений.
Возвращает << Q, L >>,
где Q - ортогональная матрица, колонки котрой являются собственными векторами,
L - вектор собственных значений.
По определению self = Q * L->ToMatrixDiag() * Q->T();
param [Progress];
Возвращает << Q, A, P >>, где Q, P - ортогональные матрицы,
A - верхнедвухдиагональная матрица.
Причем self = Q * A * P->T();
Применяется метод отражений (Хаусхолдера).
Progress - не обязательный параметр окно прогресса (GProgressWnd).
Returns the matrix determinant.
Возвращает детерминант матрицы self.
Применяется QR - разложение.
param Y, X;
Returns the X-column and Y-row matrix minor.
param j;
Insert column j into matrix
param j;
Remove row j from matrix
param n;
Return inverse matrix
n - number of adjustment itterations.
Returns the inverse matrix to the current one.
param Y;
Метод находит решение уравнения self * X = Y в смысле наименьших
квадратов.
param Src;
Constructor which creates a copy of the Src matrix.
param Y, X;
Constructor which creates the Y rows by X columns matrix.
param Src;
Constructor which creates matrix on basis of the Src matrix.
param Vect;
Constructor which creates matrix on basis of the vector which
contains created matrix rows.
param Format;
Return text matrix presentation
Format - format of number output in C style like "%7.3f"
Return text matrix presentation
param n;
Return inverse matrix
n - number of adjustment itterations.
Метод находит псевдообратную матрицу.
Позволяет обращать неквадратные матрицы.
param i, j;
Remove raw i and column j from matrix;
param j;
Remove column j from matrix
param j;
Remove row j from matrix
Given a matrix this routine computes its singular value decomposition, self = U·S·V->T()
The method returns vector <<U, s, V >> where s is a vector of diagonal elements of matrix S
Code was taken from
William H. Press, Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery, Numerical Recipes in C,
Cambridge University Press, (2002)
param Value;
This method populates the matrix with the element determined
via the Value parameter.
param t_x, t_y, t_z, ph_x, ph_y, ph_z;
#rus Устанавливает матрицу преобразования координат из системы
#rus K1 в систему K, где система K1 получена из системы K
#rus путем параллельного переноса начала координат на вектор
#rus (t_x, t_y, t_z) и поворота на углы Эйлера ph_z, ph_y, ph_x
#rus соответственно.
#rus t_x x-координата вектора параллельного
#rus переноса.
#rus t_y y-координата вектора параллельного
#rus переноса.
#rus t_z z-координата вектора параллельного
#rus переноса.
#rus ph_x Угол поворота вокруг оси x.
#rus ph_y Угол поворота вокруг оси y.
#rus ph_z Угол поворота вокруг оси z.
#rus Комментарии
#rus Перед вызовом данного метода матрица должна иметь размер
4x4.
param Diagonal, Value;
Populates the diagonal whose number is specified via the Diagonal parameter
with the value is determined via the Value parameter.
The leading diagonal has 0 number.
Param VectY;
Returns an object of the MVector class which is the solution of
linear simultaneous equations where the right part is specified
via the VectY parameter and matrix represents the matrix for which
the method was called.
self * VectX = VectY
The VectY parameter has to be a column-vector, that is its IsColumn
field must be equal to 1.
In case of the zero-determinant the ERR_DIVIDE_BY_ZERO error is raised.
param Y;
Метод находит решение уравнения self * X = Y методом SVD
param Eps;
Метод находит собственные числа
симметричной действительной трехдиагональной матрицы.
Eps - точночть вычисления собственных значений.
Возвращает вектор собственных значений.
param Eps;
Метод находит собственные числа
симметричной действительной трехдиагональной матрицы.
Eps - точночть вычисления собственных значений.
Возвращает вектор собственных значений.
param Eps;
Метод находит собственные числа
симметричной действительной трехдиагональной матрицы.
Eps - точночть вычисления собственных значений.
Возвращает вектор собственных значений.
Returns the transposed matrix to the current one.
Returns the transposed matrix to the current one.
Returns X-dimension of the matrix
Returns Y-dimension of the matrix
param Operand;
Returns the matrix which is obtained as a result of each matrix
element substitution for the value acquired after the '^' operation
between the matrix element and the Operand parameter.
param Operand;
Each matrix element is substituted for the value acquired after
the '^' operation between the matrix element and the Operand parameter.
Returns the reference to the matrix that accepted the message.
param Operand;
Returns the matrix which is obtained as a result of each matrix
element substitution for the value acquired after the '|' operation
between the matrix element and the Operand parameter.
param Operand;
Each matrix element is substituted for the value acquired after
the '|' operation between the matrix element and the Operand parameter.
Returns the reference to the matrix that accepted the message.
- &, method of class Matrix
- &, method of class MVector
- &=, method of class Matrix
- &=, method of class MVector
- *, method of class Matrix
- *, method of class MVector
- *=, method of class Matrix
- *=, method of class MVector
- +, method of class Matrix
- +, method of class MVector
- +=, method of class Matrix
- +=, method of class MVector
- -, method of class Matrix
- -, method of class MVector
- -=, method of class Matrix
- -=, method of class MVector
- ^, method of class Matrix
- ^, method of class MVector
- ^=, method of class Matrix
- ^=, method of class MVector
- Autocorrelation, method of class MVector
- Convolve, method of class Matrix
- CrossCorrelation, method of class Matrix
- Decompos3diagToQR, method of class Matrix
- DecomposSymetr3diagTo1diag, method of class Matrix
- DecomposSymetrTo3diag, method of class Matrix
- DecomposSymetrToEV, method of class Matrix
- DecomposTo2diag, method of class Matrix
- Det, method of class Matrix
- DetQR, method of class Matrix
- GetMinor, method of class Matrix
- InsertColumn, method of class Matrix
- InsertRow, method of class Matrix
- Inverse, method of class Matrix
- LeastSquare, method of class Matrix
- Matrix, class
- Matrix, method of class Matrix
- MVector, class
- MVector, method of class MVector
- Norm, method of class MVector
- Print, method of class Matrix
- PseudoInverse, method of class Matrix
- Remove, method of class Matrix
- RemoveColumn, method of class Matrix
- RemoveRow, method of class Matrix
- ScalarMul, method of class MVector
- Set, method of class Matrix
- Set, method of class MVector
- Set3DTransform, method of class Matrix
- SetDiagonal, method of class Matrix
- SolveSystem, method of class Matrix
- SolveSystemBySVD, method of class Matrix
- SVD, method of class Matrix
- Symetr3GetEV, method of class Matrix
- Symetr3GetEV2, method of class Matrix
- Symetr3GetEV3, method of class Matrix
- T, method of class Matrix
- T, method of class MVector
- ToMatrixDiag, method of class MVector
- Transpose, method of class Matrix
- Transpose, method of class MVector
- VectorMul, method of class MVector
- X, method of class Matrix
- Y, method of class Matrix
- |, method of class Matrix
- |, method of class MVector
- |=, method of class Matrix
- |=, method of class MVector