2013-10-02 4 views
1

은 내가 최대 값을 찾기 위해 원하는ilnumerics symetric matrix에서 최대 값을 찾는 방법은 무엇입니까?

100  90,38000 87,27000 44,23000 34,62000 30,77000 
90,38000  100 90,91000 34,62000 44,23000 34,62000 
87,27000 90,91000  100 36,36000 38,18000 47,27000 
34,62000 44,23000 38,18000 89,80000  100 90,38000 
30,77000 34,62000 47,27000 86,54000 90,38000  100 

같은 이중의 ilnumerics 대칭 행렬이있다. 내가

ILNumerics.ILRetArray<double> maxValue = ILNumerics.ILMath.maxall(matrixSimilarity); 

maxValue를 = 100 내가에 값을 고려하지 않고 결과를 원하는되는 결과를 사용 대각선 => maxValue를 = 90, 91

어떻게 C#에서 ilnumerics 기능이 작업을 수행 할 수 있습니까?

+0

변수 선언을 주시하십시오. 기본적으로 ILArray 만 사용합니다. ILRetArray는 함수 선언에서만 사용됩니다. 참조 : http://ilnumerics.net/GeneralRules.html –

답변

2

이 결과 빠른 방법이 될 수도 있지만,이 작업을합니다 :

ILArray<double> E = counter(5, 5); 

E 지금 : 새로운 변수로

<Double> [5,5] 
    [0]:   1   6   11   16   21 
    [1]:   2   7   12   17   22 
    [2]:   3   8   13   18   23 
    [3]:   4   9   14   19   24 
    [4]:   5   10   15   20   25 

복사, 대각선을 수정하고 최대 값을 취득 :

참고로 코드는 ILMath의 하위 클래스 컨텍스트에서 실행될 것으로 예상됩니다 , 늘 그렇듯이.

관련 문제