설명
이 모델은 Cmex가 다음을 처리할 때 예상대로 오류를 생성하는지 확인합니다. 외부 방정식. 우리가 원하는 오류는 다음과 같습니다: - =X= 방정식에서 변수의 Aij에 정수가 아닌 값이 있습니다. - =X= 방정식의 변수에서 Aij가 범위를 벗어났습니다. - Aij는 =X= 방정식의 변수에서 고유하지 않습니다. - Aij는 =X= 방정식의 변수에서 동일하지 않습니다. 기여자: Lutz Westermann
소형 모델 유형 :메가 슬롯
카테고리 : 메가 슬롯 테스트 라이브러리
메인 파일 : xerr2.gms
$title 외부 방정식 오류: Aij가 잘못됨(xerr1,SEQ=494)
$onText
이 모델은 Cmex가 다음을 처리할 때 예상대로 오류를 생성하는지 확인합니다.
외부 방정식. 우리가 원하는 오류는 다음과 같습니다:
- =X= 방정식에서 변수의 Aij에 정수가 아닌 값이 있습니다.
- =X= 방정식의 변수에서 Aij가 범위를 벗어났습니다.
- Aij는 =X= 방정식의 변수에서 고유하지 않습니다.
- Aij는 =X= 방정식의 변수에서 동일하지 않습니다.
기여자: Lutz Westermann
$offText
$onEcho > err.gms
i / i1*i4 / 설정
변수 x(i), z;
방정식 zdef;
zdef..sum(i, (ord(i)+ord(i)/10)*x(i) ) + (카드(i)+1)* z =X= 1;
모델 xerr '외부 방정식' / all /;
z를 최소화하는 nlp를 사용하여 xerr을 해결합니다.
$offEcho
$call =메가 슬롯 err.gms lo=%메가 슬롯lo%
$if errorlevel 1 $abort는 Aij가 정수가 아니기 때문에 오류가 발생해야 합니다.
$onEcho > err.gms
i / i1*i4 / 설정
변수 x(i), z;
방정식 zdef;
zdef.. sum(i, (ord(i)+1)*x(i) ) + (카드(i)+2)* z =X= 1;
모델 xerr '외부 방정식' / all /;
z를 최소화하는 nlp를 사용하여 xerr을 해결합니다.
$offEcho
$call =메가 슬롯 err.gms lo=%메가 슬롯lo%
$errorlevel 1이 아닌 경우 Aij가 범위를 벗어났기 때문에 $abort에서 오류가 발생해야 합니다.
$onEcho > err.gms
i / i1*i4 / 설정
변수 x(i), z;
방정식 zdef;
zdef..sum(i, (카드(i)+1)*x(i) ) + (카드(i)+1)* z =X= 1;
모델 xerr '외부 방정식' / all /;
z를 최소화하는 nlp를 사용하여 xerr을 해결합니다.
$offEcho
$call =메가 슬롯 err.gms lo=%메가 슬롯lo%
$errorlevel 1이 아닌 경우 Aij가 고유하지 않기 때문에 $abort에 오류가 발생해야 합니다.
$onEcho > err.gms
i / i1*i4 / 설정
변수 x(i), z;
방정식 zdef, zdef2;
zdef.. sum(i, ord(i) *x(i) ) + (카드(i)+1)* z =X= 1;
zdef2.. sum(i, (ord(i)+1)*x(i) ) =X= 2;
모델 xerr '외부 방정식' / all /;
z를 최소화하는 nlp를 사용하여 xerr을 해결합니다.
$offEcho
$call =메가 슬롯 err.gms lo=%메가 슬롯lo%
$errorlevel 1이 아닌 경우 $abort는 변수의 Aij가 동일하지 않기 때문에 오류가 발생해야 합니다.