/* AUTO-GENERATED */
package jsci.maths.matrices;
import jsci.GlobalSettings;
import jsci.maths.DimensionException;
import jsci.maths.ExtraMath;
import jsci.maths.Mapping;
import jsci.maths.algebras.*;
import jsci.maths.fields.*;
import jsci.maths.groups.AbelianGroup;
import jsci.maths.vectors.AbstractDoubleVector;
import jsci.maths.vectors.DoubleVector;
/**
* The AbstractDoubleMatrix class provides an object for encapsulating double matrices.
* @version 2.2
* @author Mark Hale
*/
public abstract class AbstractDoubleMatrix extends Matrix {
/**
* Constructs a matrix.
*/
protected AbstractDoubleMatrix(final int rows,final int cols) {
super(rows, cols);
}
/**
* Compares two ${nativeTyp} matrices for equality.
* @param obj a double matrix
*/
public final boolean equals(Object obj) {
if(obj instanceof AbstractDoubleMatrix) {
return equals((AbstractDoubleMatrix)obj);
} else {
return false;
}
}
/**
* Compares two ${nativeTyp} matrices for equality.
* Two matrices are considered to be equal if the Frobenius norm of their difference is within the zero tolerance.
* @param m a double matrix
*/
public final boolean equals(AbstractDoubleMatrix m) {
return equals(m, GlobalSettings.ZERO_TOL);
}
public boolean equals(AbstractDoubleMatrix m, double tol) {
if(m != null && numRows == m.rows() && numCols == m.columns()) {
double sumSqr = 0;
for(int i=0;i
-norm.
* @author Taber Smith
*/
public double infNorm() {
double result=0,tmpResult;
for(int i=0;iresult)
result=tmpResult;
}
return result;
}
/**
* Returns the Frobenius or Hilbert-Schmidt (l2) norm.
* @jsci.planetmath FrobeniusMatrixNorm
*/
public double frobeniusNorm() {
double result=0.0;
for(int j,i=0;i
Ads help maintain this website.