Friday, March 6, 2015

Basic matrix calculations in Java

MatricesBasic.java
A set of methods used in the Matrices project.

Commonly used:

public double[][] identity(int n){

    double[][] array=new double[n][n];
    for (int i = 0; i < n; i++) {
        array[i][i]=1;
    }
    return array;
}
public double[] multiply(double[] a,double d){
    double[] r=new double[a.length];
    for (int i = 0; i < a.length; i++) {
        r[i]=(a[i]*d);
    }
    return r;
}
public double[] multiplyAndSumLines(double[] a,double[] b,double m){
    double[] r=multiply(a,m);
    for (int i = 0; i < a.length; i++) {
        r[i]+=b[i];
    }
    return r;
}
public double normInf(double[] a){
    double max= abs(a[0]);
    for (int i = 1; i < a.length; i++) {
        if(abs(a[i])>max)
            max=abs(a[i]);
    }
    return max;
}
public int jMaxOf(double[] A,int from) {
    int mj=from;
    double m= abs(A[from]);
    for (int j = from; j < A.length; j++) {
        if(abs(A[j])>m){
            m= abs(A[j]);
            mj=j;
        }
    }
    return mj;
}

No comments: