Class Matrix

# Class Matrix (ver. 1.3)

```java.lang.Object
|
+----Matrix
```

public class Matrix
extends Object
Matrix is a class for matrix objects with basic linear calculation methods.
Matrix(int)
Construct a square matrix object.
Matrix(int, int)
Construct a rectangle matrix object.
copy()
Copy the matrix.
crossSqDistance(Matrix)
Cross squared Euclidean distance Matrix: Z_{ij} = ||X_i - Y_j||^2
diagonal()
If the matrix is a row or column vector, make a diagonal matrix from it.
dividedBy(Matrix)
Matrix division: X\Y.
dividedBy(Matrix, int)
Matrix division with bandwidth: X\Y.
eigenvalues(double, int)
Make a row vector including the eigenvalues of the matrix.
horizontalSum()
Make a horizontal-summation vector.
identity(int)
Make an identity matrix.
linearConv(double, double, Matrix)
Linear conversion: a*X + b*Y.
mulipliedEntriesWith(Matrix)
Multiply entries.
multipliedBy(double)
Scalar product: aX.
multipliedBy(Matrix)
Matrix multiplication: X*Y.
random(int, int)
Same as random(row, col, 1).
random(int, int, int)
Make a standard Gaussian random Matrix.
sumEntries()
Summation of all entries.
sumSqrEntries()
Summation of squared entries.
transpose()
Transpose: X'.
updateDivideByRowVector(Matrix)
X_{ij} = X_{ij}/v_{j}.
updateExp()
Update by exponential : exp(X_{ij})
updateLinearConv(double, double, Matrix)
Update by Linear conversion: X = a*X + b*Y.
verticalSum()
Make a vertical-summation vector.
Matrix
```  public Matrix(int n)
```
Construct a square matrix object.
Parameters:
n - size
Matrix
```  public Matrix(int row,
int col)
```
Construct a rectangle matrix object.
Parameters:
row - number of row
col - number of column
identity
```  public static Matrix identity(int n)
```
Make an identity matrix.
Parameters:
n - size
random
```  public static Matrix random(int row,
int col,
int seed)
```
Make a standard Gaussian random Matrix.
Parameters:
row - number of row
col - number of column
seed - random seed
random
```  public static Matrix random(int row,
int col)
```
Same as random(row, col, 1).
copy
```  public Matrix copy()
```
Copy the matrix.
transpose
```  public Matrix transpose()
```
Transpose: X'.
linearConv
```  public Matrix linearConv(double a,
double b,
Matrix Y)
```
Linear conversion: a*X + b*Y.
updateLinearConv
```  public void updateLinearConv(double a,
double b,
Matrix Y)
```
Update by Linear conversion: X = a*X + b*Y.
multipliedBy
```  public Matrix multipliedBy(double a)
```
Scalar product: aX.
multipliedBy
```  public Matrix multipliedBy(Matrix Y)
```
Matrix multiplication: X*Y.
dividedBy
```  public Matrix dividedBy(Matrix Y)
```
Matrix division: X\Y.
dividedBy
```  public Matrix dividedBy(Matrix Y,
int bw)
```
Matrix division with bandwidth: X\Y.
crossSqDistance
```  public Matrix crossSqDistance(Matrix Y)
```
Cross squared Euclidean distance Matrix: Z_{ij} = ||X_i - Y_j||^2
updateExp
```  public void updateExp()
```
Update by exponential : exp(X_{ij})
horizontalSum
```  public Matrix horizontalSum()
```
Make a horizontal-summation vector.
verticalSum
```  public Matrix verticalSum()
```
Make a vertical-summation vector.
sumEntries
```  public double sumEntries()
```
Summation of all entries.
sumSqrEntries
```  public double sumSqrEntries()
```
Summation of squared entries.
mulipliedEntriesWith
```  public Matrix mulipliedEntriesWith(Matrix Y)
```
Multiply entries.
updateDivideByRowVector
```  public void updateDivideByRowVector(Matrix vec)
```
X_{ij} = X_{ij}/v_{j}.
diagonal
```  public Matrix diagonal()
```
If the matrix is a row or column vector, make a diagonal matrix from it. Otherwise extract its diagonal as a row vector.
eigenvalues
```  public Matrix eigenvalues(double eps,
int lmax)
```
Make a row vector including the eigenvalues of the matrix.
Parameters:
eps - allowable absolute value of off-diagonal entries

National Institute of Bioscience and Human-Technology