설명
가스의 접촉 분해에 대한 반응 계수 결정 석유를 가스 및 기타 부산물로 변환합니다. 이 모델은 COPS 벤치마킹 제품군에서 나온 것입니다. 참조http://www-unix.mcs.anl.gov/~more/cops/.이산화 지점 수는 다음 명령을 사용하여 지정할 수 있습니다 라인 매개변수 --nh. NH에 대한 COPS 성능 테스트가 보고되었습니다. = 50, 100, 200, 400
대형 모델 유형 :NLP
카테고리 : 슬롯 나라 모델 라이브러리
메인 파일 : gasoil.gms 다음을 포함합니다: copspart.inc
$title 경유 COPS 2.0 #12의 접촉분해 (GASOIL,SEQ=240)
$onText
가스의 접촉 분해에 대한 반응 계수 결정
석유를 가스 및 기타 부산물로 변환합니다.
이 모델은 COPS 벤치마킹 제품군에서 나온 것입니다.
http://www-unix.mcs.anl.gov/~more/cops/를 참조하세요.
이산화 지점 수는 다음 명령을 사용하여 지정할 수 있습니다.
라인 매개변수 --nh. NH에 대한 COPS 성능 테스트가 보고되었습니다.
= 50, 100, 200, 400
Dolan, E D 등, JJ, 벤치마킹 최적화
COPS가 포함된 소프트웨어. 기술. 대표, 수학과 컴퓨터
과학부, 2000.
Tjoa, I B 및 Biegler, L T, 동시 솔루션 및
매개변수 추정을 위한 최적화 전략
미분-대수 방정식 시스템. 인디애나 화학.
결의안. 30(1991), 376-385.
Averick, B M, Carter, R G, More, J J 및 Xue, G L, The
MINPACK-2 테스트 문제집. 기술. 대표, 수학과
Argonne National 컴퓨터 공학부
연구실, 1992.
Ascher, UM, Mattheij, RM M 및 Russell, RD, 수치
보통의 경계값 문제 해결
미분 방정식. 1995년 시암.
키워드: 비선형 프로그래밍, 화학 공학, 촉매 분해
$offText
$설정되지 않은 경우 nh $set nh 50
세트
ne '미분방정식' / ne1*ne2 /
np 'ODE 매개변수' / np1*np3 /
nc '배치 포인트' / nc1*nc4 /
nh '파티션 간격' / nh1*nh%nh% /
nm '측정값' / 1*21 /;
매개변수
bc(ne) 'ODE 초기 조건' / ne1 1, ne2 0 /
tau(nm) '관찰이 이루어진 시간'
/ 1 0.000, 2 0.025, 3 0.050, 4 0.075, 5 0.100, 6 0.125
7 0.150, 8 0.175, 9 0.200, 10 0.225, 11 0.250, 12 0.300
13 0.350, 14 0.400, 15 0.450, 16 0.500, 17 0.550, 18 0.650
19 0.750, 20 0.850, 21 0.950 /;
테이블 z(nm,ne) '관찰'
ne1 ne2
1 1.0000 0
2 0.8105 0.2000
3 0.6208 0.2886
4 0.5258 0.3010
5 0.4345 0.3215
6 0.3903 0.3123
7 0.3342 0.2716
8 0.3034 0.2551
9 0.2735 0.2258
10 0.2405 0.1959
11 0.2283 0.1789
12 0.2071 0.1457
13 0.1669 0.1198
14 0.1530 0.0909
15 0.1339 0.0719
16 0.1265 0.0561
17 0.1200 0.0460
18 0.0990 0.0280
19 0.0870 0.0190
20 0.0770 0.0140
21 0.0690 0.0100;
$batInclude copspart.inc nc4 21
양의 변수 theta(np) 'ODE 매개변수';
방정식
collocation_eqn1(nh,nc)
collocation_eqn2(nh,nc);
collocation_eqn1(i,j)..
Duc[i,j,'ne1'] =e= - (theta['np1'] + theta['np3'])*sqr(uc[i,j,'ne1']);
collocation_eqn2(i,j)..
Duc[i,j,'ne2'] =e= theta['np1']*sqr(uc[i,j,'ne1']) - theta['np2']*uc[i,j,'ne2'];
v.fx['nh1',s] = bc(s);
모델 경유/모두/;
$if set workSpace gasoil.workSpace = %workSpace%
nlp를 사용하여 obj를 최소화하는 경유를 해결합니다.