설명
고유값 예. 기고자: Erwin Kalvelagen, 2008년 10월.
소형 모델 유형 :슬롯 게임
카테고리 : 슬롯 게임 테스트 라이브러리
메인 파일 : eigval01.gms
$title 테스트 고유값 유틸리티(EIGVAL01,SEQ=409)
$onText
고유값 예.
기고자: Erwin Kalvelagen, 2008년 10월.
옥타브:1>a=[9 1 1; 1 9 1; 1 1 9]
a =
9 1 1
1 9 1
1 1 9
옥타브:2> eig(a)
답변 =
8
8
11
$offText
내가 /i1*i3/으로 설정;
별칭(i,j);
테이블 a(i,j)
i1 i2 i3
나는1 9 1 1
나는2 1 9 1
i3 1 1 9
;
매개변수 e(i) '고유값';
Execute_unload 'a.gdx', i, a;
ExecuteTool.checkErrorLevel 'linalg.eigenvalue i a e -gdxin=a.gdx -gdxout=b.gdx';
Execute_load 'b.gdx', e;
abort$(abs(e('i1')-8)>1e-3 또는 abs(e('i2')-8)>1e-3 또는 abs(e('i3')-11)>1e-3) '잘못된 고유값', e;
옵션 클리어=e;
ExecuteTool.checkErrorLevel 'linalg.eigenvalue i a e';
abort$(abs(e('i1')-8)>1e-3 또는 abs(e('i2')-8)>1e-3 또는 abs(e('i3')-11)>1e-3) '잘못된 고유값', e;
*
* A의 아래쪽 삼각형 부분만 사용됨
*
테이블 a2(i,j)
i1 i2 i3
i1 9
i2 1 9
i3 1 1 9
;
Execute_unload 'a.gdx', i, a2;
ExecuteTool.checkErrorLevel 'linalg.eigenvalue i a2 e -gdxin=a.gdx -gdxout=b.gdx';
Execute_load 'b.gdx', e;
abort$(abs(e('i1')-8)>1e-3 또는 abs(e('i2')-8)>1e-3 또는 abs(e('i3')-11)>1e-3) '잘못된 고유값', e;
옵션 클리어=e;
ExecuteTool.checkErrorLevel 'linalg.eigenvalue i a2 e';
abort$(abs(e('i1')-8)>1e-3 또는 abs(e('i2')-8)>1e-3 또는 abs(e('i3')-11)>1e-3) '잘못된 고유값', e;
*
* A의 위쪽 삼각형 부분만 사용됨
*
매개변수 a3(i,j); a3(i,j) = a2(j,i)
Execute_unload 'a.gdx', i, a3;
ExecuteTool.checkErrorLevel 'linalg.eigenvalue i a3 e -gdxin=a.gdx -gdxout=b.gdx';
Execute_load 'b.gdx', e;
abort$(abs(e('i1')-8)>1e-3 또는 abs(e('i2')-8)>1e-3 또는 abs(e('i3')-11)>1e-3) '잘못된 고유값', e;
옵션 클리어=e;
ExecuteTool.checkErrorLevel 'linalg.eigenvalue i a3 e';
abort$(abs(e('i1')-8)>1e-3 또는 abs(e('i2')-8)>1e-3 또는 abs(e('i3')-11)>1e-3) '잘못된 고유값', e;