Temperature-Fild » TEMPERATURE-FILD

Переменные

*make-outlined-array-part*
Доля, на которую снижаются температуры, при формировании обрамленного температурного поля

Функции

circular-relative(t02 gp-data &key (f-aver-or-max (function average-not-nil-value)))

Описание: функция circular-relative возврвщает точки окружной эпюры средних или максимальных относительных температур, вычисляемые по полю температур gp-data.

Описание аргументов gp-data и f-aver-or-max см. функцию overal.

Переменые:

  • t02 - температура воздуха на входе в отсек.

Пример использования:

(circular-relative 50.0 (make-t-fild-data *t03* *h-r* *x-r* :hights '(1 0 5) :ocr '(-140/100 140/100 5)) :f-aver-or-max #'math/stat:average-not-nil-value)
 (circular-relative 50.0 (make-t-fild-data *t03* *h-r* *x-r* :hights '(1 0 5) :ocr '(-140/100 140/100 5)) :f-aver-or-max #'math/stat:max-not-nil-value)

 (let* ((t02 50.0)
        (gpdata (make-t-fild-data *t03* *h-r* *x-r*
                                  :hights '(1 0 50)
                                  :ocr    '(-14/10 14/10 50)))
        (cr-aver (circular-relative t02 gpdata ))
        (cr-max  (circular-relative t02 gpdata :f-aver-or-max #'math/stat:max-not-nil-value)))
   (vgplot:plot (mapcar #'first cr-aver)(mapcar #'second cr-aver) 
                (mapcar #'first cr-max)(mapcar #'second cr-max)))

recover-values(a2d &key (ff *apr-func-2-6*))

Описание: recover-values выполняет восстановление значений в массиве a2d, заданных значениями nil.

Массив должен иметь размерность 3x3 минимум. При определении функциональная зависимость определяется шаблоном ff

find-aprox-value-by-index(index-ij a2d &key (ff *apr-func-2-6*))

Описание: find-aprox-value-by-index для индекса index-ij массива a2d (список из 2-х целых чисел) выполняет поиск апроксимирующего значения на основании закона определяемого функцией ff.

Пример использования:

(find-aprox-value-by-index '(3 2)  *test-arr-data-01*)                  => 123.41071428571429d0
 (find-aprox-value-by-index '(3 2)  *test-arr-data-01* :ff math/appr:*apr-func-2-6*) => 123.41071428571429d0
 (find-aprox-value-by-index '(3 2)  *test-arr-data-01* :ff math/appr:*apr-func-2-5*) => 122.5d0

Варианты вида апроксимирующих полиномов, используемых в качестве параметра ff: math/appr:*apr-func-2-4* math/appr:*apr-func-2-5* math/appr:*apr-func-2-6* math/appr:*apr-func-2-7* math/appr:*apr-func-2-8* math/appr:*apr-func-2-9*

calc-temperature-fild(t-lst &key (t2 20) &aux (t3-max (max-value (exclude-nil-from-list (unite-rows t-lst)))) (t-lst-nil (temperature-exclude-wrong t2 t-lst)) (t3-mid (average-not-nil-value (unite-rows t-lst-nil))) (δt (- t3-mid t2)))

Описание: calc-temperature-fild выполняет вычисление характеристик температурного поля.

Возвращает множественные значения в следующем порядке:

  1. t-lst - исходное поле температур;
  2. t-lst-nil - поле температур с исключенными значениями температур;
  3. θ-nil - отклонение температурного поля от среднего значения;
  4. t2 - температура на входе в камеру сгорания;
  5. Δt - подогрев продуктов горения в камере сгораия;
  6. t3-max - максимальная температура;
  7. θ-max - максимальное отклонение температурного поля;
  8. t3-mid-row - температура средняя в ряду;
  9. t3-max-row - температура максимальная в ряду;
  10. t3-mid-col - температура средняя в столбце;
  11. t3-max-col - температура максимальная в столбце;
  12. θ-mid-row - среднее отклонение температуры в ряду;
  13. θ-max-row - максимальное отклонение температуры в ряду;
  14. θ-mid-col - среднее отклонение температуры в столбце;
  15. θ-max-col - максимальное отклонение температуры в столбце.
  16. rez - таблица с характеристики температурного поля.

Пример использования:

(let ((t-fild-params (multiple-value-list
		       (calc-temperature-fild '((117.0 120.5 118.5 112.5 115.0)
						(115.0 125.5 119.5 122.5 112.0)
						(113.0 135.5 129.5 132.5 117.0)
						(112.0 122.5 123.5 122.5 112.0)
						(111.0 115.5 119.5 102.5 102.0))))))
   (nth 11 t-fild-params))

make-approximation-points(a2d-3x3)

Описание: функция make-approximation-points выполняет формирование списка точек, используя значения массива a2d-3x3 в качестве функции отклика, в качестве параметров используются индексы массива смещенные на одну единицу в минус:

  • первый индекс - строка;
  • второй нидекс - столбец.

Элементы массива, имеющие значение nil при формировании списка точек пропускаются.

Пример использования:

(make-approximation-points
  (make-array '(3 3)
 	      :initial-contents 
 	      '((11 12 13) 
 		(21 22 23) 
 		(31 32 33))))
 => ((1 1 33)(1 0 32)(1 -1 31)(0 1 23)(0 0 22)(0 -1 21)(-1 1 13)(-1 0 12)(-1 -1 11))
 (make-approximation-points
  (make-array '(3 3)
 	      :initial-contents 
 	      '((nil 12  nil) 
 		(21  nil  23) 
 		(31  nil  33)))) 
 =>((1 1 33)(1 -1 31)(0 1 23)(0 -1 21)(-1 0 12))

radial-relative(t02 gp-data &key (f-aver-or-max (function average-not-nil-value)))

Описание: функция radial-relative возврвщает точки радиальной эпюры средних или максимальных относительных температур, вычисляемые по полю температур gp-data.

Описание аргументов gp-data и f-aver-or-max см. функцию overal.

Переменые:

  • t02 - температура воздуха на входе в отсек.

Пример использования:

(radial-relative 50.0 (make-t-fild-data *t03* *h-r* *x-r* :hights '(1 0 5) :ocr '(-140/100 140/100 5)))
 (radial-relative 0.0 (make-t-fild-data *t03* *h-r* *x-r* :hights '(1 0 5) :ocr '(-140/100 140/100 5)) :f-aver-or-max #'math/stat:max-not-nil-value)

 (let* ((t02 50.0)
        (gpdata (make-t-fild-data *t03* *h-r* *x-r*
                                  :hights '(1 0 50)
                                  :ocr    '(-14/10 14/10 50)))
        (rr-aver (radial-relative t02 gpdata ))
        (rr-max  (radial-relative t02 gpdata :f-aver-or-max #'math/stat:max-not-nil-value)))
   (vgplot:plot (mapcar #'second rr-aver)(mapcar #'first rr-aver)
                (mapcar #'second rr-max)(mapcar #'first rr-max)))

Методы

make-plot-file-data-outlined(t03 t2 u-tm (t-fild <t-fild>) &key (scale *scale-smoothing*) (d-pts (d-pts-scale t-fild scale scale)) (intervals 100) (hights (list 1 0 intervals)) (ocr (ocr-intervals t-fild intervals intervals)) (hw-coeff *hw-coeff*) (h-ol-max (h-ol-max-hw-coeff t-fild hw-coeff hw-coeff)) (h-ol-min (h-ol-min-hw-coeff t-fild hw-coeff hw-coeff)) (w-ol-max (w-ol-max-hw-coeff t-fild hw-coeff hw-coeff)) (w-ol-min (w-ol-min-hw-coeff t-fild hw-coeff hw-coeff)))

Описание: метод make-plot-file-data-outlined формирует файлы с данными для построения эпюр относительных температур:

  • <date>_plot-radial-aver-outlined.data - радиальной эпюры средних температур;
  • <date>_plot-radial-max-outlined.data - радиальной эпюры максимальных температур;
  • <date>_plot-circular-aver-outlined.data - окружной эпюры средних температур;
  • <date>_plot-circular-max-outlined.data - окружной эпюры максимальных температур.

Переменые:

  • t03 - список, содержащий температуры в порядке следования сигналов;
  • t2 - температура t02;
  • u-tm - время, заданное в универсальном формате;
  • t-fild - объект типа <t-fild>;
  • scale - масштаб для радиуса сглаживания;
  • d-pts - вектор, содержащий радиусы сглаживания в радиальном (по относительной высоте) и окружном (по относительной окружной координате) направлениям;
  • intervals - количество интервалов (узлов) вычисления температуры;
  • hights - список из трех чисел, задающих: - верхнее значение относительной высоты; - нижнее значение относительной высоты; - количество интервалов вдоль относительной высоты лопатки.
  • ocr - список из трех чисел, задающих: - нижнее значение координаты окружного расположения лопаток; - нижнее значение координаты окружного расположения лопаток; - количество интервалов вдоль координаты окружного расположения лопаток;
  • hw-coeff - относительное расстояние от сектора до обрамляющего контура во всех направлениях;
  • h-ol-max - относительное расстояние от сектора до обрамляющего контура вовне лопатки;
  • h-ol-min - относительное расстояние от сектора до обрамляющего контура внутрь лопатки;
  • w-ol-max - относительное расстояние от сектора до обрамляющего контура в направлении увеличения относительной окружной координаты;
  • w-ol-min - относительное расстояние от сектора до обрамляющего контура в направлении уменьшения относительной окружной координаты.

Пример использования:

(make-plot-file-data-outlined (t03-2d->signals *t03*) *t02* *ut* *DN80*)

 (require :vgplot)
 (vgplot:format-plot t "plot ~S u 2:1 with lines,~S u 2:1 with lines"
                    "2000-01-01_12-00-00_plot-radial-aver-outlined.data"
                    "2000-01-01_12-00-00_plot-radial-max-outlined.data")
 (vgplot:format-plot t "plot ~S u 1:2 with lines,~S u 1:2 with lines"
                     "2000-01-01_12-00-00_plot-circular-aver-outlined.data"
                     "2000-01-01_12-00-00_plot-circular-max-outlined.data")

make-plot-relative-data(t03 t2 u-tm (t-fild <t-fild>) &key (func-aver-or-max (function average-not-nil-value)))

Описание: метод make-plot-relative-data генерирует четыре файла, содержащих эпюры средних (при func-aver-or-max = #'math/stat:average-not-nil-value (по умолчанию)) или максимальных (при func-aver-or-max = #'math/stat:max-not-nil-value (по умолчанию)) относительных температур:

радиальные, построенные по:

  • <data>_plot-radial-relative-data-nil-<aver|max>.data - значениям температур t03 с исключенными точками;
  • <data>_plot-radial-relative-data-recover-<aver|max>.data - значениям температур t03 с восстановленными точками;

окружные, построенные по:

  • <data>_plot-circular-relative-data-nil-<aver|max>.data - значениям температур t03 с исключенными точками;
  • <data>_plot-circular-relative-data-recover-<aver|max>.data - значениям температур t03 с восстановленными точками;

Переменые:

  • t03 - список 1d, содержащий значения температур за жаровой трубой, в порядке как они приведены в тренде;
  • t2 - температура воздуха на входе в КС;
  • t-fild - объект, представляющий размеры на выходе из жаровой трубы.

Пример использования:

(make-plot-relative-data (t03-2d->signals *t03*) *t02* *ut* *DN80*)
  (make-plot-relative-data (t03-2d->signals *t03*) *t02* *ut* *DN80* :func-aver-or-max #'math/stat:max-not-nil-value)

make-plot-file-data(t03 t2 u-tm (t-fild <t-fild>) &key (func-aver-or-max (function average-not-nil-value)))

Описание: метод make-plot-file-data формирует файлы с данными для построения эпюр средних (при func-aver-or-max #'math/stat:average-not-nil-value) или максимальных (при func-aver-or-max #'math/stat:max-not-nil-value) температур.

Данные в файлах записываются в две колонки:

  • первая - относительная высота или относительная окружная координата;
  • вторая - значения температур.

Имена файлов с эпюрами средних температур:

  • <date>_plot-radial-data-nil-aver.data - радиальной c исключенными значениями;
  • <date>_plot-radial-data-recover-aver.data - радиальной c восстановленными значениями;
  • <date>_plot-circular-data-nil-aver.data - окружной c исключенными значениями;
  • <date>_plot-circular-data-recover-aver.data - окружной c восстановленными значениями.

Имена файлов c эпюрами максимальных температур:

  • <date>_plot-radial-data-nil-max.data - радиальной c исключенными значениями;
  • <date>_plot-radial-data-recover-max.data - радиальной c восстановленными значениями;
  • <date>_plot-circular-data-nil-max.data - окружной c исключенными значениями;
  • <date>_plot-circular-data-recover-max.data - окружной c восстановленными значениями.

Пример использования:

(make-plot-file-data (t03-2d->signals *t03*) *t02* *ut* *DN80*) 
 (make-plot-file-data (t03-2d->signals *t03*) *t02* *ut* *DN80* :func-aver-or-max #'math/stat:max-not-nil-value)
 (require :vgplot)
 (vgplot:format-plot t "plot ~S u 2:1 with linespoints, ~S u 2:1 with linespoints"
                     "~/gnuplot/2000-01-01_12-00-00_plot-radial-data-recover-max.data"
                     "~/gnuplot/2000-01-01_12-00-00_plot-radial-data-recover-aver.data")
 (vgplot:format-plot t "plot ~S u 1:2 with linespoints, ~S u 1:2 with linespoints"
                     "~/gnuplot/2000-01-01_12-00-00_plot-circular-data-recover-max.data" 
                     "~/gnuplot/2000-01-01_12-00-00_plot-circular-data-recover-aver.data") 

make-splot-frame-data(f-name (t-fild <t-fild>) &key (termopara-diameter 2.0))

Описание: make-splot-frame-data формирует файл с именем f-name, который содержит векторы формате gnuplot (для вывода при помощи команды splot), отображающие контур обоймы жаровой трубы t-fild и схему расположения термопар измерения температурного поля t-fild.

Параметр termopara-diameter - задает диаметр термопар на схеме.

Пример использования:

(require :vgplot)
(let ((f-name "~/123.data"))
  (make-splot-frame-data f-name *dn80*)
  (vgplot:format-plot t "splot ~S with vectors nohead lw 2 lt -1" f-name))
-71.103264 446.0262 0.0 0.12163568 -0.031230735 0.0
-70.98163 445.99496 0.0 0.12459079 -0.015739478 0.0
-70.85703 445.97925 0.0 0.12558104 0.0 0.0
-70.73145 445.97925 0.0 0.12459079 0.015739478 0.0

Пример использования:

 set terminal pdfcairo enhanced font 'Arial,12' size 23 cm, 10 cm
 set output '2019-07-05_00-00-00_splot-t-fild-radial-outlined-conture.pdf'
 set key off;
 set style increment default;
 set style textbox opaque margins  0.5, 0.5 fc bgnd noborder linewidth 1.0;
 unset surface;
 unset grid;
 set view map;
 set size ratio -1;
 set samples 20, 20;
 set isosamples 51, 51;
 set contour base;
 set cntrlabel onecolor format '%10.0f' font ',8' start 0 interval 50;
 set cntrparam levels auto 10 unsorted;
 set style data lines;
 unset title;
 unset xlabel;
 set xrange [ * : * ] noreverse writeback;
 set x2range [ * : * ] noreverse writeback;
 unset ylabel;
 set yrange [ * : * ] noreverse writeback;
 set y2range [ * : * ] noreverse writeback;
 unset zlabel;
 set zlabel  offset character 1, 0, 0 font "" textcolor lt -1 norotate;
 set zrange [ * : * ] noreverse writeback;
 set cbrange [ * : * ] noreverse writeback;
 set rrange [ * : * ] noreverse writeback;

 splot 'frame.data' with vectors nohead lw 2 lt -1, '2019-07-05_00-00-00_splot-t-fild-radial-outlined.data' u 2:1:3  lc rgb "#000000", '2019-07-05_00-00-00_splot-t-fild-radial-outlined.data' u 2:1:3 with labels boxed notitle

make-splot-file-data-outlined(t03 t2 u-tm (t-fild <t-fild>) &key (scale *scale-smoothing*) (d-pts (d-pts-scale t-fild scale scale)) (intervals 100) (hights (list 1 0 intervals)) (ocr (ocr-intervals t-fild intervals intervals)) (hw-coeff *hw-coeff*) (h-ol-max (h-ol-max-hw-coeff t-fild hw-coeff hw-coeff)) (h-ol-min (h-ol-min-hw-coeff t-fild hw-coeff hw-coeff)) (w-ol-max (w-ol-max-hw-coeff t-fild hw-coeff hw-coeff)) (w-ol-min (w-ol-min-hw-coeff t-fild hw-coeff hw-coeff)))

Описание: метод make-splot-file-data-outlined создает файл с именем

<date>_splot-t-fild-radial-outlined.data

в который содержит даные координаты точек и температуры в формате gdata

#  Y          X      T03
...
410.9984 -1.13661 91.55444 
410.9996 -.568307 91.46499 
   411.0      0.0  91.3671 
410.9996 .5683073  91.2608 
410.9984 1.136613 91.14617 
...

для построения 3d-поля температур.

Пример использования:

(make-splot-file-data-outlined (t03-2d->signals *t03*) *t02* *ut* *dn80*)