2012-05-21 3 views
2

자바에서 행렬의 역함수를 계산하고 싶습니다. 행렬의 역행렬을 계산하는 이미 존재하는 패키지가 있습니까? 나는 question과 비슷한 것을 발견했지만, 질문에 대한 답변은 패키지를 사용하도록 강력히 권장하지 않습니다. 심지어 나는 그들이 사용하고있는 방법을 따라갈 수 없었다. 나는 10000 개의 행과 열로 이루어진 큰 행렬을 가지고있다. 나는 이 그것의 역수를 계산하고 싶습니다.자바에서 행렬의 역함수

답변

2

나는 당신이 먼저 인수 분해해야합니다, 문서 그래도 당신 행렬의 크기를보고 매트릭스 http://math.nist.gov/javanumerics/jama/doc/

하는 역 기능을 제공합니다 당신이 JAMA

에 주사를한다고 생각합니다.

+0

에 대한 선형 대수학을 사용 github에있는 예제가, 마지막 릴리스는 2005년 7월 13일 – JustDanyul

+1

네이고, 그것을보고 너무. 나는 아파치 lib에 대해 몰랐다. 알려 주셔서 감사합니다. – jlengrand

1

la4j (Java 용 선형 대수학) 라이브러리가 매트릭스 반전을 지원하기위한 지원합니다. 여기에 간단한 예제입니다 :

Matrix a = new Basic2DMatrix(new double[][]{ 
    { 1.0, 2.0, 3.0 }, 
    { 4.0, 5.0, 6.0 }, 
    { 7.0, 8.0. 9.0 } 
}); 

Matrix b = a.invert(Matrices.DEFAULT_INVERTOR); // uses Gaussian Elimination 
0

자바

내가 자마가 중단 생각
Matrix a =            
      factory.createMatrix(new RandomMatrixSource(SIZE,SIZE)); 
MatrixInverter inverter = a.withInverter(LinearAlgebra.GAUSS_JORDAN); 
     Matrix e = inverter.inverse(factory);