unload16.gms : 테스트 명령줄 매개변수 gdxSymbols

설명

이 테스트는 명령줄 매개변수 gdxSymbols의 예상 동작을 확인합니다.

기고자: Lutz Westermann, 2023년 12월

소형 모델 유형 :메가 슬롯


카테고리 : 메가 슬롯 테스트 라이브러리


메인 파일 : unload16.gms

$title '명령줄 매개변수 gdxSymbols 테스트' (unload16,SEQ=946)

$onText
이 테스트는 명령줄 매개변수 gdxSymbols의 예상 동작을 확인합니다.

기고자: Lutz Westermann, 2023년 12월
$offText

$onEcho > test.gms
i /i1*i3/을 설정합니다.
매개변수 p1(i) / #i 1 /
          p2(i)
          p3(i);

p2(i) = 2;

변수 z;
이진변수 x(i);

방정식 e;

e.. z =e= sum(i,x(i));

모델 m /e/;
m max z를 풀려면 mip를 사용하세요.

Execute_unload 'all.gdx';
Execute_unload '할당.gdx', p2, z, x, e;
Execute_unload 'newOrChanged.gdx', i, p1, p2, p3, z, x, e;
$offEcho

$call.checkErrorLevel 메가 슬롯 test.gms lo=%메가 슬롯lo% gdx=CLPall s=1
$call.checkErrorLevel gdxdiff all.gdx CLPall.gdx > %system.NullFile%

$call.checkErrorLevel 메가 슬롯 test.gms lo=%메가 슬롯lo% gdx=CLP할당됨 gdxSymbols=할당됨
$call.checkErrorLevel gdxdiff 할당.gdx CLP할당.gdx > %system.NullFile%

$call.checkErrorLevel 메가 슬롯 test.gms lo=%메가 슬롯lo% gdx=CLPnewOrChanged gdxSymbols=newOrChanged
$call.checkErrorLevel gdxdiff newOrChanged.gdx CLPnewOrChanged.gdx > %system.NullFile%

$onEcho > 계속.gms
p3(i) = 3;

매개변수 p4(i) / #i 4 /;

Execute_unload 'all.gdx';
Execute_unload '할당된.gdx', p3;
Execute_unload 'newOrChanged.gdx', p3, p4;
$offEcho

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLPall r=1 s=2
$call.checkErrorLevel gdxdiff all.gdx CLPall.gdx > %system.NullFile%

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLP할당 gdxSymbols=할당 r=1
$call.checkErrorLevel gdxdiff 할당.gdx CLP할당.gdx > %system.NullFile%

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLPnewOrChanged gdxSymbols=newOrChanged r=1
$call.checkErrorLevel gdxdiff newOrChanged.gdx CLPnewOrChanged.gdx > %system.NullFile%

$onEcho > 계속.gms
m max z를 풀려면 mip를 사용하세요.

Execute_unload 'all.gdx';
Execute_unload '할당된.gdx', z, x, e;
Execute_unload 'newOrChanged.gdx', z, x, e;
$offEcho

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLPall r=2 s=3
$call.checkErrorLevel gdxdiff all.gdx CLPall.gdx > %system.NullFile%

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLP할당 gdxSymbols=할당 r=2
$call.checkErrorLevel gdxdiff 할당.gdx CLP할당.gdx > %system.NullFile%

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLPnewOrChanged gdxSymbols=newOrChanged r=2
$call.checkErrorLevel gdxdiff newOrChanged.gdx CLPnewOrChanged.gdx > %system.NullFile%

$onEcho > 계속.gms
Execute_unload 'all.gdx';
$offEcho

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLPall r=3
$call.checkErrorLevel gdxdiff all.gdx CLPall.gdx > %system.NullFile%

$echo * > e.gms
$call.checkErrorLevel 게임 e.gms lo=%메가 슬롯lo% gdx=비어 있음

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLP할당 gdxSymbols=할당 r=3
$call.checkErrorLevel gdxdiff 비어 있음.gdx CLP할당.gdx > %system.NullFile%

$call.checkErrorLevel 메가 슬롯 continue.gms lo=%메가 슬롯lo% gdx=CLPnewOrChanged gdxSymbols=newOrChanged r=3
$call.checkErrorLevel gdxdiff 비어 있음.gdx CLPnewOrChanged.gdx > %system.NullFile%