설명
이 테스트는 별칭 문이 다차원 집합에 사용될 수 있는지 확인합니다 뿐만 아니라. 기고자: Lutz Westermann, 2013년 11월
소형 모델 유형 :메가 슬롯
카테고리 : 메가 슬롯 테스트 라이브러리
메인 파일 : alias01.gms
$title '다차원 별칭 처리 확인' (ALIAS01,SEQ=637)
$onText
이 테스트는 별칭 문이 다차원 집합에 사용될 수 있는지 확인합니다.
뿐만 아니라.
기고자: Lutz Westermann, 2013년 11월
$offText
i / i0*i9 / 설정
j / j0*j9 /
k / k0*k9 /
ijk (i,j,k) / #i.#j.#k /
ijkC(i,j,k)
ijkL(i,j,k);
별칭(ijk, ijkA, ijkA2)
abort$(card(ijkA) <> card(ijk) ) 'ijkA와 ijk의 카드가 다릅니다.';
$gdxOut testComp.gdx
$unLoad
$gdx아웃
$gdxIn testComp.gdx
$load ijkC=ijkA
$gdx아웃
abort$(card(ijkC) <> card(ijk) ) 'ijkC와 ijk의 카드가 다릅니다.';
체크 설정(i,j,k);
check(ijk) = ijkA(ijk)가 아님;
abort$card(check) 'ijk의 모든 요소가 ijkA에 있는 것은 아닙니다.', check;
check(ijkA) = ijk(ijkA)가 아님;
abort$card(check) 'ijkA의 모든 요소가 ijk에 있는 것은 아닙니다.', check;
Execute_unload '테스트' ijkA,ijk;
Execute_load '테스트' ijkL=ijkA;
abort$(card(ijkL) <> card(ijk) ) 'ijkL과 ijk의 카드가 다릅니다.';
check(ijk) = ijkL(ijk)이 아님;
abort$card(check) 'ijk의 모든 요소가 ijkL에 있는 것은 아닙니다.', check;
check(ijkL) = ijk(ijkL)이 아님;
abort$card(check) 'ijkL의 모든 요소가 ijk에 있는 것은 아닙니다.', check;
* 계산을 해보세요
스칼라 x, xA, xAL /0/;
x = sum(ijk (i,j,k), ord(i) + 2*ord(j) + 3*ord(k));
xA = sum(ijkA(i,j,k), ord(i) + 2*ord(j) + 3*ord(k));
루프(ijkA(i,j,k),
xAL = xAL + ord(i) + 2*ord(j) + 3*ord(k);
);
abort$(xA <> x ) '별칭을 사용한 합산은 집합을 사용한 합산과 다른 결과를 가져옵니다.', xA, x;
abort$(xAL <> x ) '별칭을 사용하는 루프는 집합을 사용하는 합계와 다른 결과를 초래합니다.', xAL, x;