Методичні вказівки до обов’язкового домашнього завдання з дисципліни «Організація баз даних та знань», страница 14

  ** Сжатие массива из 4 точек, если точек 3.  **

  *********************************************** }

Var nEmpty, i, j :Integer;

begin

  // Запомним номер "выпавшей" точки:

  nEmpty := 0 ;

     For i := 1 to 4 do

        if nEmpty < 1 then

           If (not isP[i]) then nEmpty := i ;

  //---------------------------------------------

     if (nEmpty < 4) then begin

        iP[0][nEmpty] := nEmpty ;

        isP[nEmpty] := true ; isP[4] := false ;

           For i := 1 to NN do iP[i][nEmpty] := iP[i][4] ;

     end;

end;

Function TfmCalcNH3sh.Flatness(i :Integer; x,y :Extended) :Extended;

{ ***********************************************************

  **  Определяется уравнение плоскости, проходящих через   **

  **  3 точки (вычисляется координаты вектора нормали).    **

  **  По уравнению плоскости вычисляетзя значение функции  **

  **  внутри треугольника, заданного тремя точками.        **

  **********************************************************}

var A,B,C,D :Extended;

begin

  A := (iP[2][2]-iP[2][1])*(iP[i][3]-iP[i][1]) -

       (iP[2][3]-iP[2][1])*(iP[i][2]-iP[i][1]) ;

  B := (iP[1][3]-iP[1][1])*(iP[i][2]-iP[i][1]) -

       (iP[1][2]-iP[1][1])*(iP[i][3]-iP[i][1]) ;

  C := (iP[1][2]-iP[1][1])*(iP[2][3]-iP[2][1]) -

       (iP[1][3]-iP[1][1])*(iP[2][2]-iP[2][1]) ;

  D := -A*iP[1][1] - B*iP[2][1] - C*iP[i][1] ;

  Result := -(D + A*x + B*y)/C ;

end;

Procedure TfmCalcNH3sh.ShowNumbers ;

// Показать результаты поиска/расчета

var i : Integer;

begin  for i := 1 to NN do sgRes.Cells[1,i] := FloatToStrF(iR[i],ffExponent, 7,3) ;

end;

procedure TfmCalcNH3sh.bbSearchTClick(Sender: TObject);

// Клик по кнопке расчета

begin  CalcProperties ; // расчет свойств

       ShowNumbers ;    // Покажем результаты расчета

end;

end.

Результати тестових розрахунків.

           Рисунок 9.  Форма экрану результатів розрахунку термодинамічних

властивостей аміаку на лінії насичення (по температурі).

           Рисунок 10.  Форма экрану результатів розрахунку термодинамічних

                                  властивостей сухої перегрітої пари аміаку.

Інформаційно-пошукова розрахункова система дозволяє задавати довільно допустимі значення тиску p (в МПа) і температури t речовини (в ° С), після чого виконується пошук двох (для лінії насичення) або чотирьох сусідніх вузлових точок (для перегрітої пари) з таблиці базы данных. Потім проводиться аналіз положення заданої точки відносно вузлових точок, після чого за формулами лінійної інтерполяції (крива насичення)) або площинної інтерполяції (перегріта пара) значення термодинамічних показників визначаються за формулами:

,

де S1, S2 –значення показника у двох сусідніх вузлових точках, t1, t2 – значення аргумента у двох сусідніх вузлових точках;

,

где Aj, Bj, Cj, Dj- параметри площини, яка проходить через 3 сусідні вузлові точки. Результати пошуку та розрахунку в якості тесту роботи системи виводяться в компонент «строкова таблиця» (StringGrid) форми.

Висновок.

Було розроблено прикладну програму, яка дозволяє виконувати розрахунки термодинамічних властивостей аміаку на лінії насичення та його перегрітої пари. Інформаційно-пошукова розрахункова система дає можливість виконувати розрахунки цих властивостей в залежності від заданих значень температури й тиску. Впровадження даної системи в САПР дозволить скоротити час на розрахунки параметрів речовини. Звернення до довідниково-пошукової системи вивільняє інженерів, які займаються розрахунками та проектуванням холодильних та компресорних машин, від необхідності відшукувати дані в довідникових розділах різноманітних книг, в журнальних статтях і повідомленнях.

ЛІТЕРАТУРА.

1.  Богданов С. Н., Иванов О. П., Куприянова А. В.Холодильная техника. Свойства веществ: Справоч­ник. Изд. 3-е, перераб. и доп. М.: Агропромиздат, 1985. 208 с.

2.  КантуМ. Delphi 2для Windows 95/NT. Полный курс в 2-х томах.-М.: Малип., 1997.

3.  Тейксейра С.,Пачеко К. Borland Delphi 6. Руководство разработчика. М.: Вильямс, 2002.

4.  Канту М. Delphi7: Для профессионалов.-СПб.:Питер, 2005. 1101c.