Package jaolho.data.lma.implementations

Source Code of jaolho.data.lma.implementations.JAMAMatrix

package jaolho.data.lma.implementations;

import jaolho.data.lma.LMAMatrix;

import java.io.PrintWriter;
import java.io.StringWriter;
import java.text.NumberFormat;

import Jama.Matrix;

public class JAMAMatrix extends Matrix implements LMAMatrix {
  private static final long serialVersionUID = -8925816623803983503L;

  public JAMAMatrix(double[][] elements) {
    super(elements);
  }
 
  public JAMAMatrix(int rows, int cols) {
    super(rows, cols);
  }
 
  @Override
  public void invert() throws LMAMatrix.InvertException {
    try {
      Matrix m = inverse();
      setMatrix(0, this.getRowDimension() - 1, 0, getColumnDimension() - 1, m);
    }
    catch (RuntimeException e) {
      StringWriter s = new StringWriter();
      PrintWriter p = new PrintWriter(s);
      p.println(e.getMessage());
      p.println("Inversion failed for matrix:");
      this.print(p, NumberFormat.getInstance(), 5);
      throw new LMAMatrix.InvertException(s.toString());
    }
  }

  @Override
  public void setElement(int row, int col, double value) {
    set(row, col, value);
  }

  @Override
  public double getElement(int row, int col) {
    return get(row, col);
  }

  @Override
  public void multiply(double[] vector, double[] result) {
    for (int i = 0; i < this.getRowDimension(); i++) {
      result[i] = 0;
      for (int j = 0; j < this.getColumnDimension(); j++) {
         result[i] += this.getElement(i, j) * vector[j];
      }
    }
  }
 
  public static void main(String[] args) {
    StringWriter s = new StringWriter();
    PrintWriter out = new PrintWriter(s);
    out.println("jakkajaaa");
    System.out.println(s);
  }
}
TOP

Related Classes of jaolho.data.lma.implementations.JAMAMatrix

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.