Диссертация (Исследование влияния параметров ГТУ и ПГУ на их характеристики на основе методики с детальным учетом потерь от охлаждения в газовой турбине), страница 18

PDF-файл Диссертация (Исследование влияния параметров ГТУ и ПГУ на их характеристики на основе методики с детальным учетом потерь от охлаждения в газовой турбине), страница 18 Технические науки (26977): Диссертация - Аспирантура и докторантураДиссертация (Исследование влияния параметров ГТУ и ПГУ на их характеристики на основе методики с детальным учетом потерь от охлаждения в газовой турби2019-03-12СтудИзба

Описание файла

Файл "Диссертация" внутри архива находится в папке "Исследование влияния параметров ГТУ и ПГУ на их характеристики на основе методики с детальным учетом потерь от охлаждения в газовой турбине". PDF-файл из архива "Исследование влияния параметров ГТУ и ПГУ на их характеристики на основе методики с детальным учетом потерь от охлаждения в газовой турбине", который расположен в категории "". Всё это находится в предмете "технические науки" из Аспирантура и докторантура, которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. , а ещё этот архив представляет собой кандидатскую диссертацию, поэтому ещё представлен в разделе всех диссертаций на соискание учёной степени кандидата технических наук.

Просмотр PDF-файла онлайн

Текст 18 страницы из PDF

Longman Group Limited, Harlow, 1996.72. Drawin S., Justin J.F. Advanced lightweight silicide and nitride dased materialsfor turbo-engint applicatons // The Onera Journal AerospaceLab, № 3, 2011.73. Huttunen J. Optimization of the mean radius flow path of a multi-stage steamturbine with evolution algorithms / J.

Huttunen, l. Jaakko, T. Turunen-Saaresti, J.Backman //Journal of Thermal Science, T. 20(4), 2011.74. ISO/DIS 2314. Gas turbine — acceptance tests (MOD).75. Jordal K. Optimization with genetic algorithms of a gas turbine cycle with H2separating membrane reactor for Co2 capture / K. Jordal, O. Bolland, F. M. Björn,T. Torisson // International Journal of green Energy, T. 2(2), 2005.76.

Kim W-Y., Tanaka H., Kasama A., Hanada S. Effects of carbon on the tensileproperties of Nb-Mo-W allows at 1773 K // Journal of allows and compounds,Vol.333, 2002.77. Moffitt T.P., Stepka F.S., Rohlik H.E. Summary of NASA aerodynamic andheat transfer studies in turbine vanes and blades. Levis research center, Cleveland,USA, 1976.15578. Prust H.W. Two-dimensional cold-air cascade study of a film-cooled turbinestator blade.

II – Experimental results of full film cooling tests. Levis researchcenter, Cleveland, USA, 1975.79. Sanjay Y. Investigation of effect of variation of cycle parameters onthermodynamic performance of gas-steam combined cycle // International JournalEnergy, T. 36(1), 2011.80. Srinivas T. Thermodynamic modelling and optimization of a dual pressurereheat combined power cycle // Sadhana, T. 35(5), 2010.81. Tanaka R., Kasama A., Fujikura M., Iwanaga I., Tanaka Y., Matsumura Y.Research and Development of Niobium-Based Superalloys for Hot Components ofGas turbines // Proceedings of the International Gas Turbine Congress.

Tokyo,2003.156ПРИЛОЖЕНИЕ А. ТЕКСТ ПРОГРАММЫ «GTU»unit GTU;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, Grids, AppEvnts, Menus, ComCtrls, Math, ExtCtrls;typemassiv=array[1..11] of double;TForm1 = class(TForm)PageControl1: TPageControl;TabSheet1: TTabSheet;Label1: TLabel;Label2: TLabel;Label3: TLabel;Label4: TLabel;Label5: TLabel;Label6: TLabel;Label7: TLabel;Label8: TLabel;Label9: TLabel;Label10: TLabel;Label11: TLabel;Label12: TLabel;Label13: TLabel;Label14: TLabel;Label15: TLabel;Label16: TLabel;Label17: TLabel;Button1: TButton;Edit1: TEdit;Edit2: TEdit;Edit3: TEdit;Edit4: TEdit;Edit5: TEdit;Edit6: TEdit;Edit7: TEdit;Edit8: TEdit;Edit9: TEdit;Edit10: TEdit;Edit11: TEdit;Edit12: TEdit;RadioButton1: TRadioButton;RadioButton2: TRadioButton;Edit13: TEdit;Edit14: TEdit;Edit15: TEdit;TabSheet2: TTabSheet;StringGrid1: TStringGrid;TabSheet3: TTabSheet;StringGrid2: TStringGrid;TabSheet4: TTabSheet;Button2: TButton;Memo1: TMemo;TabSheet5: TTabSheet;Edit16: TEdit;Label18: TLabel;Label19: TLabel;Label20: TLabel;Label21: TLabel;Edit17: TEdit;Label22: TLabel;Edit18: TEdit;Label23: TLabel;Label24: TLabel;Edit19: TEdit;Edit20: TEdit;Button3: TButton;Label25: TLabel;Label26: TLabel;Edit21: TEdit;Label27: TLabel;Edit22: TEdit;Label28: TLabel;Label29: TLabel;Label30: TLabel;Label31: TLabel;Edit23: TEdit;Edit24: TEdit;Label32: TLabel;Label33: TLabel;157Edit25: TEdit;Edit26: TEdit;Label35: TLabel;Edit27: TEdit;Edit28: TEdit;Label36: TLabel;Label37: TLabel;Label38: TLabel;Label39: TLabel;Label40: TLabel;Label41: TLabel;Label42: TLabel;Label43: TLabel;Edit29: TEdit;Label44: TLabel;Edit30: TEdit;Label45: TLabel;Label46: TLabel;Edit31: TEdit;Edit32: TEdit;Label47: TLabel;Label48: TLabel;Edit33: TEdit;Edit34: TEdit;Label49: TLabel;Label50: TLabel;Edit35: TEdit;Edit36: TEdit;Label51: TLabel;GroupBox1: TGroupBox;RadioButton5: TRadioButton;RadioButton6: TRadioButton;RadioButton7: TRadioButton;GroupBox2: TGroupBox;RadioButton8: TRadioButton;RadioButton9: TRadioButton;RadioButton10: TRadioButton;GroupBox3: TGroupBox;RadioButton11: TRadioButton;RadioButton12: TRadioButton;RadioButton13: TRadioButton;GroupBox4: TGroupBox;RadioButton14: TRadioButton;RadioButton15: TRadioButton;RadioButton16: TRadioButton;GroupBox5: TGroupBox;RadioButton17: TRadioButton;RadioButton18: TRadioButton;RadioButton19: TRadioButton;GroupBox6: TGroupBox;RadioButton20: TRadioButton;RadioButton21: TRadioButton;RadioButton22: TRadioButton;GroupBox7: TGroupBox;RadioButton23: TRadioButton;RadioButton24: TRadioButton;RadioButton25: TRadioButton;GroupBox8: TGroupBox;RadioButton26: TRadioButton;RadioButton27: TRadioButton;RadioButton28: TRadioButton;Label52: TLabel;Label53: TLabel;Label54: TLabel;Label55: TLabel;Button4: TButton;Label59: TLabel;Label60: TLabel;Edit48: TEdit;Label65: TLabel;Label56: TLabel;ComboBox1: TComboBox;GroupBox9: TGroupBox;RadioButton3: TRadioButton;RadioButton4: TRadioButton;RadioButton29: TRadioButton;GroupBox10: TGroupBox;RadioButton30: TRadioButton;RadioButton31: TRadioButton;RadioButton32: TRadioButton;GroupBox11: TGroupBox;RadioButton33: TRadioButton;RadioButton34: TRadioButton;RadioButton35: TRadioButton;GroupBox12: TGroupBox;RadioButton36: TRadioButton;RadioButton37: TRadioButton;RadioButton38: TRadioButton;Label57: TLabel;158Label58: TLabel;Label61: TLabel;Label62: TLabel;Label63: TLabel;Label64: TLabel;Label34: TLabel;Edit41: TEdit;Edit42: TEdit;Edit43: TEdit;Edit44: TEdit;Edit45: TEdit;Edit46: TEdit;Edit47: TEdit;Edit49: TEdit;Label66: TLabel;Label67: TLabel;Label68: TLabel;Label69: TLabel;Edit37: TEdit;Label70: TLabel;Label71: TLabel;Edit38: TEdit;Label72: TLabel;Edit39: TEdit;Label73: TLabel;Edit40: TEdit;Label74: TLabel;Edit50: TEdit;Label75: TLabel;Edit51: TEdit;Label76: TLabel;Edit52: TEdit;Label77: TLabel;Edit53: TEdit;Label78: TLabel;Edit54: TEdit;Label79: TLabel;Edit55: TEdit;Label80: TLabel;Edit56: TEdit;Label81: TLabel;Edit57: TEdit;Label82: TLabel;Edit58: TEdit;Label83: TLabel;Edit59: TEdit;Label84: TLabel;Edit60: TEdit;Label85: TLabel;Edit61: TEdit;Label86: TLabel;Edit62: TEdit;Label87: TLabel;Edit63: TEdit;Label88: TLabel;Edit64: TEdit;Label89: TLabel;Edit65: TEdit;Label90: TLabel;Edit66: TEdit;Label91: TLabel;Edit67: TEdit;Label92: TLabel;Edit68: TEdit;Label93: TLabel;Edit69: TEdit;Edit70: TEdit;Label94: TLabel;procedure Button1Click(Sender: TObject);procedure StringGrid1MouseUp(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);procedure Button2Click(Sender: TObject);procedure OnCreate(Sender: TObject);procedure Button3Click(Sender: TObject);procedure RadioButton3Click(Sender: TObject);procedure RadioButton4Click(Sender: TObject);procedure RadioButton5Click(Sender: TObject);procedure RadioButton6Click(Sender: TObject);procedure RadioButton7Click(Sender: TObject);procedure RadioButton8Click(Sender: TObject);procedure RadioButton9Click(Sender: TObject);procedure RadioButton10Click(Sender: TObject);procedure RadioButton11Click(Sender: TObject);procedure RadioButton12Click(Sender: TObject);procedure RadioButton13Click(Sender: TObject);procedure RadioButton14Click(Sender: TObject);procedure RadioButton15Click(Sender: TObject);procedure RadioButton16Click(Sender: TObject);procedure RadioButton17Click(Sender: TObject);159procedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureprocedureRadioButton18Click(Sender: TObject);RadioButton19Click(Sender: TObject);RadioButton20Click(Sender: TObject);RadioButton21Click(Sender: TObject);RadioButton22Click(Sender: TObject);RadioButton23Click(Sender: TObject);RadioButton24Click(Sender: TObject);RadioButton25Click(Sender: TObject);RadioButton26Click(Sender: TObject);RadioButton27Click(Sender: TObject);RadioButton28Click(Sender: TObject);RadioButton29Click(Sender: TObject);RadioButton30Click(Sender: TObject);RadioButton31Click(Sender: TObject);RadioButton32Click(Sender: TObject);RadioButton33Click(Sender: TObject);RadioButton34Click(Sender: TObject);RadioButton35Click(Sender: TObject);RadioButton36Click(Sender: TObject);RadioButton37Click(Sender: TObject);RadioButton38Click(Sender: TObject);Edit1KeyPress(Sender: TObject; var Key: Char);Edit3KeyPress(Sender: TObject; var Key: Char);Button4Click(Sender: TObject);ComboBox1Change(Sender: TObject);private{ Private declarations }public{ Public declarations }end;varForm1: TForm1;but:array[1..500] of TButton;implementation{$R *.dfm}var n,top,z:integer;a,pc,pd,tc,alfa,eta,hc,h0,tdt,td,hd,rot,ro,pa,pb,ta,tbt,tb,hb,ha,Ne,pik,lambda,etaks,etameh,etaeg,etat,etat2,etak,alfaut,fi,b,L0,Btop,htur,hkom,hgtu,Ntur,Nkom,etagtu,tw,Gtur,Gkom,Gexit,etagtuohl,hgtuohl,tkon,nun:double;const RR=8.31441; {Дж/(моль*К), универсальная газовая постоянная}muvozd=28.97; {г/моль}{табличные данные}temp:array [1..26] of double=(-50,0,50,100,150,200,250,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500,1600,1700,1800,1900,2000,2100);{воздух}hvozd:array [1..26] of double=(223.35,273.50,323.75,374.15,424.82,475.83,527.29,579.27,684.92,792.97,903.36,1015.93,1130.45,1246.71,1364.49,1483.60,1603.89,1725.23,1847.49,1970.59,2094.44,2218.98,2344.15,2469.90,2596.19,2722.98);pivozd:array [1..26] of double=(9.6930,9.9997,10.2550,10.4743,10.6670,10.8394,10.9959,11.1394,11.3963,11.6225,11.8256,12.0103,12.1798,12.3366,12.4824,12.6186,12.7466,12.8671,12.9811,13.0892,13.1921,13.2905,13.3850,13.4762,13.5647,13.6511);Cpvozd:array [1..26] of double=(1.0026,1.0037,1.0062,1.0104,1.0165,1.0245,1.0341,1.0449,1.0684,1.0924,1.1151,1.1358,1.1543,1.1705,1.1848,1.1973,1.2083,1.2182,1.2270,1.2349,1.2421,1.2486,1.2547,1.2603,1.2654,1.2703);{диоксид углерода}h2:array [1..26] of double=(152.57,192.03,234.21,278.86,325.72,374.56,425.19,477.44,586.19,699.82,817.54,938.68,1062.68,1189.10,1317.55,1447.73,1579.38,1712.30,1846.32,1981.31,2117.15,2253.74,2391.01,2528.89,2667.30,2806.21);pi2:array [1..26] of double=(10.6257,10.9922,11.3181,11.6130,11.8836,12.1341,12.3678,12.5870,12.9890,13.3510,13.6805,13.9827,14.2618,14.5210,14.7629,14.9896,15.2028,15.4041,15.5945,15.7752,15.9473,16.1119,16.2700,16.4226,16.5706,16.7149);{водяной пар}h3:array [1..26] of double=(410.66,503.44,596.67,690.67,785.73,882.05,979.77,1078.97,1282.09,1491.81,1708.42,1932.11,2162.93,2400.80,2645.51,2896.76,3154.16,3417.32,3685.82,3959.27,4237.28,4519.51,4805.65,5095.40,5388.51,5684.71);pi3:array [1..26] of double=(9.3504,9.7039,9.9989,10.2534,10.4784,10.6808,10.8655,11.0359,11.3432,11.6167,11.8647,12.0931,12.3056,12.5050,12.6932,12.8719,13.0420,13.2044,13.3597,13.5087,13.6521,13.7906,13.9248,14.0553,14.1827,14.3076);{азот}h4:array [1..26] of double=(231.55,283.51,335.49,387.55,439.75,492.19,544.98,598.20,706.20,816.55,929.30,1044.36,1161.54,1280.61,1401.35,1523.56,1647.05,1771.67,1897.27,2023.74,2150.98,2278.91,2407.44,2536.52,2666.09,2796.10);pi4:array [1..26] of double=(9.5416,9.8479,10.1027,10.3210,10.5125,16010.6833,10.8380,10.9797,11.2329,11.4556,11.6556,11.8375,12.0046,12.1592,12.3032,12.4378,12.5643,12.6836,12.7965,12.9036,13.0055,13.1027,13.1957,13.2849,13.3707,13.4535);{продукты сгорания метана}hps:array [1..26] of double=(241.48,296.53,352.07,408.13,464.76,522.02,579.97,638.66,758.41,881.40,1007.61,1136.87,1269.00,1403.73,1540.84,1680.10,1821.28,1964.19,2108.66,2254.53,2401.67,2549.95,2699.26,2849.52,3000.64,3152.55);Cpps:array [1..26] of double=(1.0964,1.1058,1.1158,1.1267,1.1387,1.1519,1.1663,1.1816,1.2136,1.2462,1.2777,1.3073,1.3347,1.3596,1.3822,1.4025,1.4208,1.4372,1.4519,1.4652,1.4773,1.4881,1.4980,1.5070,1.5153,1.5228);{-Функция интерполяции значений для любых двух соответствующих массивов--}function Appr(a,b:array of double; ka:double):double;var i:integer;begini:=1;while ka>a[i] do i:=i+1;{Appr:=b[i-1]+(b[i]-b[i-1])*((ka-a[i-1])/(a[i]-a[i-1]));}Appr:=((ka-a[i])*(ka-a[i+1]))/((a[i-1]-a[i])*(a[i-1]-a[i+1]))*b[i-1]++((ka-a[i-1])*(ka-a[i+1]))/((a[i]-a[i-1])*(a[i]-a[i+1]))*b[i]++((ka-a[i-1])*(ka-a[i]))/((a[i+1]-a[i-1])*(a[i+1]-a[i]))*b[i+1];end;{---------Подпрограммы расчета процессов в компрессоре и турбине---------}procedure Kompressor(pa,pb,ta,eta:double; var ha,h0,tbt,tb,hb,rot,ro:double);var pi01,pi02,hbt:double;beginha:=Appr(temp,hvozd,ta);{кДж/кг}pi01:=Appr(temp,pivozd,ta);{-}pi02:=pi01+(ln(pb/pa)/ln(10));{-}tbt:=Appr(pivozd,temp,pi02);{°C}hbt:=Appr(temp,hvozd,tbt);{кДж/кг}h0:=hbt-ha;{кДж/кг}rot:=pb*100*muvozd/(RR*(tbt+273.15));{кг/м^3}hb:=ha+(h0/eta);{кДж/кг}tb:=Appr(hvozd,temp,hb);{°C}ro:=pb*100*muvozd/(RR*(tb+273.15));{кг/м^3}end;procedure Metan(pc,pd,tc,alfa,eta:double; j:integer;var hc,h0,tdt,td,hd,rot,ro:double);var r,pi01,pi02,ht,mu:double;i:integer;hgas,pigas,hh,pipi:array [1..26] of double;const mugas=27.73; {г/моль, рассчитано по объемным долям составляющих}beginr:=1-(10.524/(10.524+(9.524*(alfa-1))));{-}for i:=1 to 26 dobeginhgas[i]:=0.095*h2[i]+0.190*h3[i]+0.715*h4[i];{кДж/кг}pigas[i]:=0.095*pi2[i]+0.190*pi3[i]+0.715*pi4[i];{-}hh[i]:=hgas[i]+(r*(hvozd[i]-hgas[i]));{кДж/кг}pipi[i]:=pigas[i]+(r*(pivozd[i]-pigas[i]));{-}end;hc:=Appr(temp,hh,tc);{кДж/кг}pi01:=Appr(temp,pipi,tc);{-}pi02:=pi01-(ln(pc/pd)/ln(10));{-}tdt:=Appr(pipi,temp,pi02);{°C}ht:=Appr(temp,hh,tdt);{кДж/кг}mu:=mugas+(r*(muvozd-mugas));{г/моль}h0:=hc-ht;{кДж/кг}rot:=pd*100*mu/(RR*(tdt+273.15));{кг/м^3}hd:=hc-eta*h0;{кДж/кг}td:=Appr(hh,temp,hd);{°C}ro:=pd*100*mu/(RR*(td+273.15));{кг/м^3}{Form1.StringGrid1.Cells[50,j]:=format('%10.2f',[r]);Form1.StringGrid1.Cells[51,j]:=format('%10.2f',[hc]);Form1.StringGrid1.Cells[52,j]:=format('%10.2f',[pi01]);Form1.StringGrid1.Cells[53,j]:=format('%10.2f',[pi02]);Form1.StringGrid1.Cells[54,j]:=format('%10.2f',[tdt]);Form1.StringGrid1.Cells[55,j]:=format('%10.2f',[ht]);Form1.StringGrid1.Cells[56,j]:=format('%10.2f',[mu]);Form1.StringGrid1.Cells[57,j]:=format('%10.2f',[h0]);Form1.StringGrid1.Cells[58,j]:=format('%10.2f',[rot]);Form1.StringGrid1.Cells[59,j]:=format('%10.5f',[hd]);}Form1.StringGrid1.Cells[4,j]:=format('%10.2f',[td]);{Form1.StringGrid1.Cells[61,j]:=format('%10.4f',[ro]);}end;procedure SUT(pc,pd,tc,alfa,eta:double; j:integer;var hc,h0,tdt,td,hd,rot,ro:double);var r,pi01,pi02,ht,mu:double;i:integer;hgas,pigas,hh,pipi:array [1..26] of double;const mugas=28.66; {г/моль}161beginr:=1-(138.8/(138.8+(123.8*(alfa-1))));for i:=1 to 26 dobeginhgas[i]:=0.128*h2[i]+0.136*h3[i]+0.736*h4[i];pigas[i]:=0.128*pi2[i]+0.136*pi3[i]+0.736*pi4[i];hh[i]:=hgas[i]+(r*(hvozd[i]-hgas[i]));pipi[i]:=pigas[i]+(r*(pivozd[i]-pigas[i]));end;hc:=Appr(temp,hh,tc);{кДж/кг}pi01:=Appr(temp,pipi,tc);{-}pi02:=pi01-(ln(pc/pd)/ln(10));{-}tdt:=Appr(pipi,temp,pi02);{°C}ht:=Appr(temp,hh,tdt);{кДж/кг}mu:=mugas+(r*(muvozd-mugas));{г/моль}h0:=hc-ht;{кДж/кг}rot:=pd*100*mu/(RR*(tdt+273.15));{кг/м^3}hd:=hc-eta*h0;{кДж/кг}td:=Appr(hh,temp,hd);{°C}ro:=pd*100*mu/(RR*(td+273.15));{кг/м^3}{-}{кДж/кг}{-}{кДж/кг}{-}Form1.StringGrid1.Cells[4,j]:=format('%10.2f',[td]);end;{---------------------Подпрограммы расчета ГТУ----------------------------}procedure GTUneohl(Ne,tc,ta,pa,pik,lambda,etaks,etameh,etaeg,etat,etak,alfaut:double;top,j:integer;var tb,td,htur,hkom,hgtu,Ntur,Nkom,fi,b,alfa,L0,etagtu,Qniz:double);var ha,h0,tbt,rot,ro,eps,hgas,hgas25,hvozduh,hb,Gtur,Gkom,Btop:double;hgasX,hvozdX,hbX:double;const pd=1.0; {давление за турбиной, бар}beginpb:=pa*pik;{бар}Kompressor(pa,pb,ta,etak,ha,h0,tbt,tb,hb,rot,ro);eps:=pik*lambda;{-}pc:=pd*eps;{бар}if (top=1) thenbeginQniz:=50062;{кДж/кг}L0:=17.16;{кг/кг}hgas:=0.095*Appr(temp,h2,tc)+0.190*Appr(temp,h3,tc)+0.715*Appr(temp,h4,tc);{кДж/кг}hgas25:=0.095*Appr(temp,h2,25)+0.190*Appr(temp,h3,25)+0.715*Appr(temp,h4,25);{кДж/кг}endelse if (top=2) thenbeginQniz:=44300;{кДж/кг}L0:=14.88;{кг/кг}hgas:=0.128*Appr(temp,h2,tc)+0.136*Appr(temp,h3,tc)+0.736*Appr(temp,h4,tc);{кДж/кг}hgas25:=0.128*Appr(temp,h2,25)+0.136*Appr(temp,h3,25)+0.736*Appr(temp,h4,25);{кДж/кг}end;hvozduh:=Appr(temp,hvozd,tc);{кДж/кг}hgasX:=hgas-hgas25;{кДж/кг}hvozdX:=hvozduh-Appr(temp,hvozd,25);{кДж/кг}hbX:=hb-Appr(temp,hvozd,25);{кДж/кг}alfa:=(Qniz*etaks+L0*hvozdX-(1+L0)*hgasX)/(L0*(hvozdX-hbX));{-}if (top=1) then Metan(pc,pd,tc,alfa,etat,j,hc,h0,tdt,td,hd,rot,ro)else if (top=2) then SUT(pc,pd,tc,alfa,etat,j,hc,h0,tdt,td,hd,rot,ro);htur:=hc-hd;hkom:=hb-ha;b:=(alfa*L0*(1+alfaut))/(1+alfa*L0);{-}hgtu:=htur*etameh-b*hkom;{кДж/кг}Gtur:=Ne*1000/(hgtu*etaeg);{кг/с}Gkom:=b*gtur;{кг/с}Btop:=Gtur/(1+alfa*L0);{кг/с}Ntur:=Gtur*htur;{кВт}Nkom:=Gkom*hkom;{кВт}fi:=(Ntur-Nkom)/Ntur;{-}etagtu:=Ne*1000/(Btop*Qniz);{-}Form1.StringGrid1.Cells[2,j]:=format('%10.2f',[alfa]);Form1.StringGrid1.Cells[3,j]:=format('%10.4f',[fi]);Form1.StringGrid1.Cells[5,j]:=format('%10.4f',[etagtu]);end;procedure GTUohl(Ne,tc,ta,pa,pik,lambda,etaks,etameh,etaeg,etat,etak,alfaut:double;tw,nun:double;top,z,j:integer;var tb,td,htur,hkom,hgtuohl,Gtur,Gkom,Gexit,fi,etagtuohl,Btop,Qniz:double);var Ntur,Nkom,gw,t2,Cpgas,gamma,b,h,Gks:double;beginGTUneohl(Ne,tc,ta,pa,pik,lambda,etaks,etameh,etaeg,etat,etak,alfaut,top,j,tb,td,htur,hkom,hgtu,Ntur,Nkom,fi,b,alfa,L0,etagtu,Qniz);gw:=0.02+0.00032*(tc-tw);{кг/с}Cpgas:=1.22;{кДж/(кг*К)}t2:=(tc+273.15)-(1/z)*(htur/Cpgas);{К}162gamma:=((1-fi)/fi)-((z-1)/(z*fi))*((tb+273.15)/t2)+(nun/fi)*(1/z);h:=htur-b*hkom;{кДж/кг}hgtuohl:=h*(1-gamma*gw);{кДж/кг}etameh:=1-(1-etameh)/fi;{-}Gtur:=Ne*1000/(hgtuohl*etameh*etaeg);{кг/с}Btop:=Gtur/(1+alfa*L0);{кг/с}Gks:=(alfa*L0/(1+alfa*L0))*Gtur;{кг/с}Gkom:=Gtur*(b+gw);{кг/с}Gexit:=Gtur*(1+gw);{кг/с}etagtuohl:=etagtu*(1-gamma*gw);{-}{-}Form1.StringGrid1.Cells[7,j]:=format('%10.2f',[Gtur]);Form1.StringGrid1.Cells[6,j]:=format('%10.2f',[Btop]);Form1.StringGrid1.Cells[8,j]:=format('%10.2f',[Gexit]);end;{----------------------------------------------------------------------}{------Процедура расчета охлаждаемой газовой турбины-------------------}{----------------------------------------------------------------------}{-------Процедура определения аэродинамических потерь------------------}procedure aerodin(ohlazd:boolean; lopat:string;Tg,Tw,lambda2t,bb,l,beta1,beta2:double;var etapr:double;var lks:double);var etakr,etaprmod,etakrmod,t,tmod,B,Bmod,bbmod,lmod,delta,deltamod,a2,a2mod,beta1mod,beta2mod,delkr,delkrmod,e,e0,edelta,elambda,emod,e0mod,edeltamod,elambdamod,delbeta,delbetamod:double;f1:textfile;constp=0.3;dotv=0.5; {Durchmesser}etatrprof=0.0045;{---------------Расчет edelta---------------------------------------}function funedelta(beta1,delta:double):double;var str1,str2,del:double;beginif (delta>=0) and (delta<5) then beginstr1:=0;str2:=0.07-0.0008*(beta1-40);del:=5;end;if (delta>=5) and (delta<10) then beginstr1:=0.07-0.0008*(beta1-40);str2:=0.11-0.0014*(beta1-40);del:=10;end;if (delta>=10) and (delta<15) then beginstr1:=0.11-0.0014*(beta1-40);str2:=0.14-0.0022*(beta1-40);del:=15;end;if (delta>=15) {and (delta<=20)} then beginstr1:=0.14-0.0022*(beta1-40);str2:=0.16-0.0032*(beta1-40);del:=20;end;funedelta:=str2-((del-delta)/5)*(str2-str1);end;{---------------Расчет elambda---------------------------------------}function funelambda(lambda2t:double):double;var i:integer;const L2t:array[1..8] of real=(0.0,0.7,0.8,0.9,1.0,1.07,1.1,1.2);Ela:array[1..8] of real=(1.0,1.0,1.15,1.45,1.85,2.0,1.85,1.25);begini:=1;while lambda2t>L2t[i] do i:=i+1;funelambda:=Ela[i-1]+(Ela[i]-Ela[i-1])*((lambda2t-L2t[i-1])/(L2t[i]-L2t[i-1]));end;{----------------------Расчет e0------------------------------------}function fune0(delbeta:double):currency;var i:integer;qq:double;const del:array[1..15] of currency=(0,50,55,60,65,70,75,80,85,90,95,100,105,110,180);E0:array[1..15] ofcurrency=(0.12,0.13,0.15,0.17,0.19,0.22,0.23,0.24,0.245,0.25,0.245,0.24,0.23,0.22,0.21);begini:=1;while delbeta>del[i] do i:=i+1;fune0:=E0[i-1]+(E0[i]-E0[i-1])*((delbeta-del[i-1])/(del[i]-del[i-1]));end;{-----}begin163l:=l*1000;{высота лопатки (мм)}if lopat='13' thenbeginbeta1mod:=97.17;beta2mod:=17.72;tmod:=0.707;deltamod:=9.20;delkrmod:=0.107;Bmod:=0.579;a2mod:=0.215;bbmod:=66.62;end elsebeginbeta1mod:=51.17;beta2mod:=28.03;tmod:=0.649;deltamod:=3.97;delkrmod:=0.151;Bmod:=0.825;a2mod:=0.305;bbmod:=59.90;end;a2mod:=a2mod*bbmod;delkrmod:=delkrmod*a2mod;Bmod:=Bmod*bbmod;delta:=deltamod;t:=tmod;lks:=t*(bb/1000)*cos(beta2*pi/180);{модельное горло канала (мм)}{модельная толщина выходной кромки (мм)}{модельная ширина канала (мм)}{угол отгиба выходной кромки (град)}{шаг решетки (безразм)}{длина косого среза (м)}delbeta:=180-(beta1+beta2);delbetamod:=180-(beta1mod+beta2mod);e0:=fune0(delbeta);edelta:=funedelta(beta1,delta);elambda:=funelambda(lambda2t);e:=(e0-edelta)*elambda;e0mod:=fune0(delbetamod);edeltamod:=funedelta(beta1mod,deltamod);elambdamod:=funelambda(lambda2t);emod:=(e0mod-edeltamod)*elambdamod;delkr:=(delkrmod*bb/bbmod)+dotv;{толщина выходной кромки (мм)}a2:=a2mod*bb/bbmod;{горло канала (мм)}etakr:=e*delkr/a2;etakrmod:=emod*delkrmod/a2mod;if (lopat='13') then etaprmod:=1-sqr(0.98-0.008*((bb/1000)/l))else etaprmod:=1-sqr(0.96-0.014*((bb/1000)/l));B:=Bmod*bb/bbmod;{ширина профиля (мм)}lmod:=l*1000;{модельная высота лопатки (мм)} {!!!}l:=l*1000;{высота лопатки (мм)}{etapr:=((etaprmod-etakrmod)*(1+t*B/l)/(1+tmod*Bmod/lmod)+etatrprof)*exp(p*ln(Tg/Tw))+etakr;}etapr:=((etaprmod-etakrmod)*(1+t*B/l)/(1+tmod*Bmod/lmod)+etatrprof*(1+t*B/l))*exp(p*ln(Tg/Tw))+etakr;{etapr:=etaprmod;}if ohlazd=false then etapr:=etaprmod;end;{---Расчет теплоемкостей по температуре или энтальпии Cp и Cph-----------}{function Cp(t:double):double;beginCp:=1000*Appr(temp,Cpps,t);end;function Cph(h:double):double;beginh:=h/1000;Cph:=1000*Appr(hps,Cpps,h);end;}{-------------Выбор лопаточного профиля---------------------------------}function lopat1(beta1,beta2:double):string;beginlopat1:='13';end;function lopat2(beta1,beta2:double):string;begin{lopat2:='89';}lopat2:='89';end;{------------Расчет распределения изоэнтропийных температур--------------}procedure isotemp(lopat:string; p0,p1,t1t:double;var Tiso:massiv;var dlina:double);var f1:textfile;164i,j:integer;w,koord,plonov,taut,eps,a,b,pp:double;koor,plo:array[1..8] of double;otnplo,tau:massiv;const k=1.29;koor13:array[1..8] of double=(0,0.1,0.2,0.3,0.4,0.5,0.6,0.65);plo13:array[1..8] of double=(0.21,0.22,0.24,0.28,0.34,0.40,0.48,0.53);koor89:array[1..8] of double=(0,0.1,0.2,0.3,0.4,0.5,0.6,0.71);plo89:array[1..8] of double=(0.3,0.305,0.31,0.33,0.36,0.4,0.44,0.49);function funtau(x,f,p0,p1:double):double;var kk,pp:double;const k=1.29;beginpp:=exp(((k-1)/k)*ln(p1/p0));kk:=1/(k-1);funtau:=1/exp(kk*ln(x))*sqrt((1-pp/x)/(1-pp))-f;end;beginfor i:=1 to 8 doif lopat='13' thenbeginkoor[i]:=koor13[i];plo[i]:=plo13[i];end elsebeginkoor[i]:=koor89[i];plo[i]:=plo89[i];end;dlina:=koor[8];w:=koor[8]/10;koord:=w;otnplo[1]:=plo[1]/plo[8];for i:=2 to 11 do beginj:=1;while koord>koor[j] do j:=j+1;plonov:=plo[j-1]+(plo[j]-plo[j-1])*((koord-koor[j-1])/(koor[j]-koor[j-1]));otnplo[i]:=plonov/plo[8];koord:=koord+w;end;for i:=1 to 11 do begina:=exp(((k-1)/k)*ln(p1/p0))+0.001;b:=1.01;eps:=1;while (eps>0.00001) do begintau[i]:=(b+a)/2;if (funtau(tau[i],otnplo[i],p0,p1)*funtau(a,otnplo[i],p0,p1))>0 thena:=tau[i]else b:=tau[i];eps:=abs(b-a);end;Tiso[i]:=(t1t+273.15)/tau[i]-273.15;end;end;{-----------------------Функция расхода в канале-------------------------}procedure rashod(gohl,dlina:double;var ras:massiv);var i:integer;w,x:double;beginw:=dlina/10;x:=0;for i:=1 to 11 do beginras[i]:=gohl*(1-x/(2*dlina));x:=x+w;end;end;{----------------Определение конвективных потерь-------------------------}function funetakon(ohlazd:boolean; lopat:string;p0,p1,T0,t1t,gohl,Tvozd,Tw,bb,lks:double):double;var Tiso,ras:massiv;int,dq,dx,g,Tt,aa,delq:double;dlin:double;i:integer;const A=0.5;beginisotemp(lopat,p0,p1,t1t,Tiso,dlin);rashod(gohl,dlin,ras);int:=0;dlin:=dlin*bb/1000;delq:=-gohl*1000*Appr(temp,Cpvozd,Tvozd)*A*(Tw-Tvozd);dq:=delq/(dlin+0.5*lks);dx:=dlin/10;for i:=1 to 10 do beging:=(ras[i]+ras[i+1])/2;Tt:=(Tiso[i]+Tiso[i+1])/2;165int:=int+((1+g)*(1-(t1t+273.15)/(Tt+273.15))*dq*dx);end;funetakon:=-int/((1+gohl)*1000*Appr(temp,Cpps,t1t)*(T0-t1t));if ohlazd=false then funetakon:=0;end;{-----------Определение перфорационных потерь-----------------------------}function funetaper(ohlazd:boolean; lopat:string;p0,p1,T0,t1t,c1t,G0,gohl,Tvozd,bb,lks:double):double;var Tiso,ras:massiv;int,dx,g,Tt,ctr,mv:double;dlin:double;i:integer;const cvozd=200;beta=pi/4;beginisotemp(lopat,p0,p1,t1t,Tiso,dlin);rashod(gohl,dlin,ras);int:=0;ctr:=sqrt(sqr(c1t)+sqr(cvozd)-2*c1t*cvozd*cos(beta)); {c1=const}dlin:=dlin*bb/1000;{mv:=gohl/(4*dlin);} {polovina ohl vozduha na perforazionnoe}mv:=gohl*G0/2*(dlin+lks);dx:=dlin/10;for i:=1 to 10 dobeging:=(ras[i]+ras[i+1])/2;Tt:=(Tiso[i]+Tiso[i+1])/2;int:=int+(((Tvozd+ctr*ctr/(2*1000*Appr(temp,Cpps,t1t)))*t1t/Tt(Tvozd+cvozd*cvozd/(2*1000*Appr(temp,Cpps,t1t))))*mv/(G0*(1+g)))*dx;end;funetaper:=(1/(1+gohl))*(gohl+(1/(T0-t1t))*int);if ohlazd=false then funetaper:=0;end;{-------------Температурная поправка на перфорацию---------------------}function fdelTp(ohlazd:boolean; lopat:string;p0,p1,T0,t1t,c1t,G0,gohl,Tvozd,bb,lks:double):double;var Tiso,ras:massiv;int,dx,g,Tt,ctr,mv:double;dlin:double;i:integer;const cvozd=200;beta=pi/4;beginisotemp(lopat,p0,p1,t1t,Tiso,dlin);rashod(gohl,dlin,ras);for i:=1 to 11 do begin{writeln(Tiso[i]:15:5);writeln(ras[i]:15:5);}end;int:=0;ctr:=sqrt(sqr(c1t)+sqr(cvozd)-2*c1t*cvozd*cos(beta)); {c1=const}dlin:=dlin*bb/1000;mv:=gohl*G0/2*(dlin+lks);dx:=dlin/10;for i:=1 to 10 dobeging:=(ras[i]+ras[i+1])/2;Tt:=(Tiso[i]+Tiso[i+1])/2;int:=int+((t1t/Tt)*(Tvozd+cvozd*cvozd/(2*1000*Appr(temp,Cpps,t1t)))*mv)*dx;end;fdelTp:=(gohl/(2*(1+gohl)))*(int/(G0*(1+gohl))-t1t);if ohlazd=false then fdelTp:=0;end;{-----------Температурная поправка на профильные потери-----------------}function fdelTa(ohlazd:boolean; T0,t1t,etapr:double):double;beginfdelTa:=(T0-t1t)*etapr;end;{-----------Температурная поправка на конвекцию-------------------------}function fdelTk(ohlazd:boolean; lopat:string;p0,p1,T0,t1t,gohl,Tvozd,Tw,bb,lks:double):double;var Tiso,ras:massiv;int,dq,dx,g,Tt,aa,delq:double;dlin:double;i:integer;const A=0.5;beginisotemp(lopat,p0,p1,t1t,Tiso,dlin);rashod(gohl,dlin,ras);for i:=1 to 11 do begin{writeln(Tiso[i]:15:5);writeln(ras[i]:15:5);}end;int:=0;dlin:=dlin*bb/1000;166delq:=-gohl*1000*Appr(temp,Cpvozd,Tvozd)*A*(Tw-Tvozd);dq:=delq/(dlin+0.5*lks);dx:=dlin/10;for i:=1 to 10 dobeging:=(ras[i]+ras[i+1])/2;Tt:=(Tiso[i]+Tiso[i+1])/2;int:=int+((t1t/Tt)*(1+g)*dq*dx);end;fdelTk:=int/((1+gohl)*1000*Appr(temp,Cpps,t1t));if ohlazd=false then fdelTk:=0;end;{--------------------Расчет турбинной ступени------------------------}procedure stupen(vyvod,ohlazdkon1,ohlazdper1,ohlazdkon2,ohlazdper2:boolean;fikt,stup,z:integer;d,G0,p0,p2,t0,c0,Tw1,Tw2,gohl1abs,gohl2abs,alfa0,alfa1,ro,Tvozd1,Tvozd2,alfavozd:double;var Ni,G2,c2,t2,Niso,etasumohl,alfavozdkon:double);var lopatka,lopat:string;h0,h2,h00,t00,HH0,HH00,fi,ucf,cf,c1,w1,w2,c1t,c2t,w1t,w2t,lks,u,HH0r,HH0c,h2tt,HH00c,lambdaad1,lambdaad2,beta1,beta2,l1,l2,F1,F2,p1,t1,h1,etapr1,etakon1,etaper1,v1t,v2t,ksi,t1t,h1t,t2t,h2t,alfa2,eta1,xx,delTp1,delTp2,delTa1,delTa2,delTk1,delTk2,Lu,Nu,Hvozd1,Hvozd2,G0rab,pvozd1,pvozd2,kkvozd,E,kpdu,etadiafr,etaband,etatrenia,delHutech,delHtrenia,delHc,delHp,kappa,delHvs,Hi,kpdi,gohl1,gohl2,eta2,etapr2,etakon2,etaper2,t2tt,t1gorlo,t2gorlo,gohl1kon,gohl1per,gohl2kon,gohl2per,Gohldop1,Gohldop2,dolvozd,dolps,dolpskon:double;const n=50;pi=3.1416;k=1.29;R=290;bb=90; {horda}dell=0.003;mu=0.98;wvozd=200;Cpv=1.070;beta=pi/4;L0=17.16;beginh0:=0; t2:=0; h2:=0; h00:=0; t00:=0; HH0:=0; HH00:=0; fi:=0; ucf:=0;cf:=0; c1:=0; c2:=0; w1:=0; w2:=0; c1t:=0; c2t:=0; w1t:=0; w2t:=0;u:=0; HH0r:=0; HH0c:=0; h2tt:=0; HH00c:=0; lambdaad1:=0; lambdaad2:=0;t2tt:=0; beta1:=0; beta2:=0; l1:=0; l2:=0; F1:=0; F2:=0; p1:=0; t1:=0; h1:=0;etapr1:=0; etakon1:=0; etaper1:=0; v1t:=0; v2t:=0; ksi:=0; t1t:=0; h1t:=0;t2t:=0; h2t:=0; alfa2:=0; eta1:=0; xx:=0; eta2:=0; Niso:=0; etasumohl:=0;gohl1kon:=0; gohl1per:=0; gohl2kon:=0; gohl2per:=0; gohl1:=0; gohl2:=0;dolvozd:=((alfavozd-1)*L0)/(1+alfavozd*L0);dolps:=(1+L0)/(1+alfavozd*L0);gohl1:=gohl1abs/G0;{-}h0:=dolps*Appr(temp,hps,t0)+dolvozd*Appr(temp,hvozd,t0); {кДж/кг}t2t:=(t0+273.15)*exp(((k-1)/k)*ln(p2/p0))-273.15;{°С}h2t:=dolps*Appr(temp,hps,t2t)+dolvozd*Appr(temp,hvozd,t2t); {кДж/кг}h00:=h0+c0*c0/(2*1000);{кДж/кг}t00:=dolps*Appr(hps,temp,h00)+dolvozd*Appr(hvozd,temp,h00); {°С}HH0:=h0-h2t;{кДж/кг}HH00:=HH0+c0*c0/(2*1000);{кДж/кг}fi:=0.97;{-}ucf:=(fi*cos(alfa1*pi/180))/(2*sqrt(1-ro));{-}cf:=sqrt(2*1000*HH00);{м/с}{u:=cf*ucf;d:=u/(pi*n);d:=2.5;}u:=pi*d*n;{м/с}HH0r:=HH00*ro;{кДж/кг}HH0c:=HH00*(1-ro)-c0*c0/(2*1000);{кДж/кг}h1t:=h0-HH0c;{кДж/кг}h2tt:=h0-HH0;{кДж/кг}HH00c:=HH00*(1-ro);{кДж/кг}c1t:=sqrt(2*1000*HH00c);{м/с}t1t:=dolps*Appr(hps,temp,h1t)+dolvozd*Appr(hvozd,temp,h1t); {°С}p1:=p0*exp((k/(k-1))*ln((t1t+273.15)/(t0+273.15)));{бар}lopat:=lopat1(alfa0,alfa1);lopatka:='D:\lopatka\'+lopat+'.txt';lambdaad1:=sqrt(((k+1)/(k-1))*(1-exp(((k-1)/k)*ln(p1/p0))));l1:=0.080; {!!!}{м}aerodin(ohlazdper1,lopatka,t00,Tw1,lambdaad1,bb,l1,alfa0,alfa1,etapr1,lks);etakon1:=funetakon(ohlazdkon1,lopat,p0,p1,T0,t1t,gohl1,Tvozd1,Tw1,bb,lks);etaper1:=funetaper(ohlazdper1,lopat,p0,p1,T0,t1t,c1t,G0,gohl1,Tvozd1,bb,lks);eta1:=etapr1+etakon1+etaper1;{-}fi:=sqrt(1-eta1);{-}c1:=fi*c1t;{м/с}delTp1:=fdelTp(ohlazdper1,lopat,p0,p1,T0,t1t,c1t,G0,gohl1,Tvozd1,bb,lks); {°C}delTk1:=fdelTk(ohlazdkon1,lopat,p0,p1,T0,t1t,gohl1,Tvozd1,Tw1,bb,lks);{°C}delTa1:=fdelTa(ohlazdper1,T0,t1t,etapr1);{°C}t1gorlo:=t1t+delTp1+delTa1+delTk1;{°С}if ohlazdkon1=true then Gohldop1:=gohl1abs;if ohlazdper1=true then Gohldop1:=0.5*gohl1abs;{-}{-}167G0rab:=G0*(1+gohl1);{кг/с}t1:=(G0rab*t1gorlo+Gohldop1*Tvozd1)/(G0rab+Gohldop1);{°C}h1:=dolps*Appr(temp,hps,t1)+dolvozd*Appr(temp,hvozd,t1);{кДж/кг}t2tt:=(t1+273.15)*exp(((k-1)/k)*ln(p2/p1))-273.15;{°C}v1t:=R*(t1t+273)/(p1*100000);{м^3/кг}{h2t:=h1-HH0r;t2t:=h2t/Cph(h2t);}w1:=sqrt(c1*c1+u*u-2*c1*u*cos(alfa1*pi/180));{м/с}{beta1:=arctan(sin(alfa1*pi/180)/(cos(alfa1*pi/180)-u/c1))*180/pi;}F1:=G0*v1t/(mu*c1t);{м^2}l1:=F1/(pi*d*sin(alfa1*pi/180));{м}{------------}aerodin(ohlazdper1,lopatka,t00,Tw1,lambdaad1,bb,l1,alfa0,alfa1,etapr1,lks);eta1:=etapr1+etakon1+etaper1;{-}fi:=sqrt(1-eta1);{-}c1:=fi*c1t;{м/с}w1:=sqrt(c1*c1+u*u-2*c1*u*cos(alfa1*pi/180));{м/с}beta1:=0;{град}beta1:=arctan(sin(alfa1*pi/180)/(cos(alfa1*pi/180)-u/c1))*180/pi;{град}if beta1<0 then beta1:=180+beta1;F1:=G0*v1t/(mu*c1t);{м^2}l1:=F1/(pi*d*sin(alfa1*pi/180));{м}{------------}l2:=l1+dell;{м}w2t:=sqrt(2*1000*HH0r+w1*w1);{м/с}v2t:=R*(t2tt+273)/(p2*100000);{м/с}F2:=G0*v2t/(mu*w2t);{м^2}xx:=F2/(pi*d*l2);{-}beta2:=arctan(xx/sqrt(1-sqr(xx)))*180/pi;{град}lopat:=lopat2(beta1,beta2);{lopatka:='D:\lopatka\'+lopat+'.txt';}lambdaad2:=sqrt(((k+1)/(k-1))*(1-exp(((k-1)/k)*ln(p2/p1))));{-}gohl2:=gohl2abs/G0rab;{-}aerodin(ohlazdper2,lopatka,t1,Tw2,lambdaad2,bb,l2,beta1,beta2,etapr2,lks);etakon2:=funetakon(ohlazdkon2,lopat,p1,p2,t1,t2tt,gohl2,Tvozd2,Tw2,bb,lks); {-}etaper2:=funetaper(ohlazdper2,lopat,p1,p2,t1,t2tt,w2t,G0rab,gohl2,Tvozd2,bb,lks);{-}eta2:=etapr2+etakon2+etaper2;{-}ksi:=sqrt(1-eta2);{-}w2:=ksi*w2t;{м/с}delTp2:=fdelTp(ohlazdper2,lopat,p1,p2,t1,t2tt,w2t,G0rab,gohl2,Tvozd2,bb,lks);{°С}delTk2:=fdelTk(ohlazdkon2,lopat,p1,p2,t1,t2tt,gohl2,Tvozd2,Tw2,bb,lks);{°С}delTa2:=fdelTa(ohlazdper2,t1,t2tt,etapr2);{°С}t2gorlo:=t2tt+delTp2+delTa2+delTk2;{°С}if ohlazdkon2=true then Gohldop2:=gohl2abs;if ohlazdper2=true then Gohldop2:=0.5*gohl2abs;G2:=G0rab*(1+gohl2);{кг/с}t2:=(G2*t2gorlo+Gohldop2*Tvozd2)/(G2+Gohldop2);{°С}h2:=dolps*Appr(temp,hps,t2)+dolvozd*Appr(temp,hvozd,t2);{кДж/кг}c2:=sqrt(w2*w2+u*u-2*w2*u*cos(beta2*pi/180));{м/с}alfa2:=abs(arctan(sin(beta2*pi/180)/(cos(beta2*pi/180)-(u/w2)))*180/pi); {град}{-------}Lu:=(1+gohl1)*u*(w1*cos(beta1*pi/180)+w2*cos(beta2*pi/180)+gohl2*(wvozd*cos(beta)-w2*cos(beta2*pi/180)))/1000;{кДж/кг}Nu:=Lu*G0;{кВт}pvozd1:=1.15*p0;{бар}pvozd2:=1.15*p1;{бар}kkvozd:=0.279; {(k-1)/k}Hvozd1:=Appr(temp,hvozd,Tvozd1)*(1-exp(kkvozd*ln(p2/pvozd1)));{кДж/кг}Hvozd2:=Appr(temp,hvozd,Tvozd2)*(1-exp(kkvozd*ln(p2/pvozd2)));{кДж/кг}E:=HH00+gohl1*Hvozd1+gohl2*(1+gohl1)*Hvozd2;{кДж/кг}kpdu:=Lu/E;{-}if (stup=1) then etadiafr:=0else etadiafr:=0.0095;etaband:=0.0160;{-}delHutech:=(etadiafr+etaband)*E;{кДж/кг}etatrenia:=0.001*d*ucf*ucf*ucf/(pi*l1*sin(alfa1*pi/180));{-}delHtrenia:=etatrenia*E;{кДж/кг}delHc:=(dolps*Appr(temp,Cpps,t1t)+dolvozd*Appr(temp,Cpvozd,t1t))*delTa1;{кДж/кг}delHp:=(dolps*Appr(temp,Cpps,t2t)+dolvozd*Appr(temp,Cpvozd,t2t))*delTa2;{кДж/кг}delHvs:=c2*c2/(2*1000);{кДж/кг}if (stup=z) then kappa:=0else kappa:=1;Hi:=Lu{-delHc-delHp}-delHutech-delHtrenia-(1-kappa)*delHvs;{кДж/кг}kpdi:=Hi/E;{-}{Ni:=G0*Lu-delHutech*G0rab-delHtrenia*G0rab;}Ni:=Hi*(1-ro)*G0+Hi*ro*G0rab;{кВт}Niso:=G0*HH0+gohl1abs*Hvozd1+gohl2abs*Hvozd2;{кВт}etasumohl:=etaper1+etakon1+etaper2+etakon2;{-}dolpskon:=dolps*G0/(G0+gohl1abs+gohl2abs);{-}alfavozdkon:=((1+L0)/(dolpskon*L0))-(1/L0);{-}if vyvod=true thenbeginForm1.StringGrid2.Cells[stup,0]:=inttostr(stup)+'-я ступень';Form1.StringGrid2.Cells[stup,1]:=format('%10.2f',[G0]);Form1.StringGrid2.Cells[stup,2]:=format('%10.2f',[p0]);Form1.StringGrid2.Cells[stup,3]:=format('%10.2f',[p2]);Form1.StringGrid2.Cells[stup,4]:=format('%10.2f',[t0]);Form1.StringGrid2.Cells[stup,5]:=format('%10.2f',[c0]);168Form1.StringGrid2.Cells[stup,6]:=format('%10.2f',[Tw1]);Form1.StringGrid2.Cells[stup,7]:=format('%10.2f',[Tw2]);Form1.StringGrid2.Cells[stup,8]:=format('%10.4f',[gohl1]);Form1.StringGrid2.Cells[stup,9]:=format('%10.4f',[gohl2]);Form1.StringGrid2.Cells[stup,10]:=format('%10.2f',[G0rab]);Form1.StringGrid2.Cells[stup,11]:=format('%10.2f',[G2]);Form1.StringGrid2.Cells[stup,12]:=format('%10.2f',[h0]);Form1.StringGrid2.Cells[stup,13]:=format('%10.2f',[h00]);Form1.StringGrid2.Cells[stup,14]:=format('%10.2f',[HH0]);Form1.StringGrid2.Cells[stup,15]:=format('%10.2f',[HH00]);Form1.StringGrid2.Cells[stup,16]:=format('%10.3f',[ucf]);Form1.StringGrid2.Cells[stup,17]:=format('%10.3f',[u/cf]);Form1.StringGrid2.Cells[stup,18]:=format('%10.2f',[u]);Form1.StringGrid2.Cells[stup,19]:=format('%10.2f',[d]);Form1.StringGrid2.Cells[stup,20]:=format('%10.2f',[HH0r]);Form1.StringGrid2.Cells[stup,21]:=format('%10.2f',[HH0c]);Form1.StringGrid2.Cells[stup,22]:=format('%10.2f',[h1t]);Form1.StringGrid2.Cells[stup,23]:=format('%10.2f',[c1t]);Form1.StringGrid2.Cells[stup,24]:=format('%10.2f',[p1]);Form1.StringGrid2.Cells[stup,25]:=format('%10.2f',[delTa1]);Form1.StringGrid2.Cells[stup,26]:=format('%10.2f',[delTk1]);Form1.StringGrid2.Cells[stup,27]:=format('%10.2f',[delTp1]);Form1.StringGrid2.Cells[stup,28]:=format('%10.2f',[t1gorlo]);Form1.StringGrid2.Cells[stup,29]:=format('%10.2f',[t1]);Form1.StringGrid2.Cells[stup,30]:=format('%10.2f',[h1]);Form1.StringGrid2.Cells[stup,31]:=format('%10.5f',[etapr1]);Form1.StringGrid2.Cells[stup,32]:=format('%10.5f',[etakon1]);Form1.StringGrid2.Cells[stup,33]:=format('%10.5f',[etaper1]);Form1.StringGrid2.Cells[stup,34]:=format('%10.5f',[eta1]);Form1.StringGrid2.Cells[stup,35]:=format('%10.4f',[fi]);Form1.StringGrid2.Cells[stup,36]:=format('%10.2f',[c1]);Form1.StringGrid2.Cells[stup,37]:=format('%10.2f',[w1]);Form1.StringGrid2.Cells[stup,38]:=format('%10.2f',[alfa0]);Form1.StringGrid2.Cells[stup,39]:=format('%10.2f',[alfa1]);Form1.StringGrid2.Cells[stup,40]:=format('%10.2f',[beta1]);Form1.StringGrid2.Cells[stup,41]:=format('%10.4f',[F1]);Form1.StringGrid2.Cells[stup,42]:=format('%10.4f',[l1]);Form1.StringGrid2.Cells[stup,43]:=format('%10.4f',[l2]);Form1.StringGrid2.Cells[stup,44]:=format('%10.2f',[w2t]);Form1.StringGrid2.Cells[stup,45]:=format('%10.4f',[F2]);Form1.StringGrid2.Cells[stup,46]:=format('%10.2f',[beta2]);Form1.StringGrid2.Cells[stup,47]:=format('%10.5f',[etapr2]);Form1.StringGrid2.Cells[stup,48]:=format('%10.5f',[etakon2]);Form1.StringGrid2.Cells[stup,49]:=format('%10.5f',[etaper2]);Form1.StringGrid2.Cells[stup,50]:=format('%10.5f',[eta2]);Form1.StringGrid2.Cells[stup,51]:=format('%10.4f',[ksi]);Form1.StringGrid2.Cells[stup,52]:=format('%10.2f',[w2]);Form1.StringGrid2.Cells[stup,53]:=format('%10.2f',[delTa2]);Form1.StringGrid2.Cells[stup,54]:=format('%10.2f',[delTk2]);Form1.StringGrid2.Cells[stup,55]:=format('%10.2f',[delTp2]);Form1.StringGrid2.Cells[stup,56]:=format('%10.2f',[t2gorlo]);Form1.StringGrid2.Cells[stup,57]:=format('%10.2f',[t2]);Form1.StringGrid2.Cells[stup,58]:=format('%10.2f',[h2]);Form1.StringGrid2.Cells[stup,59]:=format('%10.2f',[c2]);Form1.StringGrid2.Cells[stup,60]:=format('%10.2f',[alfa2]);Form1.StringGrid2.Cells[stup,61]:=format('%10.2f',[Lu]);Form1.StringGrid2.Cells[stup,62]:=format('%10.2f',[Nu/1000]);Form1.StringGrid2.Cells[stup,63]:=format('%10.2f',[E]);Form1.StringGrid2.Cells[stup,64]:=format('%10.4f',[kpdu]);Form1.StringGrid2.Cells[stup,65]:=format('%10.2f',[delHutech]);Form1.StringGrid2.Cells[stup,66]:=format('%10.2f',[delHtrenia]);Form1.StringGrid2.Cells[stup,67]:=format('%10.2f',[delHvs]);Form1.StringGrid2.Cells[stup,68]:=format('%10.4f',[kpdi]);Form1.StringGrid2.Cells[stup,69]:=format('%10.2f',[Ni/1000]);Form1.StringGrid2.Cells[stup,70]:=format('%10.2f',[Niso/1000]);Form1.StringGrid2.Cells[stup,72]:=format('%10.2f',[Tvozd1]);Form1.StringGrid2.Cells[stup,73]:=format('%10.2f',[Tvozd2]);Form1.StringGrid2.Cells[stup,74]:=format('%10.2f',[alfavozd]);Form1.StringGrid2.Cells[stup,75]:=format('%10.2f',[alfavozdkon]);end;end;{--------------Поступенчатый расчет газовой турбины----------------}procedure gasturbine(vyvod:boolean; z:integer;G00,Tc,p0,pk,tw,gohl,alfavozd:double;gvs,gvr,Tvozds,Tvozdr,d,alfa0,alfa1,ro:array of double;ohlazds,ohlazdr:array of byte;var kpdgt,Gkon,tkon,nun,Ntur:double; Gvozd:array of double);var ohlazdkon1,ohlazdper1,ohlazdkon2,ohlazdper2:array[1..6] of boolean;Ni,Niso,etasumohl,h,t,gs,gr,Tlops,Tlopr:array[1..6] of double;p:array[0..6] of double;i:integer;c0,c2,t0,t2,G0,G2,Nis,hc,hd,hdt,Td,Tdt,etasum,tkt,hkt,alfavozdkon:double;const k=1.29;beginfor i:=1 to z dobegin169if ohlazds[i]=1 then beginohlazdkon1[i]:=true;ohlazdper1[i]:=true;endelse if ohlazds[i]=2 then beginohlazdkon1[i]:=true;ohlazdper1[i]:=false;endelse beginohlazdkon1[i]:=false;ohlazdper1[i]:=false;end;if ohlazdr[i]=1 then beginohlazdkon2[i]:=true;ohlazdper2[i]:=true;endelse if ohlazdr[i]=2 then beginohlazdkon2[i]:=true;ohlazdper2[i]:=false;endelse beginohlazdkon2[i]:=false;ohlazdper2[i]:=false;end;end;for i:=1 to z dobegings[i]:=(gvs[i]/100)*gohl*G00;gr[i]:=(gvr[i]/100)*gohl*G00;Tlops[i]:=tw;Tlopr[i]:=tw;end;for i:=1 to z doGvozd[i]:=gs[z+1-i]+gr[z+1-i];t0:=tc;G0:=G00;c0:=50;p[0]:=p0;for i:=1 to z dobeginh0:=Appr(temp,hvozd,t0);tkt:=(t0+273.15)*exp(((k-1)/k)*ln(pk/p0))-273.15;hkt:=Appr(temp,hvozd,tkt);h[i]:=h0-(i*(h0-hkt)/z);t[i]:=Appr(hvozd,temp,h[i]);p[i]:=p0*exp((k/(k-1))*ln((t[i]+273.15)/(t0+273.15)));end;for i:=1 to z dobeginstupen(vyvod,ohlazdkon1[i],ohlazdper1[i],ohlazdkon2[i],ohlazdper2[i],1,i,z,d[i],G0,p[i-1],p[i],t0,c0,Tlops[i],Tlopr[i],gs[i],gr[i],alfa0[i],alfa1[i],ro[i],Tvozds[i],Tvozdr[i],alfavozd,Ni[i],G2,c2,t2,Niso[i],etasumohl[i],alfavozdkon);c0:=c2;t0:=t2;G0:=G2;alfavozd:=alfavozdkon;end;tkon:=t2+(sqr(c2-100)/(2*1000))/Appr(temp,Cpps,t2);Gkon:=G2;Ntur:=0;Nis:=0;etasum:=0;for i:=1 to 4 do beginNtur:=Ntur+Ni[i];Nis:=Nis+Niso[i];etasum:=etasum+etasumohl[i];end;kpdgt:=Ntur/Nis;if gohl<>0 then nun:=etasum/gohl;end;{--------------------------------------------------------------------}{--------------------------------------------------------------------}procedure TForm1.Button1Click(Sender: TObject);var i,j,jmax:integer;k,delta,Gexit,Gkon,Qniz,Gvozd1,Gvozd2,Gvozd3,Gvozd4,etagtuohl2,fi2,tcmin,tcmax,tcstep,tdop,gv1s,gv1r,gv2s,gv2r,gv3s,gv3r,gv4s,gv4r:double;deltatt,deltah1,deltapi1,deltah2,deltapi2,deltah3,deltapi3,deltah4,deltapi4:array[1..24] of double;beginif not trystrtofloat(edit1.text, k) then170beginshowmessage('Введите мощность ГТУ от 1 до 1000 МВт');exit;endelse if (strtofloat(edit1.Text)<1) or (strtofloat(edit1.Text)>1000) thenbeginshowmessage('Введите мощность ГТУ от 1 до 1000 МВт');exit;end;if not trystrtofloat(edit2.text, k) thenbeginshowmessage('Введите степень сжатия от 2 до 60');exit;endelse if (strtofloat(edit2.Text)<2) or (strtofloat(edit2.Text)>60) thenbeginshowmessage('Введите степень сжатия от 2 до 60');exit;end;if not trystrtofloat(edit3.text, k) thenbeginshowmessage('Введите температуру перед компрессором от -50 до 70°С');exit;endelse if (strtofloat(edit3.Text)<-50) or (strtofloat(edit3.Text)>70) thenbeginshowmessage('Введите температуру перед компрессором от -50 до 70°С');exit;end;if not trystrtofloat(edit4.text, k) thenbeginshowmessage('Введите давление перед компрессором от 0,9 до 1,1 бар');exit;endelse if (strtofloat(edit4.Text)<0.9) or (strtofloat(edit4.Text)>1.1) thenbeginshowmessage('Введите давление перед компрессором от 0,9 до 1,1 бар');exit;end;if not trystrtofloat(edit5.text, k) thenbeginshowmessage('Введите отношение давлений от 0,5 до 1');exit;endelse if (strtofloat(edit5.Text)<0.5) or (strtofloat(edit5.Text)>1) thenbeginshowmessage('Введите отношение давлений от 0,5 до 1');exit;end;if not trystrtofloat(edit6.text, k) thenbeginshowmessage('Введите КПД камеры сгорания от 0,5 до 1');exit;endelse if (strtofloat(edit6.Text)<0.5) or (strtofloat(edit6.Text)>1) thenbeginshowmessage('Введите КПД камеры сгорания от 0,5 до 1');exit;end;if not trystrtofloat(edit7.text, k) thenbeginshowmessage('Введите механический КПД от 0,5 до 1');exit;endelse if (strtofloat(edit7.Text)<0.5) or (strtofloat(edit7.Text)>1) thenbeginshowmessage('Введите механический КПД от 0,5 до 1');exit;end;if not trystrtofloat(edit8.text, k) thenbeginshowmessage('Введите КПД электрогенератора от 0,5 до 1');exit;endelse if (strtofloat(edit8.Text)<0.5) or (strtofloat(edit8.Text)>1) thenbeginshowmessage('Введите КПД электрогенератора от 0,5 до 1');exit;end;if not trystrtofloat(edit9.text, k) thenbeginshowmessage('Введите изоэнтропийный КПД турбины от 0,5 до 1');exit;endelse if (strtofloat(edit9.Text)<0.5) or (strtofloat(edit9.Text)>1) thenbeginshowmessage('Введите изоэнтропийный КПД турбины от 0,5 до 1');exit;end;171if not trystrtofloat(edit10.text, k) thenbeginshowmessage('Введите изоэнтропийный КПД компрессора от 0,5 до 1');exit;endelse if (strtofloat(edit10.Text)<0.5) or (strtofloat(edit10.Text)>1) thenbeginshowmessage('Введите изоэнтропийный КПД компрессора от 0,5 до 1');exit;end;if not trystrtofloat(edit11.text, k) thenbeginshowmessage('Введите коэффициент утечек от 0 до 0,1');exit;endelse if (strtofloat(edit11.Text)<0) or (strtofloat(edit11.Text)>0.1) thenbeginshowmessage('Введите коэффициент утечек от 0 до 0,1');exit;end;if not trystrtofloat(edit12.text, k) thenbeginshowmessage('Введите допускаемую температуру металла лопаток от 600 до 1400°С');exit;endelse if (strtofloat(edit12.Text)<600) or (strtofloat(edit12.Text)>1400) thenbeginshowmessage('Введите допускаемую температуру металла лопаток от 600 до 1400°С');exit;end;if not trystrtofloat(edit13.text, k) thenbeginshowmessage('Введите начальную температуру газа');exit;endelse if (strtofloat(edit13.Text)<600) or (strtofloat(edit13.Text)>2000) thenbeginshowmessage('Начальная температура газа должна находиться в диапазоне от 600 до2000°С');exit;end;if not trystrtofloat(edit14.text, k) thenbeginshowmessage('Введите начальную температуру газа');exit;endelse if (strtofloat(edit14.Text)<600) or (strtofloat(edit14.Text)>2000) thenbeginshowmessage('Начальная температура газа должна находиться в диапазоне от 600 до2000°С');exit;end;if not trystrtofloat(edit15.text, k) thenbeginshowmessage('Введите шаг по начальной температуре газа');exit;endelse if strtofloat(edit15.Text)<0.1 thenbeginshowmessage('Шаг по начальной температура газа должен быть не менее 0,1°С');exit;end;with Form1.StringGrid1 dofor i:=1 to RowCount-1 doRows[i].Clear;PageControl1.ActivePageIndex:=1;Ne:=strtofloat(edit1.text);pik:=strtofloat(edit2.text);ta:=strtofloat(edit3.text);pa:=strtofloat(edit4.text);lambda:=strtofloat(edit5.text);etaks:=strtofloat(edit6.text);etameh:=strtofloat(edit7.text);etaeg:=strtofloat(edit8.text);etat:=strtofloat(edit9.text);etak:=strtofloat(edit10.text);alfaut:=strtofloat(edit11.text);tw:=strtofloat(edit12.text);tcmin:=strtofloat(edit13.text);tcmax:=strtofloat(edit14.text);tcstep:=strtofloat(edit15.text);if RadioButton1.Checked=True then top:=1;if RadioButton2.Checked=True then top:=2;z:=4;tc:=tcmin;tdop:=tcmin;jmax:=1;while tdop<=tcmax do172beginjmax:=jmax+1;tdop:=tdop+tcstep;end;for j:=1 to jmax-1 dobeginnun:=0.6;Form1.StringGrid1.Cells[10,j]:='расчет ГТ';Form1.StringGrid1.OnMouseUp:=StringGrid1MouseUp;GTUohl(Ne,tc,ta,pa,pik,lambda,etaks,etameh,etaeg,etat,etak,alfaut,tw,nun,top,z,j,tb,td,htur,hkom,hgtuohl,Gtur,Gkom,Gexit,fi,etagtuohl,Btop,Qniz);Form1.StringGrid1.Cells[1,j]:=format('%10.2f',[tc]);Form1.StringGrid1.Cells[9,j]:=format('%10.4f',[etagtuohl]);Form1.StringGrid1.Cells[20,j]:=format('%10.2f',[tb]);tc:=tc+tcstep;end;end;procedure TForm1.StringGrid1MouseUp(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);var ACol,ARow,i:integer;tc,tw,gw:double;beginStringGrid1.MouseToCell(X,Y,ACol,ARow);if ACol=10 thenbeginPageControl1.ActivePageIndex:=2;edit18.text:=trim(StringGrid1.Cells[7,ARow]);edit16.text:=trim(StringGrid1.Cells[1,ARow]);edit17.text:=floattostr(strtofloat(edit2.text)*strtofloat(edit5.text));edit19.text:=edit12.text;edit48.text:=edit4.text;edit70.text:=trim(StringGrid1.Cells[2,ARow]);tc:=strtofloat(edit16.text);tw:=strtofloat(edit19.text);gw:=0.02+0.00032*(tc-tw);edit20.Text:=floattostr(gw);end;end;procedure TForm1.Button3Click(Sender: TObject);varvyvod:boolean;i,z:integer;ohlazds,ohlazdr: array[0..6] of byte;k,Gtur,tc,p0,pk,tw,etat2,Gkon,tkon,nun,Ntur,gohl,alfavozd:double;Gvozd,tohls,tohlr,d,alfa0,alfa1,ro,gvs,gvr: array[0..6] of double;beginif not trystrtofloat(edit16.text, k) thenbeginshowmessage('Введите начальную температуру газа от 600 до 2000°С');exit;endelse if (strtofloat(edit16.Text)<600) or (strtofloat(edit16.Text)>2000) thenbeginshowmessage('Введите начальную температуру газа от 600 до 2000°С');exit;end;if not trystrtofloat(edit17.text, k) thenbeginshowmessage('Введите давление перед турбиной от 1 до 60 бар');exit;endelse if (strtofloat(edit17.Text)<1) or (strtofloat(edit17.Text)>60) thenbeginshowmessage('Введите давление перед турбиной от 1 до 60 бар');exit;end;if not trystrtofloat(edit48.text, k) thenbeginshowmessage('Введите давление за турбиной от 0,9 до 59 бар');exit;endelse if (strtofloat(edit48.Text)<0.9) or (strtofloat(edit48.Text)>60) thenbeginshowmessage('Введите давление за турбиной от 0,9 до 59 бар');exit;end;if not trystrtofloat(edit18.text, k) thenbeginshowmessage('Введите расход газа от 1 до 10000 кг/с');exit;endelse if (strtofloat(edit18.Text)<1) or (strtofloat(edit18.Text)>10000) then173beginshowmessage('Введите расход газа от 1 до 10000 кг/с');exit;end;if not trystrtofloat(edit70.text, k) thenbeginshowmessage('Введите коэффициент избытка воздуха 1 до 10');exit;endelse if (strtofloat(edit70.Text)<1) or (strtofloat(edit70.Text)>10) thenbeginshowmessage('Введите коэффициент избытка воздуха 1 до 10');exit;end;if not trystrtofloat(edit19.text, k) thenbeginshowmessage('Введите допускаемую температуру металла лопаток от 600 до 1400°С');exit;endelse if (strtofloat(edit19.Text)<600) or (strtofloat(edit19.Text)>1400) thenbeginshowmessage('Введите допускаемую температуру металла лопаток от 600 до 1400°С');exit;end;if not trystrtofloat(edit20.text, k) thenbeginshowmessage('Введите относительный расход охлаждающего воздуха');exit;endelse if (strtofloat(edit20.Text)<0) or (strtofloat(edit20.Text)>1) thenbeginshowmessage('Относительный расход охлаждающего воздуха должен быть в диапазоне от 0 до1');exit;end;if not trystrtofloat(edit21.text, k) or not trystrtofloat(edit22.text, k)or not trystrtofloat(edit23.text, k) or not trystrtofloat(edit24.text, k)or not trystrtofloat(edit25.text, k) or not trystrtofloat(edit26.text, k)or not trystrtofloat(edit27.text, k) or not trystrtofloat(edit28.text, k)or not trystrtofloat(edit41.text, k) or not trystrtofloat(edit42.text, k)or not trystrtofloat(edit43.text, k) or not trystrtofloat(edit44.text, k)then beginshowmessage('Задайте распределение охлаждающего воздуха по венцам');exit;endelse if (strtofloat(edit21.Text)<0) or (strtofloat(edit21.Text)>100)or (strtofloat(edit22.Text)<0) or (strtofloat(edit22.Text)>100)or (strtofloat(edit23.Text)<0) or (strtofloat(edit23.Text)>100)or (strtofloat(edit24.Text)<0) or (strtofloat(edit24.Text)>100)or (strtofloat(edit25.Text)<0) or (strtofloat(edit25.Text)>100)or (strtofloat(edit26.Text)<0) or (strtofloat(edit26.Text)>100)or (strtofloat(edit27.Text)<0) or (strtofloat(edit27.Text)>100)or (strtofloat(edit28.Text)<0) or (strtofloat(edit28.Text)>100)or (strtofloat(edit41.Text)<0) or (strtofloat(edit41.Text)>100)or (strtofloat(edit42.Text)<0) or (strtofloat(edit42.Text)>100)or (strtofloat(edit43.Text)<0) or (strtofloat(edit43.Text)>100)or (strtofloat(edit44.Text)<0) or (strtofloat(edit44.Text)>100)then beginshowmessage('Расход воздуха на каждый венец должен быть в диапазоне от 0 до 100%');exit;end;if not trystrtofloat(edit29.text, k) or not trystrtofloat(edit30.text, k)or not trystrtofloat(edit31.text, k) or not trystrtofloat(edit32.text, k)or not trystrtofloat(edit33.text, k) or not trystrtofloat(edit34.text, k)or not trystrtofloat(edit35.text, k) or not trystrtofloat(edit36.text, k)or not trystrtofloat(edit45.text, k) or not trystrtofloat(edit46.text, k)or not trystrtofloat(edit47.text, k) or not trystrtofloat(edit49.text, k)then beginshowmessage('Введите температуру охлаждающего воздуха по венцам');exit;endelse if (strtofloat(edit29.Text)>strtofloat(edit19.Text))or (strtofloat(edit30.Text)>strtofloat(edit19.Text))or (strtofloat(edit31.Text)>strtofloat(edit19.Text))or (strtofloat(edit32.Text)>strtofloat(edit19.Text))or (strtofloat(edit33.Text)>strtofloat(edit19.Text))or (strtofloat(edit34.Text)>strtofloat(edit19.Text))or (strtofloat(edit35.Text)>strtofloat(edit19.Text))or (strtofloat(edit36.Text)>strtofloat(edit19.Text))or (strtofloat(edit45.Text)>strtofloat(edit19.Text))or (strtofloat(edit46.Text)>strtofloat(edit19.Text))or (strtofloat(edit47.Text)>strtofloat(edit19.Text))or (strtofloat(edit49.Text)>strtofloat(edit19.Text))then beginshowmessage('Температура охлаждающего воздуха не может быть выше допускаемой температурыметалла лопаток');exit;end;if not trystrtofloat(edit37.text, k) or not trystrtofloat(edit38.text, k)174or not trystrtofloat(edit39.text, k) or not trystrtofloat(edit40.text, k)or not trystrtofloat(edit50.text, k) or not trystrtofloat(edit51.text, k)then beginshowmessage('Введите средний диаметр ступеней от 1 до 4 м');exit;endelse if (strtofloat(edit37.Text)<1) or (strtofloat(edit37.Text)>4)or (strtofloat(edit38.Text)<1) or (strtofloat(edit38.Text)>4)or (strtofloat(edit39.Text)<1) or (strtofloat(edit39.Text)>4)or (strtofloat(edit40.Text)<1) or (strtofloat(edit40.Text)>4)or (strtofloat(edit50.Text)<1) or (strtofloat(edit50.Text)>4)or (strtofloat(edit51.Text)<1) or (strtofloat(edit51.Text)>4)then beginshowmessage('Введите средний диаметр ступеней от 1 до 4 м');exit;end;if not trystrtofloat(edit52.text, k) or not trystrtofloat(edit53.text, k)or not trystrtofloat(edit54.text, k) or not trystrtofloat(edit55.text, k)or not trystrtofloat(edit56.text, k) or not trystrtofloat(edit57.text, k)then beginshowmessage('Введите угол входа в сопловые решетки от 70 до 110 град');exit;endelse if (strtofloat(edit52.Text)<70) or (strtofloat(edit52.Text)>110)or (strtofloat(edit53.Text)<70) or (strtofloat(edit53.Text)>110)or (strtofloat(edit54.Text)<70) or (strtofloat(edit54.Text)>110)or (strtofloat(edit55.Text)<70) or (strtofloat(edit55.Text)>110)or (strtofloat(edit56.Text)<70) or (strtofloat(edit56.Text)>110)or (strtofloat(edit57.Text)<70) or (strtofloat(edit57.Text)>110)then beginshowmessage('Введите угол входа в сопловые решетки от 70 до 110 град');exit;end;if not trystrtofloat(edit58.text, k) or not trystrtofloat(edit59.text, k)or not trystrtofloat(edit60.text, k) or not trystrtofloat(edit61.text, k)or not trystrtofloat(edit62.text, k) or not trystrtofloat(edit63.text, k)then beginshowmessage('Введите угол выхода из сопловых решеток от 12 до 21 град');exit;endelse if (strtofloat(edit58.Text)<12) or (strtofloat(edit58.Text)>21)or (strtofloat(edit59.Text)<12) or (strtofloat(edit59.Text)>21)or (strtofloat(edit60.Text)<12) or (strtofloat(edit60.Text)>21)or (strtofloat(edit61.Text)<12) or (strtofloat(edit61.Text)>21)or (strtofloat(edit62.Text)<12) or (strtofloat(edit62.Text)>21)or (strtofloat(edit63.Text)<12) or (strtofloat(edit63.Text)>21)then beginshowmessage('Введите угол выхода из сопловых решеток от 12 до 21 град');exit;end;if not trystrtofloat(edit64.text, k) or not trystrtofloat(edit65.text, k)or not trystrtofloat(edit66.text, k) or not trystrtofloat(edit67.text, k)or not trystrtofloat(edit68.text, k) or not trystrtofloat(edit69.text, k)then beginshowmessage('Введите степень реактивности ступеней от 0,01 до 0,70');exit;endelse if (strtofloat(edit64.Text)<0.01) or (strtofloat(edit64.Text)>0.70)or (strtofloat(edit65.Text)<0.01) or (strtofloat(edit65.Text)>0.70)or (strtofloat(edit66.Text)<0.01) or (strtofloat(edit66.Text)>0.70)or (strtofloat(edit67.Text)<0.01) or (strtofloat(edit67.Text)>0.70)or (strtofloat(edit68.Text)<0.01) or (strtofloat(edit68.Text)>0.70)or (strtofloat(edit69.Text)<0.01) or (strtofloat(edit69.Text)>0.70)then beginshowmessage('Введите степень реактивности ступеней от 0,01 до 0,70');exit;end;Gtur:=strtofloat(edit18.text);tc:=strtofloat(edit16.text);p0:=strtofloat(edit17.text);pk:=strtofloat(edit48.text);tw:=strtofloat(edit12.text);gohl:=strtofloat(edit20.text);d[1]:=strtofloat(edit37.text);d[2]:=strtofloat(edit38.text);d[3]:=strtofloat(edit39.text);d[4]:=strtofloat(edit40.text);d[5]:=strtofloat(edit50.text);d[6]:=strtofloat(edit51.text);alfa0[1]:=strtofloat(edit52.text);alfa0[2]:=strtofloat(edit53.text);alfa0[3]:=strtofloat(edit54.text);alfa0[4]:=strtofloat(edit55.text);alfa0[5]:=strtofloat(edit56.text);alfa0[6]:=strtofloat(edit57.text);175alfa1[1]:=strtofloat(edit58.text);alfa1[2]:=strtofloat(edit59.text);alfa1[3]:=strtofloat(edit60.text);alfa1[4]:=strtofloat(edit61.text);alfa1[5]:=strtofloat(edit62.text);alfa1[6]:=strtofloat(edit63.text);ro[1]:=strtofloat(edit64.text);ro[2]:=strtofloat(edit65.text);ro[3]:=strtofloat(edit66.text);ro[4]:=strtofloat(edit67.text);ro[5]:=strtofloat(edit68.text);ro[6]:=strtofloat(edit69.text);gvs[1]:=strtofloat(edit21.text);gvr[1]:=strtofloat(edit22.text);gvs[2]:=strtofloat(edit23.text);gvr[2]:=strtofloat(edit24.text);gvs[3]:=strtofloat(edit25.text);gvr[3]:=strtofloat(edit26.text);gvs[4]:=strtofloat(edit27.text);gvr[4]:=strtofloat(edit28.text);gvs[5]:=strtofloat(edit41.text);gvr[5]:=strtofloat(edit42.text);gvs[6]:=strtofloat(edit43.text);gvr[6]:=strtofloat(edit44.text);if ((gvs[1]+gvr[1]+gvs[2]+gvr[2]+gvs[3]+gvr[3]+gvs[4]+gvr[4]+gvs[5]+gvr[5]+gvs[6]+gvr[6])>100.01){or ((gv1s+gv1r+gv2s+gv2r+gv3s+gv3r+gv4s+gv4r+gv4r+gv5s+gv5r+gv6s+gv6r)<99.99)}then beginshowmessage('Сумма расходов охлаждающего воздуха по венцам должна составлять 100%');exit;end;ififififififififififififififififififififififififififififififififififififRadioButton5.Checked=true then ohlazds[1]:=1;RadioButton6.Checked=true then ohlazds[1]:=2;RadioButton7.Checked=true then ohlazds[1]:=3;RadioButton8.Checked=true then ohlazdr[1]:=1;RadioButton9.Checked=true then ohlazdr[1]:=2;RadioButton10.Checked=true then ohlazdr[1]:=3;RadioButton11.Checked=true then ohlazds[2]:=1;RadioButton12.Checked=true then ohlazds[2]:=2;RadioButton13.Checked=true then ohlazds[2]:=3;RadioButton14.Checked=true then ohlazdr[2]:=1;RadioButton15.Checked=true then ohlazdr[2]:=2;RadioButton16.Checked=true then ohlazdr[2]:=3;RadioButton17.Checked=true then ohlazds[3]:=1;RadioButton18.Checked=true then ohlazds[3]:=2;RadioButton19.Checked=true then ohlazds[3]:=3;RadioButton20.Checked=true then ohlazdr[3]:=1;RadioButton21.Checked=true then ohlazdr[3]:=2;RadioButton22.Checked=true then ohlazdr[3]:=3;RadioButton23.Checked=true then ohlazds[4]:=1;RadioButton24.Checked=true then ohlazds[4]:=2;RadioButton25.Checked=true then ohlazds[4]:=3;RadioButton26.Checked=true then ohlazdr[4]:=1;RadioButton27.Checked=true then ohlazdr[4]:=2;RadioButton28.Checked=true then ohlazdr[4]:=3;RadioButton3.Checked=true then ohlazds[5]:=1;RadioButton4.Checked=true then ohlazds[5]:=2;RadioButton29.Checked=true then ohlazds[5]:=3;RadioButton30.Checked=true then ohlazdr[5]:=1;RadioButton31.Checked=true then ohlazdr[5]:=2;RadioButton32.Checked=true then ohlazdr[5]:=3;RadioButton33.Checked=true then ohlazds[6]:=1;RadioButton34.Checked=true then ohlazds[6]:=2;RadioButton35.Checked=true then ohlazds[6]:=3;RadioButton36.Checked=true then ohlazdr[6]:=1;RadioButton37.Checked=true then ohlazdr[6]:=2;RadioButton38.Checked=true then ohlazdr[6]:=3;tohls[1]:=strtofloat(edit29.text);tohlr[1]:=strtofloat(edit30.text);tohls[2]:=strtofloat(edit31.text);tohlr[2]:=strtofloat(edit32.text);tohls[3]:=strtofloat(edit33.text);tohlr[3]:=strtofloat(edit34.text);tohls[4]:=strtofloat(edit35.text);tohlr[4]:=strtofloat(edit36.text);tohls[5]:=strtofloat(edit45.text);tohlr[5]:=strtofloat(edit46.text);tohls[6]:=strtofloat(edit47.text);tohlr[6]:=strtofloat(edit49.text);alfavozd:=strtofloat(edit70.text);z:=strtoint(combobox1.Text);with Form1.StringGrid2 dofor i:=1 to ColCount-1 do176Cols[i].Clear;PageControl1.ActivePageIndex:=3;gasturbine(true,z,Gtur,tc,p0,pk,tw,gohl,alfavozd,gvs,gvr,tohls,tohlr,d,alfa0,alfa1,ro,ohlazds,ohlazdr,etat2,Gkon,tkon,nun,Ntur,Gvozd);end;function separ(s:string):string;var i:integer;beginfor i:=1 to length(s) doif (s[i]='.') or (s[i]=',') then s[i]:=decimalseparator;separ:=s;end;procedure TForm1.OnCreate(Sender: TObject);var i,k:integer;s:string;beginwith StringGrid2 dobeginCells[0,1]:='Расход газа на входе в ступень G0, кг/с';Cells[0,2]:='Давление перед ступенью p0, бар';Cells[0,3]:='Давление за ступенью p2, бар';Cells[0,4]:='Температура перед ступенью t0, °С';Cells[0,5]:='Скорость потока на входе в ступень c0, °С';Cells[0,6]:='Допускаемая температура сопловых лопаток Tw1, °C';Cells[0,7]:='Допускаемая температура рабочих лопаток Tw2, °C';Cells[0,8]:='Отн расход охл воздуха для сопловой решетки gohl1';Cells[0,9]:='Отн расход охл воздуха для рабочей решетки gohl2';Cells[0,10]:='Расход газа за сопловой решеткой G1, кг/с';Cells[0,11]:='Расход газа за рабочей решеткой G2, кг/с';Cells[0,12]:='Энтальпия перед ступенью h0, кДж/кг';Cells[0,13]:='Энтальпия перед ступ (по парам тормож) h00, кДж/кг';Cells[0,14]:='Теоретический теплоперепад на ступень HH0, кДж/кг';Cells[0,15]:='Теор теплоперепад (по парам тормож) HH00, кДж/кг';Cells[0,16]:='Оптимальное отношение скоростей u/cf';Cells[0,17]:='Реальное отношение скоростей u/cf';Cells[0,18]:='Окружная скорость на среднем диаметре u, м/с';Cells[0,19]:='Средний диаметр ступени d, м';Cells[0,20]:='Теор теплоперепад на рабочую решетку HH0r, кДж/кг';Cells[0,21]:='Теор теплоперепад на сопловую решетку HH0c, кДж/кг';Cells[0,22]:='Энтальпия за сопловой решеткой (теор) h1t, кДж/кг';Cells[0,23]:='Теор скорость за сопловой решеткой c1t, м/с';Cells[0,24]:='Давление за сопловой решеткой p1, бар';Cells[0,25]:='Изменение темпер из-за профильных потерь delTa1, °С';Cells[0,26]:='Изменение темпер из-за конвективных потерь delTk1, °С';Cells[0,27]:='Изменение темпер из-за перфорационных потерь delTp1, °С';Cells[0,28]:='Реальная температура газа в вых сеч сопл реш t1gorlo, °C';Cells[0,29]:='Реальная температура газа за сопловой решеткой t1, °C';Cells[0,30]:='Энтальпия за сопловой решеткой h1, кДж/кг';Cells[0,31]:='Профильные потери в сопловой решетке etapr1';Cells[0,32]:='Конвективные потери в сопловой решетке etakon1';Cells[0,33]:='Перфорационные потери в сопловой решетке etaper1';Cells[0,34]:='Суммарные потери в сопловой решетке eta1';Cells[0,35]:='Коэффициент скорости сопловой решетки fi';Cells[0,36]:='Абс скорость потока за сопловой решеткой c1, м/с';Cells[0,37]:='Относ скорость потока за сопловой решеткой w1, м/с';Cells[0,38]:='Абс угол входа в сопловую решетку alfa0, град';Cells[0,39]:='Абс угол выхода из сопловой решетки alfa1, град';Cells[0,40]:='Относ угол выхода из сопловой решетки beta1, град';Cells[0,41]:='Площадь сопловой решетки F1, м^2';Cells[0,42]:='Высота сопловой решетки l1, м';Cells[0,43]:='Высота рабочей решетки l2, м';Cells[0,44]:='Теор относ скорость за рабочей решеткой w2t, м/с';Cells[0,45]:='Площадь рабочей решетки F2, м^2';Cells[0,46]:='Относ угол выхода из рабочей решетки beta2, град';Cells[0,47]:='Профильные потери в рабочей решетке etapr2';Cells[0,48]:='Конвективные потери в рабочей решетке etakon2';Cells[0,49]:='Перфорационные потери в рабочей решетке etaper2';Cells[0,50]:='Суммарные потери в рабочей решетке eta2';Cells[0,51]:='Коэффициент скорости рабочей решетки ksi';Cells[0,52]:='Относ скорость потока за рабочей решеткой w2, м/с';Cells[0,53]:='Изменение темпер из-за профильных потерь delTa2, °С';Cells[0,54]:='Изменение темпер из-за конвективных потерь delTk2, °С';Cells[0,55]:='Изменение темпер из-за перфорационных потерь delTp2, °С';Cells[0,56]:='Реальная температура газа в вых сеч раб реш t2gorlo, °C';Cells[0,57]:='Реальная температура газа за рабочей решеткой t2, °C';Cells[0,58]:='Энтальпия за рабочей решеткой h2, кДж/кг';Cells[0,59]:='Абс скорость потока за рабочей решеткой c2, м/с';Cells[0,60]:='Абс угол выхода из рабочей решетки alfa2, град';Cells[0,61]:='Удельная работа ступени Lu, кДж/кг';Cells[0,62]:='Мощность ступени на ободе лопаток Nu, МВт';Cells[0,63]:='Располагаемая энергия ступени E, кДж/кг';Cells[0,64]:='Относительный лопаточный КПД ступени kpdu';Cells[0,65]:='Потери от утечек delHutech, кДж/кг';Cells[0,66]:='Потери от трения delHtrenia, кДж/кг';177Cells[0,67]:='Потери с выходной скоростью delHvs, кДж/кг';Cells[0,68]:='Относительный внутренний КПД ступени kpdi';Cells[0,69]:='Внутренняя мощность ступени Ni, МВт';Cells[0,70]:='Теоретическая мощность ступени Niso, МВт';end;with StringGrid1 dobeginCells[1,0]:='Нач темпер, °C';Cells[2,0]:='К-т изб воздуха';Cells[3,0]:='К-т полезн раб';Cells[4,0]:='Темп за ГТУ, °C';Cells[5,0]:='КПД неохлажд ГТУ';Cells[6,0]:='Расх топл, кг/с';Cells[7,0]:='Расх в турб, кг/с';Cells[8,0]:='Расх за ГТУ, кг/с';Cells[9,0]:='КПД охлажд ГТУ';end;for k:=0 to Form1.ComponentCount-1 doif Form1.Components[k] is TEdit thenTEdit(Form1.Components[k]).Text:=separ(TEdit(Form1.Components[k]).Text);end;procedure TForm1.Button2Click(Sender: TObject);vari:integer;t1t,dlin,fun:double;Tiso:massiv;begin{funetakon(lopat,p0,p1,T0,t1t,gohl1,Tw1,bb,lks)}fun:=funetakon(true,'89',15.41,15,1307.46,1215.73,0.05,500,800,50,20);Memo1.Lines.Add(floattostr(fun));end;procedure TForm1.RadioButton5Click(Sender: TObject);beginedit21.Enabled:=true;label43.Visible:=true;edit29.Visible:=true;edit29.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton6Click(Sender: TObject);beginedit21.Enabled:=true;label43.Visible:=true;edit29.Visible:=true;edit29.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton7Click(Sender: TObject);beginedit21.Enabled:=false;edit21.Text:='0';label43.Visible:=false;edit29.Visible:=false;edit29.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton8Click(Sender: TObject);beginedit22.Enabled:=true;label44.Visible:=true;edit30.Visible:=true;edit30.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton9Click(Sender: TObject);beginedit22.Enabled:=true;label44.Visible:=true;edit30.Visible:=true;edit30.Text:='';label36.Visible:=true;end;178procedure TForm1.RadioButton10Click(Sender: TObject);beginedit22.Enabled:=false;edit22.Text:='0';label44.Visible:=false;edit30.Visible:=false;edit30.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton11Click(Sender: TObject);beginedit23.Enabled:=true;label45.Visible:=true;edit31.Visible:=true;edit31.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton12Click(Sender: TObject);beginedit23.Enabled:=true;label45.Visible:=true;edit31.Visible:=true;edit31.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton13Click(Sender: TObject);beginedit23.Enabled:=false;edit23.Text:='0';label45.Visible:=false;edit31.Visible:=false;edit31.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton14Click(Sender: TObject);beginedit24.Enabled:=true;label46.Visible:=true;edit32.Visible:=true;edit32.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton15Click(Sender: TObject);beginedit24.Enabled:=true;label46.Visible:=true;edit32.Visible:=true;edit32.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton16Click(Sender: TObject);beginedit24.Enabled:=false;edit24.Text:='0';label46.Visible:=false;edit32.Visible:=false;edit32.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton17Click(Sender: TObject);beginedit25.Enabled:=true;label47.Visible:=true;edit33.Visible:=true;179edit33.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton18Click(Sender: TObject);beginedit25.Enabled:=true;label47.Visible:=true;edit33.Visible:=true;edit33.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton19Click(Sender: TObject);beginedit25.Enabled:=false;edit25.Text:='0';label47.Visible:=false;edit33.Visible:=false;edit33.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton20Click(Sender: TObject);beginedit26.Enabled:=true;label48.Visible:=true;edit34.Visible:=true;edit34.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton21Click(Sender: TObject);beginedit26.Enabled:=true;label48.Visible:=true;edit34.Visible:=true;edit34.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton22Click(Sender: TObject);beginedit26.Enabled:=false;edit26.Text:='0';label48.Visible:=false;edit34.Visible:=false;edit34.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton23Click(Sender: TObject);beginedit27.Enabled:=true;label49.Visible:=true;edit35.Visible:=true;edit35.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton24Click(Sender: TObject);beginedit27.Enabled:=true;label49.Visible:=true;edit35.Visible:=true;edit35.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton25Click(Sender: TObject);beginedit27.Enabled:=false;edit27.Text:='0';label49.Visible:=false;edit35.Visible:=false;edit35.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)180and (edit31.Visible=false) andand (edit33.Visible=false) andand (edit35.Visible=false) andand (edit45.Visible=false) andand (edit47.Visible=false) andthen label36.Visible:=false;(edit32.Visible=false)(edit34.Visible=false)(edit36.Visible=false)(edit46.Visible=false)(edit49.Visible=false)end;procedure TForm1.RadioButton26Click(Sender: TObject);beginedit28.Enabled:=true;label50.Visible:=true;edit36.Visible:=true;edit36.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton27Click(Sender: TObject);beginedit28.Enabled:=true;label50.Visible:=true;edit36.Visible:=true;edit36.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton28Click(Sender: TObject);beginedit28.Enabled:=false;edit28.Text:='0';label50.Visible:=false;edit36.Visible:=false;edit36.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton3Click(Sender: TObject);beginedit41.Enabled:=true;label66.Visible:=true;edit45.Visible:=true;edit45.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton4Click(Sender: TObject);beginedit41.Enabled:=true;label66.Visible:=true;edit45.Visible:=true;edit45.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton29Click(Sender: TObject);beginedit41.Enabled:=false;edit41.Text:='0';label66.Visible:=false;edit45.Visible:=false;edit45.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton30Click(Sender: TObject);beginedit42.Enabled:=true;label67.Visible:=true;edit46.Visible:=true;edit46.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton31Click(Sender: TObject);beginedit42.Enabled:=true;label67.Visible:=true;181edit46.Visible:=true;edit46.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton32Click(Sender: TObject);beginedit42.Enabled:=false;edit42.Text:='0';label67.Visible:=false;edit46.Visible:=false;edit46.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton33Click(Sender: TObject);beginedit43.Enabled:=true;label68.Visible:=true;edit47.Visible:=true;edit47.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton34Click(Sender: TObject);beginedit43.Enabled:=true;label68.Visible:=true;edit47.Visible:=true;edit47.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton35Click(Sender: TObject);beginedit43.Enabled:=false;edit43.Text:='0';label68.Visible:=false;edit47.Visible:=false;edit47.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;procedure TForm1.RadioButton36Click(Sender: TObject);beginedit44.Enabled:=true;label69.Visible:=true;edit49.Visible:=true;edit49.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton37Click(Sender: TObject);beginedit44.Enabled:=true;label69.Visible:=true;edit49.Visible:=true;edit49.Text:='';label36.Visible:=true;end;procedure TForm1.RadioButton38Click(Sender: TObject);beginedit44.Enabled:=false;edit44.Text:='0';label69.Visible:=false;edit49.Visible:=false;edit49.Text:='0';if (edit29.Visible=false) and (edit30.Visible=false)and (edit31.Visible=false) and (edit32.Visible=false)and (edit33.Visible=false) and (edit34.Visible=false)and (edit35.Visible=false) and (edit36.Visible=false)and (edit45.Visible=false) and (edit46.Visible=false)and (edit47.Visible=false) and (edit49.Visible=false)then label36.Visible:=false;end;182procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);beginif Not (Key in ['0'..'9', #8, ',', '.']) then Key:=#0;if Key in [',','.'] then Key:=DecimalSeparator;end;procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char);beginif Not (Key in ['0'..'9', #8, ',', '.', '-']) then Key:=#0;if Key in [',','.'] then Key:=DecimalSeparator;end;procedure TForm1.Button4Click(Sender: TObject);var k,tc,tw,gw:double;beginif not trystrtofloat(edit16.text, k) thenbeginshowmessage('Введите начальную температуру газа от 600 до 2000°С');exit;endelse if (strtofloat(edit16.Text)<600) or (strtofloat(edit16.Text)>2000) thenbeginshowmessage('Введите начальную температуру газа от 600 до 2000°С');exit;end;if not trystrtofloat(edit19.text, k) thenbeginshowmessage('Введите допускаемую температуру металла лопаток от 600 до 1400°С');exit;endelse if (strtofloat(edit19.Text)<600) or (strtofloat(edit19.Text)>1400) thenbeginshowmessage('Введите допускаемую температуру металла лопаток от 600 до 1400°С');exit;end;tc:=strtofloat(edit16.text);tw:=strtofloat(edit19.text);gw:=0.02+0.00032*(tc-tw);edit20.Text:=(format('%5.3f',[gw]));end;end..

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5209
Авторов
на СтудИзбе
430
Средний доход
с одного платного файла
Обучение Подробнее