![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Постановка задачи
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Лабораторная работа №3 «Метод перебора для выбора оптимальных начальных параметров ПТУ»
Выполнил студент гр. 6А94 Корнева К.В
Проверил _______ __________ Маслов Е.А Подпись Дата
Томск – 2012 Постановка задачи Паротурбинная установка (ПТУ) работает по идеальному циклу Ренкина на сухом насыщенном паре с параметрами: P 0(t 0 s) – начальное давление пара; x 0 = 1 – начальная степень сухости; P к – давление в конденсаторе. Задание Найти максимальное значение термического КПД и температуру tВ2. Повышение энтальпии воды в насосе не учитывать. Целевая функция – термический КПД установки η t; оптимизи- руемый параметр –температура t В2.
Листининг программы program LAB2_4; uses TABL1, crt; const P0=3.0; x0=1.0; xc1=x0; xc2=x0; TB1=180.0; Pk=3.5e-3; a0=1; K=20; var tB, x1, hx, f1, fmax, xmin, xmax, z: real;
FUNCTION N(x: real; i: integer): real; VAR t0, TS1, TS2, tB2, TK: real; {temperatura} P1, P2, PB1, PB2, PB3: real; {davlenie} H0, H1T, H2T, Hk, H1I, H2I, HkI, HC1, HC2, HPB3: real; {entalpiya} S0, SI, SII, SC1, SC2: real; {entropia} X1T, X2T, Xk: real; {stepen suxosty} a1, a2, ak, ac1, ac2, aB1, aB2, aP1, aP2, aok2: real; {rasxod}
kpd: real;
Begin
{RASCHET TEPLOVOGO BALANSA} {zadanie nachalnogo znacheniya TB2} {0} TK: =TSP(Pk); if i=1 then TB2: =(TB1+TK)/2.0 else TB2: =x;
T0: =TSP(P0); TS2: =TB2;
if i=1 then begin writeln(' T0=', t0: 6: 3, ' TS2=', ts2: 6: 3, ' TB1=', tB1: 6: 3); readln; end;
{1} TS1: =TB1; if i=1 then begin writeln(' TS1=', TS1: 6: 3); readln; end; P1: =PST(TS1); if i=1 then begin writeln(' P1=', P1: 6: 3); readln; end;
{2} S0: =S_PX(P0, X0); SI: =SSW_P(P1); SII: =SSP_P(P1); if i=1 then begin writeln(' S0=', S0: 6: 3, ' SI=', SI: 6: 3, ' SII=', SII: 6: 3); readln; end;
{3} X1T: =(S0-SI)/(SII-SI); if i=1 then begin writeln(' X1T=', X1T: 6: 3); readln; end;
{4} H1T: =H_PX(P1, X1T); H0: =H_PX(P0, X0); if i=1 then begin writeln(' H0=', H0: 6: 3, ' H1T=', H1T: 6: 3); readln; end;
{5} HC1: =H_PX(P1, XC1); if i=1 then begin writeln(' HC1=', HC1: 6: 3); readln; end; SC1: =S_PX(P1, XC1); TS2: =TB2; if i=1 then begin writeln(' TS2=', TS2: 6: 3); readln; end; P2: =PST(TS2); if i=1 then begin writeln(' P2=', P2: 6: 3); readln; end; SI: =SSW_P(P2); SII: =SSP_P(P2); if i=1 then begin writeln(' SC1=', SC1: 6: 3, ' SI=', SI: 6: 3, ' SII=', SII: 6: 3); readln; end;
{6} X2T: =(SC1-SI)/(SII-SI); if i=1 then begin writeln(' X2T=', X2T: 6: 3); readln; end;
{7} H2T: =H_PX(P2, X2T); if i=1 then begin writeln(' H2T=', H2T: 6: 3); readln; end;
{8} HC2: =H_PX(P2, XC2); if i=1 then begin writeln(' HC2=', HC2: 6: 3); readln; end; SC2: =S_PX(P2, XC2); SI: =SSW_P(Pk); SII: =SSP_P(Pk); if i=1 then begin writeln(' SC2=', SC2: 6: 3, ' SI=', SI: 6: 3, ' SII=', SII: 6: 3); readln; end;
{9} Xk: =(SC2-SI)/(SII-SI); if i=1 then begin writeln(' Xk=', Xk: 6: 3); readln; end;
{10} Hk: =H_PX(Pk, Xk); if i=1 then begin writeln(' Hk=', Hk: 6: 3); readln; end;
{11} H1I: =HSW_P(P1); H2I: =HSW_P(P2); HKI: =HSW_P(Pk); if i=1 then begin writeln(' H1I=', H1I: 6: 3, ' H2I=', H2I: 6: 3, ' HKI=', HKI: 6: 3); readln; end;
PB3: =1.3*P0; HPB3: =H_PT(PB3, TB1); if i=1 then begin writeln(' HPB3=', HPB3: 6: 3); readln; end;
{RASCHET MASSOVOGO BALANSA}
{2} aok2: =(H1I-H1T)/(H2I-H1T); if i=1 then begin writeln(' aok2=', aok2: 6: 3); readln; end;
{3} a1: =1.0-aok2; if i=1 then begin writeln(' a1=', a1: 6: 3); readln; end;
{4} aC1: =1.0-a1; if i=1 then begin writeln(' aC1=', aC1: 6: 3); readln; end;
{5} aB1: =aC1*(H1T-HC1)/(H1I-HC1); if i=1 then begin writeln(' aB1=', aB1: 6: 3); readln; end;
{6} aP1: =aC1-aB1; if i=1 then begin writeln(' aP1=', aok2: 6: 3); readln; end;
{7} a2: =(aok2*(H2I-HKI)-aB1*(H1I-HKI))/(H2T-HKI); if i=1 then begin writeln(' a2=', a2: 6: 3); readln; end;
{8} ak: =aok2-aB1-a2; if i=1 then begin writeln(' ak=', ak: 6: 3); readln; end;
{9} aC2: =aP1-a2; if i=1 then begin writeln(' aC2=', aC2: 6: 3); readln; end;
{10} aB2: =aC2*(H2T-HC2)/(H2I-HC2); if i=1 then begin writeln(' aB2=', aB2: 6: 3); readln; end;
{11} aP2: =aC2-aB2; if i=1 then begin writeln(' aP2=', aP2: 6: 3); readln; end;
kpd: =a0*(H0-H1T); kpd: =kpd+(a0-a1-aB1)*(HC1-H2T); kpd: =kpd+(a0-a1-aB1-a2-aB2)*(HC2-Hk); kpd: =kpd/a0/(H0-HPB3);
if i=1 then begin writeln('KPD=', kpd: 6: 3); end;
N: =kpd; End;
BEGIN CLRSCR;
writeln('KPD=', N(1, 1): 6: 3); readln;
xmin: =TSP(Pk); xmax: =TB1; hx: =0.5; x1: =xmin; z: =0.0; fmax: =0.; While x1< xmax do begin z: =N(x1, 0);
IF z> fmax then begin fmax: =z; tB: =x1; end;
x1: =x1+hx;
end;
writeln('MAX KPD=', fmax: 6: 3, ' opt TB2=', tB: 4: 1);
readln; end.
Результаты:
KPD= T0=233.858 TS2=103.337 TB1=180.000
TS1=180.000
P1= 1.003
S0= 6.186 SI= 2.140 SII= 6.584
X1T= 0.910
H0=2803.265 H1T=2596.738
HC1=2777.219
TS2=103.337
P2= 0.114
SC1= 6.584 SI= 1.345 SII= 7.315
X2T= 0.878
H2T=2405.801
HC2=2680.807
SC2= 7.315 SI= 0.391 SII= 8.521
Xk= 0.852
Hk=2187.766
H1I=763.188 H2I=433.185 HKI=111.836
HPB3=764.656
aok2= 0.847
a1= 0.153
aC1= 0.847
aB1= 0.076
aP1= 0.847
a2= 0.097
ak= 0.674
aC2= 0.674
aB2= 0.083
aP2= 0.592
KPD= 0.385 0.385
MAX KPD= 0.385 opt TB2=103.7
|