Back to Handbook
FGR(1) FADPS FGR(1)
ИМЯ
fgr - программа работы в графическом режиме с F-файлами
(просмотр в графическом режиме,оценка значений,
счет интегралов под кривой, чистка, вычитание фона,
Гаусс-анализ, векторные и скалярные операции).
ФОРМАТ
fgr file1 file2 ... [flags]
ОПИСАНИЕ
Команда fgr предназначена для разрисовки данных,
содержащихся в F-файлах (F-формат близок к FITS-формату,
см. также описание ffile(5)) с одномерными векторами,
на рабочей станции в среде X-window, а также для
оценки интегралов и расстояний, чистке кривых F-файлов,
а также для интерактивной работы в графическом режиме
с данными, содержащимися в F-файлах, с помощью пакета
программ обработки bgd, bgdn, gauss, fconvl, four, fcalc,
ravr, aver.
Если именем файла является последовательность stdin,
то программа fgr будет считывать данные из стандартного
файла ввода.
Программа имеет три режима работы: режим одновременного
вывода на картинку данных всех файлов (при отсутствии
ключей -s, -p), имена которых находятся в списке
параметров, шкала по оси ординат при этом соответствует
действительности, а по оси абцисс соответствует данным
первого файла; режим поочередного просмотра каждого
файла (при наличии ключа -s) и режим первичной обработки
данных каждого файла (при наличии ключа -p).
При работе в первом режиме программа может производить
задержку перед выводом очередной записи (см. ключ -sleep),
а также самостоятельно завершать свою работу по истечении
заданного времени (см. ключ -pause), что удобно при создании
командных файлов.
Выдача данных в программе fgr (например, запись результата
вычисления фона или вырезание окна из F-файла и запись его
в отдельный F-файл) производится по умолчанию в том же
формате записи (плавающий, целый и т.п.), в котором
записаны и исходные данные F-файла. Изменить формат
вывода можно, присвоив переменной среды BITPIX значение
FLOAT (плавающий формат), LONG (4-байтовый целый),
SHORT (2-байтовый целый) или BYTE (1-байтовый целый).
Например, если пользователь находится в оболочке csh
(C-shell) и хочет сделать по умолчанию вывод данных
F-файла в плавающем формате, необходимо перед запуском
программы fgr выполнить следующую команду :
setenv BITPIX FLOAT
Для оболочки sh необходимо выполнить следующие
команды:
BITPIX=FLOAT; export BITPIX
При изменении окна вывода или при переналожении окна
происходит перезагрузка картинки в пересчитанном
масштабе.
Параметры X-window для команды fgr: цвет, курсор и
рамка - могут переустанавливаться в загрузочном файле
'.fgrrc' (сервис предоставляется библиотекой xplot)
для текущего каталога, когда файл находится в
нем, с помощью переменной окружения FGRRC, значением
которой является имя файла с установками, или для
пользователя вообще, когда файл находится в его
домашнем каталоге. В загрузочном файле используются
определители групп параметров и самих параметров.
Все определители разделяются либо переводом
строки либо символом ';' (можно также ' '). Все, что
следует за символом '#', рассматривается как комментарий.
Ниже приводится пример файла '.fgrrc':
#
# resource file for 'fgr', 'fgfour' and
# 'fgfew' - programs
#
#INITIAL SETTING
init
geometry*600x400+50+10
font*9x15
endinit
# COLOR SETTING
color;
Black*0; White*1; Red*2; Green*3; Blue*4
Yellow*5; Cyan*6; Magenta*7; Brown*8; Gray*9
Orange*10; Aquamarine*11; Orchid*12; Gold*13;
Violet*14; Pink*15
Khaki=16; VioletRed=17; Maroon=18; Tan=19
endcolor
# CURSOR SETTING
cursor
color*0; bcolor*1
# type*60 # cursor: XC_hand2
type*XC_hand2 # cursor: XC_hand2
endcursor
# BORDER SETTING
border; color*1; width*5; endborder
# LOCAL FGR SETTING
local
bl_menu_col1*3 # color of menu item
bl_menu_col2*2 # color of marked symbol in item
bl_menu_col3*-1 # color of current box in menu
# if sign '-' then box
# bl_menu_col4*-3 # bgd color of other boxes (not current)
bl_menu_col5*4 # color of prompt in menu
color_prmpt1=1 # color of prompt
color_prmpt2=6 # alt. color of prompt
inp_f_name_len*15 # length of name of input file
inp_f_color=5 # color of file names in input table
inp_f_bold_color=6 # color of chosen file name in
# a table
rubber_color1=1 # color of rubber
rubber_color2=6 # alt. color of rubber
endlocal
Определители 'init' и 'endinit', 'color' и 'endcolor',
'cursor' и 'endcursor', 'border' и 'endborder' соответственно
начинают и заканчивают группу определителей.
Группа 'init' дает основные характеристики для
создаваемого окна: geometry (см. также ключ -geometry)
и загружаемый фонт (см. также ключ -font).
При определении цвета из таблицы цветов 'rgb' имени цвета
присваивается номер, который используется программой fgr.
В примере приведены цвета по умолчанию. Имя цвета и
присваиваемый номер соединяются символами '*' или "=";
пробелов при определении каждого цвета быть не должно.
При выборе курсора устанавливаются его цвет: color,
цвет фона для него: bcolor, тип курсора, где задается
фонт курсора либо по номеру, либо по символьному имени.
При установке границы можно выбрать ее цвет и размер
в пикселах экрана.
В группе 'local' находятся определители для цветов
меню программы fgr:
цвет пункта меню (bl_menu_col1),
цвет выделенного символа меню (bl_menu_col2),
цвет текущего бокса меню (bl_menu_col3)
(если bl_menu_col3 < 0, то вместо изменения фона будет
происходить установка рамки цвета ABS(bl_menu_col3)),
цвет обычного бокса меню (bl_menu_col4)
(если bl_menu_col4 < 0, то вместо изменения фона будет
происходить установка рамки цвета ABS(bl_menu_col4)),
цвет высвечиваемой подсказки (bl_menu_col5),
цвет сообщения-подсказки (color_prmpt1),
альтернативный цвет подсказки в случае, когда график
того же цвета (color_prmpt2),
выводимая длина имени файла при вводе из списка в
пункте 'Inp_f' (inp_f_name_len),
цвет выводимых имен файлов в этом списке (inp_f_color),
цвет выбираемого имени файла в этом списке (inp_f_bold_color),
цвет рисуемой 'резинки' (rubber_color1),
альтернативный цвет рисуемой 'резинки' в случае, когда
график того же цвета (rubber_color1).
Одним из полезных режимов работы программы является запись
в PLOT-файл картинки без вывода на дисплей (см. ключ -P);
X-window оболочка при этом не требуется.
В программе fgr могут присутствовать следующие ключи :
-a - установить вывод цены деления по оси абцисс в левом
верхнем углу. При этом выдается цена наименьшего
деления в единицах этой оси. При отсутствии этого
ключа цена деления не выдается.
-c - при наличии этого ключа в режиме одновременного
вывода на экран графических отображений данных всех
файлов программа не проверяет соответствие границ
выводимых файлов, а выводит данные всех файлов
целиком. При этом значения по оси ординат
отображаются правильно, а по оси абцисс выводится
шкала, соответствующая данным первого файла.
-С - следующий за этим ключом параметр 'cut1,cut2'
представляет из себя уровни обрезания значений
данных, а именно верхнюю и нижнюю границу для
вычисления масштаба. Если первый параметр
отсутствует (например, '-C ,2.75K'), то в качестве
нижней границы будет использоваться минимальное
число записи.
Величина вводимых значений cut1 и cut2 зависит
от единиц значений функции, определяемых ключевым
словом BUNIT. Если BUNIT=K (Кельвины) или
BUNIT=JY (Янские), то соответствующие величины
будут вводиться в мК или в мЯн, т.е. вводимые
данные с фактором 0.001 отличаются от данных,
содержащихся в файле. Для остальных значений
BUNIT вводимые параметры 'cut1,cut2' сохраняют
масштаб реальных данных. Однако существует
возможность ввода данных в Кельвинах или Янских;
при этом надо (перед) после параметра поставить
символы 'K' или 'J', например, '-C -2k,k4'.
Здесь масштаб выводимых записей будет от 2
Кельвинов до 4 Кельвинов.
См. также ключ '-Cs'.
-Cs - то же самое, что и ключ '-C'. Только позволяет
устанавливать масштаб, превышающий масштаб
исходных данных. Ключ удобен для установки
одинаковых масштабов для нескольких картинок.
-Fn - следующий за этим ключом - номер файла, с которого
будет происходить счет файлов. Учитывая, что
каждому номеру файла соответствует цвет,
пользователь может использовать данный ключ
при создании командных файлов.
-font - следующий за этим ключом параметр - имя
фонта X-window, который будет загружен вместо
текущего.
-g - наложить сетку на график. Противоположные оси
(левая - правая, верхняя - нижняя) соединяются
линиями по большим и средним делениям.
-geometry - следующий за этим ключом параметр
строка в формате: AxB+C+D, определяющая геометрию
окна в X-window: (A,B) - размеры окна
в X-window среде, (C,D) - положение начальной
точки окна (верхний левый угол) в корневом окне.
-G - при наличии этого ключа программа fgr при работе
в неинтерактивном режиме (при отсутствии ключей -s
и -p) выводит на экран график в виде "ступенек".
Удобно при построении гистограмм.
-H - посчитать полуширину источника в единицах оси
абцисс (считается , что таковой имеется) и выдать
ее на картинку. Полуширина вычисляется только для
первого F-файла из списка, когда программа работает
в режиме одновременного вывода всех источников.
-l - подключить локатор. В середине экрана высвечивается
курсор в виде стрелки, который можно двигать с
помощью мышки или клавишей-стрелок.
Клавиша 5, расположенная
среди клавишей-стрелок, является переключателем
скорости движения курсора. При нажатии этой клавиши
скорость будет увеличена в 2 раза; при нажатии этой
клавиши и одновременном нажатии клавиши Shift
скорость будет уменьшена в 2 раза.
Любая клавиша клавиатуры (кроме 'q','e','r',
'm' и клавишей-стрелок) служит для определения текущих
значений по осям абцисс и ординат в единицах
измерений этих осей. Измеренные значения выводятся
на экран, причем по оси ординат значение выводится
в шкале данных файла, а по оси абцисс -
как расстояние от начала картинки.
Имеется возможность мерить расстояния по обеим осям
в соответствующих единицах :
клавиша 'r' - начало измерения. При этом
включается 'резинка' ("rubber") , которая тянется
от помеченной точки до текущего положения курсора.
клавиша 'm' - после нажатия этой клавиши
производится измерение ("measuring") расстояний
между отмеченными точками по осям абцисс и ординат.
Измеренные значения высвечиваются на экране.
При нажатии клавишей 'q' ("quit") или 'e' ("end")
происходит выход из режима локатора, а также из
графического режима дисплея и из программы.
При отсутствии ключа -l выход из программы fgr
в графическом режиме работы дисплея производится
нажатием клавишей или . Если перед нажатием
этой клавиши набрать символ 'l', то программа
переходит в режим работы локатора (см. ключ -l).
-mono - при наличии этого ключа программа работает
в моноцветовом режиме.
-n - при наличии этого ключа возле каждой записи будет
выводится имя файла, из которого эта запись считана.
-N - следующий за этим ключом параметр - имя F-файла,
в который будет выводится результат работы программы
fgr. По умолчанию - 'fgr.data', а для имени входного
файла 'stdin' - файл стандартного вывода 'stdout'.
-p - при наличии этого ключа программа работает в
режиме 'prad' - первичной обработки записей.
Подробное описание режима см. ниже.
-pause - следующий за этим ключом параметр определяет
время в секундах, в течении которого программа
будет показывать картинку, после чего она
завершит свою работу (без нажатия клавиши
возврата каретки). Этот ключ полезен при работе
с командными файлами. Ключ используется только
в первом режиме работы программы.
-P - при наличии этого ключа программа сбрасывает
картинку в графический файл fgr.pl, который можно
разрисовать программой graphic (см. описание
graphic(1)) или перевести его на язык PostScript
(см. описание plgr(1)). При наличии этого ключа
программа игнорирует ключи -p и -s . Ключ -P
автоматически устанавливается, когда имя программы
fgrf (например, как ссылка программы fgr).
Если за ключом '-P' идет параметр без пробела,
то этот параметр воспринимается как имя PLOT-файла,
в который будет производится дозапись вместо
файла 'fgr.pl' по умолчанию. Если имя файла
'-' или 'stdin' (например, когда '-P-', или
'-Pstdin'), то в качестве графического файла
вывода будет использоваться стандартный файл
вывода.
+q - следующий за ним параметр hh:mm:ss.ss (часы,
минуты,секунды) обозначает время от начала записи
(точнее, параметр определяемый ключевым словом
CTYPE1 в F-формате), с которого будет происходить
чтение данных из файла ввода, т.е. относительный
отсчет (от начала записи), до которого используются
данные при выводе и обработке.
Формат вводимого параметра может быть следующий:
если вводится число (без символов ':'), то
программа рассматривает его как секунды (или
другие единицы по оси абцисс). Если это число
начинается или оканчивается символами 'h' или
'd', то программа воспринимает его как часы
или градусы. Если это число (следующий после
ключа +t параметр) начинается или оканчивается
символами 'm' или ' \' ', то программа
воспринимает его как минуты. Если число начинается
с символа 'p', то программа воспринимает его как
пикселы.
-q - следующий за ним параметр hh:mm:ss.ss (часы,
минуты,секунды) обозначает время от начала записи
(точнее, параметр определяемый ключевым словом
CTYPE1 в F-формате), до которого будет происходить
чтение данных из файла ввода, т.е. относительный
отсчет (от начала записи), до которого используются
данные при выводе и обработке.
Вместо последовательности hh:mm:ss.ss число
может быть записано по формату, описанному для
ключа +q.
-s - при наличии этого ключа программа позволяет
просматривать записи по одной из списка. При этом
нажатие клавиши или означает переход
к следующему файлу по списку.
Если перед нажатием этой клавиши набрать символ
'b' или '-', то после нажатия программа перейдет
к предшествующему файлу.
Если перед нажать символ 'h', то программа
перейдет в режим счета полуширины, предполагая,
что в записи имеется 1 источник. Повторное нажатие
этой клавиши отключает режим счета полуширины.
Если перед нажать символ 'v', то программа
будет рисовать временную ось в обратном направлении,
т.е. возрастание шкалы будет справа налево.
Повторное нажатие этой клавиши отключает режим
вывода временной оси в обратном направлении.
Если перед клавишей набрать символ 'p', то
программа перейдет в режим 'prad' - первичной
обработки записей (см. ключ -p).
Если перед клавишей ввести слово 'start' или
'stop', то программа задаст вопрос : 'New start ?'
или 'New stop ?' соответственно. После ввода новых
границ начала или конца в формате, описанном ниже
(см. пункт 'Bound'), программа рисует текущую
картинку, но в новых границах. Чтобы перейти к реальным
границам записи, достаточно набрать последовательности
-start<вк> и -stop<вк>.
Если ввести символ 'q', то произойдет выход из
программы fgr.
-sleepQ - при наличии этого ключа программа перед
выводом очередной записи на экран делает задержку
на Q секунд (Значение Q записывается после ключа
-sleep или -sl сразу за ключом без пробела). Если
число Q отсутствует (т.е. задан просто ключ
-sleep или -sl), тогда вывод очередной записи
производится после нажатия клавиши возврата
каретки. Используется только в первом режиме
работы программы. Ключ бывает полезен при
демонстрации.
-sundata (или -sun) - при наличии этого ключа программа
будет работать с данными, записанными в
среде Sun OS.
+t или +T - следующий за ним параметр hh:mm:ss.ss (часы,
минуты,секунды) обозначает время (точнее, параметр
определяемый ключевым словом CTYPE1 в F-формате),
с которого будет происходить чтение данных из файла
ввода, т.е. абсолютный отсчет, с которого используются
данные при выводе и обработке, от 0-пункта шкалы.
Формат вводимого параметра может быть следующий:
если вводится число (без символов ':'), то
программа рассматривает его как секунды (или
другие единицы по оси абцисс). Если это число
начинается или оканчивается символами 'h' или
'd', то программа воспринимает его как часы
или градусы. Если это число (следующий после
ключа +t параметр) начинается или оканчивается
символами 'm' или ' \' ', то программа
воспринимает его как минуты.
-t или -T - следующий за ним параметр hh:mm:ss.ss (часы,
минуты,секунды) обозначает время (точнее, параметр
определяемый ключевым словом CTYPE1 в F-формате),
до которого, будет происходить чтение данных из файла
ввода, т.е. абсолютный отсчет, до которого используются
данные при выводе и обработке, от 0-пункта шкалы.
Вместо последовательности hh:mm:ss.ss число
может быть записано по формату, описанному для
ключа +t.
-text - следующий за этим ключом параметр "x,y,text"
позволяет выводить текст на экран программы fgr.
В этом параметре вместо 'x' и 'y' задаются координаты
соответственно по оси абсцисс и ординат в системе
единиц программы fgr: от 0 до 32767 с началом
координат в нижнем левом углу. Вместо переменной
'text' записывается строка, которая будет выведена
в позицию с координатами (x,y). Например, использование
ключа '-text 16384,16384,"Hello, World" ' позволит
вывести строку "Hello, World" в середине экрана.
-tmp - следующий за этим ключом параметр - имя каталога,
в котором будут создаваться временные файлы. По
умолчанию используется каталог '/tmp'.
-v - при наличии этого ключа временная ось выводится в
обратном направлении : возрастание шкалы справа
налево.
-w - при наличии этого ключа будет выводится длина волны
для каждой записи.
-y - следующий за ним параметр factor обозначает число,
на которое будет домножаться каждое значение из
каждой записи, при условии сохранения первичной
шкалы по оси ординат.
-------------------------------------------------
| |
------ РЕЖИМ ПЕРВИЧНОЙ ОБРАБОТКИ ДАННЫХ ---------
| |
-------------------------------------------------
Файлы по умолчанию берутся из списка параметров
программы fgr. При входе в режим 'prad' под
графиком высвечивается главное меню :
__________________________________________________________________________
| |
| Lst Wind Bound Int Crs Math Gr Next Inp Outp Del Sh Refr Pr_off |
| __________________________________________________________|
| File listing |
|_______________|
Движение по меню с помощью клавишей-стрелок, либо с помощью
выделенной буквы в каждом пункте меню, либо с помощью мышки.
Подведение курсора мышки к пункту меню и нажатие первой
клавиши дает вход в меню, второй клавиши - делает пункт
меню текущим без входа в него. При нажатии третьей клавиши
мышки программа переходит в вышестоящее меню или при
отсутствии такового - выходит из этого режима.
Под меню высвечивается подсказка к текущему пункту , одна
из следующих (в порядке расположения пунктов меню) :
File listing - листание файла по оси абцисс с некоторым
окном. По умолчанию окно 300 единиц
(5 минут в случае временной шкалы),
New window for listing - новое окно для листания,
New left border - новая левая граница, с которой
начинается окно,
Set new interval of viewing by cursor - установить новый
интервал просмотра с помощью куросора,
Cursor: change file,measure distance,integral,sigma - работа
с куросром: изменение файла, измерение
расстояний, счет интеграла под кривой,
вычисление дисперсии,
Background,gauss,convolution,scalar & vector operations -
вычитание фона, аппроксимация кривых
набором гауссиан, свертки, скалярные и
векторные операции,
Output curr.figure into graph-file in plot format - вывести
текущую картинку в графический файл fgr.pl,
который можно разрисовать программой
graphic (см.graphic(1)),
Next file - загрузить новый файл из списка,
Output current file into new file - вывести текущий файл,
Input a new file (name) or select from list (cntrl-L) -
- загрузить новый файл не из списка
аргументов, или выбрать его из
списка содержимого текущего
каталога,
Delete current file - удалить текущий файл,
Shell process execution - выход в оболочку shell,
'fgr'-screen refreshing - перегрузить текущее изображение,
Switching off prad regime - выйти из режима 'prad'.
------//------------//---LISTING----//--------------//--------
При входе в пункт 'Lst' пользователь получает возможность
просматривать файл, двигаясь вдоль оси абцисс с некоторым
окном (по умолчанию 300 единиц оси абсцисс), используя
клавиши-стрелки.
Под картинкой высвечивается подсказка:
MOVE LEFT: <-,Tab,l,UP(halfscr); RIGHT: ->,r,DOWN(halfscr)
g:PLOT-copy; s:new scale; :previous cmd; q:quit listing"
что означает:
левое движение: клавиша-стрелка <-, горизонтальная
табуляция Tab, клавиша 'l', стрелка вверх - сдвиг
не на весь экран, а на половину;
правое движение: клавиша-стрелка ->, клавиша 'r',
стрелка вниз - сдвиг не на весь экран, а на половину;
выход из режима 'Listing' в меню с помощью клавиши 'q';
при нажатии клавиши 'g' текущая картинка дописывается
в файл fgr.pl, который разрисовывается программой
graphic; символ 's'- установить новую шкалу для
текущего экрана;
нажатие клавиши повторяет предшествующую команду.
------//------------//----WINDOW----//--------------//--------
При входе в пункт 'Wind' программа задает вопрос:
new window ?
новое окно ?
Форматы ввода нового окна следующие:
pFloat - следущее за символом 'p' число без
пробела - количество пикселов.
hHH или HHh - символ 'h' и следующее за или перед ним
число без пробела - количество часов в окне.
mMM или MMm - символ 'm' и следующее за или перед ним
число без пробела - количество минут в окне.
HH:MM:SS.SS - через двоеточие: часы,минуты,секунды.
SS.SS - просто число : секунды.
------//------------//---BOUND------//--------------//--------
При входе в пункт 'Bound' программа задает вопрос:
new left border ?
новая левая граница ?
Форматы ввода границы такие же как и для окна. После ввода
границы программа переходит на новую границу и высвечивает
картинку в текущем окне.
------//---------SET-INTERVAL-WITH-CURSOR-----------//--------
При входе в пункт 'Int' на экране снизу высвечивается
подсказка:
use arrows, '>' & '<' to move; ^U:up; ^D:down; 'Q',MB3: exit
mark interval: 'r'-shift'-'m' or MB1-shift-MB1, MB2-shift-MB2
Эта подсказка означает следующее:
1) движение куросора по экрану при работе в этом пункте
можно производить с помощью мышки, клавишей-стрелок,
символов '<', '>', cntrl-U, cntrl-D
3) Отметить интервал для дальнейшей визуализации можно
следующими способами:
a) момент начала интервала отмечается вводом символа
'r', момент окончания интервала символом 'm'.
После ввода символа 'r' на экране появляется
"резинка", которая "растягивается" до следующей
требуемой точки.
b) момент начала интервала отмечается вводом символа
'1'. На экране после этого появляется вертикальная
черта, которую можно перемещать обозначенными в
подсказке клавишами или мышкой. Эта черта является
первой границей. Установка (ввод с запоминанем
положения) границы осуществляется с помощью
нажатия клавиши 'Enter' или первой клавиши мышки.
Вторая граница устанавливается аналогично первой,
с тем лишь отличием, что вместо символа '1' вводится
символ '2'.
c) Установка границ с помощью мышки. Этот способ
подобен предыдущему. Отличие состоит в том, что
вместо символа '1' можно производить установку
нажатием первой клавиши мышки (MB1), а второй
границы - нажатием второй клавиши мышки (MB2).
При этом первую границу можно установить двойным
нажатием MB1, а вторую - двойным нажатием MB2.
Для запоминания установленных границ необходимо либо ввести
символ 'q', либо нажать третью клавишу мышки MB3.
Для выхода из данного пункта без запоминания новых границ
надо ввести символ 'Escape'.
При установке новых границ на экране вывечивается новая
картинка, а пользователь оказывается в пункте 'Lst' в
режиме 'Listing', выход из которого производится нажатием
кнопки MB3 или вводом символа 'q'.
------//------------//---CURSOR-----//--------------//--------
При входе в пункт 'Crs' в центре экрана высвечивается
курсор в виде стрелочки, а внизу высвечивается следующая
подсказка:
use arrows, '>' & '<' to move;^U:up;^D:down;Q:exit;W:curr.mean;R:rubber
M(after R):measure;I(af.R):integr;S(af.R):sigma;C(af.R):cut;:curr.pos
что означает :
использовать клавиши-стрелки для движения, а также
TAB : для движения вправо,
^B : для движения влево,
^U : для движения вверх,
^D : для движения вниз,
клавиши '<' и '>' : для движения по записи в соответствующих
направлениях,
клавиши '+' и '-' : для увеличения и уменьшения текущей
скорости движения курсора по записи с помощью
клавишей '<' и '>' в два раза,
B : вычитание фона. Значения прямой от исходной точки,
помеченной клавишей 'R', до текущей точки вычитаются
из соответствующих элементов исходного массива.
Результат в файл не записывается,
C : чистка записи. Значения прямой от исходной точки,
помеченной клавишей 'R', до текущей точки
присваиваются соответствующим элементам исходного
массива. Но не записываются в файл.
D : для установки шага движения с помощью клавишей
'<' и '>'. При нажатии этой клавиши задается вопрос:
"step ?". Ввод необходимо производить в единицах
оси X. Например, в случае временного ряда - в
секундах времени.
I : счет интеграла под кривой. Границы интеграла по
оси абцисс помечаются клавишами 'R' и 'I'.
Вычисление ведется только под кривой записи в этих
границах (не под 'резинкой'). Значение интеграла
вычисляется как сумма отсчетов, помноженная на шаг
записи, и выдается в левом верхнем углу,
M : измерение расстояний между точкой, помеченной
клавишей 'R' и текущим значением. Расстояния по
осям абцисс и ординат выдаются в соответствующих
единицах в левом верхнем углу,
Page 6 (printed 18/04/96)
FGR(1) FGR(1)
p : поставить на графике в данном месте точку, изменив
значение пиксела;
Q : выход в исходное меню,
R : включение резинки (см. описание работы для ключа
'-l'),
s : вычисление дисперсии. Дисперсия вычисляется от
исходной точки, помеченной клавишей 'R', до текущей
точки,
S : вычисление дисперсии. Дисперсия на текущем интервале;
t : вычисление чувствительности. Чувствительность
вычисляется от исходной точки, помеченной
клавишей 'R', до текущей точки;
T : вычисление чувствительности на текущем интервале;
W : текущее значение массива данных. Выдается текущее
значение элемента массива данных.
В режиме работы курсора при нажатии клавишей 's' или 'S'
вычисляются три оценки дисперсии: обычная, AMD (absolute
median deviation - оценка дисперсии по абсолютному медианному
отклонению) или робастная и трехточечная. Значения
всех трех оценок дисперсии выводятся на экран.
При нажатии клавиши 5, расположенной среди клавишей-стрелок,
происходит уменьшение шага передвижения с помощью стрелок,
при повторном нажатии - возврат к исходному шагу.
При нажатии любой другой клавиши, например , в правом
верхнем углу высвечиваются текущее значение по оси ординат
и расстояние от начала записи по оси абцисс в соответствующих
единицах.
------//------------//----MATH------//--------------//--------
При входе в пункт 'Math' программа выдает следующее меню:
_____________________________________________________________________
| |
| Bgd Gauss Beam_ap Fconvl Four Fcalc Pol Filt Shell Exit |
| ____________________________________________|
| background calculation |
|_________________________|
Движение по меню с помощью клавишей-стрелок, либо с помощью
выделенной буквы в каждом пункте меню, либо с помощью мышки.
Подведение курсора мышки к пункту меню и нажатие первой
клавиши дает вход в меню, второй клавиши - делает пункт
меню текущим без входа в него. При нажатии третьей клавиши
мышки программа переходит в вышестоящее меню или при
отсутствии такового - выходит из этого режима.
Под меню высвечивается подсказка к текущему пункту,
одна из следующих (в порядке расположения пунктов меню):
background calculation - проведение и вычитание фона,
calculation of gauss approximation - аппроксимация записи
набором гауссиан,
beam approximation - аппроксимация диаграммой
направленности,
calculation of convolution - вычисление сверток и
кросс-корреляций,
work with Fourier spectrum - работа с Фурье-спектром,
F-file calculator - калькулятор для F-файлов,
polarization - вычисление степени и угла
поляризации, для параметров
Q и U (пока не реализовано),
own filter - запуск своего фильтра,
shell process execution - выход в оболочку shell,
return to the main menu - выход в главное меню.
Среди перечисленных только что пунктов меню имеются меню
следующего уровня : пункты 'Bgd' , 'Fconvl' , 'Fcalc' .
Page 7 (printed 18/04/96)
FGR(1) FGR(1)
------//------------//-----BGD------//--------------//--------
При входе в пункт 'Bgd' высвечивается меню третьего уровня :
_______________________________________________________________________
| |
| 1_bgd 2_qb 3_pb 4_bn 5_bn Tr Pars Man Spl Sbtr Put_m Out Return Exit |
| ___________________________|
| background calculation using convolution |
|___________________________________________|
где соответствующие комментарии означают :
background calculation using convolution - вычисление фона на
основе свертки (программа bgd),
background calculation using moving average - вычисление фона
на основе скользящего
среднего (программа bgd),
background calculation using polynomial smoothing - вычисление
фона на основе полиномиального
сглаживания (программа bgd),
background calculation using B.L.E. function - вычисление
фона на основе функции,
введенной Б.Л.Ерухимовым,
(см. Б.Л.Ерухимов, В.В.Витковский,
В.С.Шергин. Препр.САО АН СССР
N50, 1990) (программа bgdn),
bgd calc with B.L.E. func without bound effect - вычисление
фона на основе на основе функции
Ерухимова, но без краевых
эффектов (см. bgdn(1)),
linear or polynomial trend calculation - вычисление линейного
или полиномиального тренда,
setting parameters for bgd - установление параметров для
программы вычисления фона,
bgd input by manual manner - проведение фона от руки:
с помощью мышки или клавишей-
стрелок;
bgd with spline calculation - проведение фона с помощью
сплайновой аппроксимации,
background subtraction - вычитание вычисленного фона,
put result into memory - занести результат вычисления
фона в память,
background output - вывод фона в F-файл,
return to the previous menu - выход в предшествующее меню,
return to the main menu - выход в главное меню.
При входе пользователя в первые пять пункта программа задает
вопрос :
window for smoothing (t.sec) ?
окно для сглаживания (секунды времени) ?
Здесь можно использовать также единицы других размерностей,
отличных от времени, расположенных по оси абцисс. Если числу
предшествует символ 'p' без пробела, то ввод окна производится
в пикселах. Фон будет вычислятся только при наличии в системе
программ вычисления фона bgd (авторы В.В.Витковский, В.С.Шергин,
М.Л.Моносов) для первых трех случаев и программы bgdn (а. Б.Л.
Ерухимов) для четвертого и пятого случая. Расчитанная
кривая фона накладывается другим цветом на исходную запись.
При работе программой bgd (1-ый и 2-ой случаи) есть возможность
использовать вычисление фона по верхнему и по нижнему
уровням (см. также описание программы bgd(1)). Для
этого необходимо в конце строки ввода поставить символ
'l' в случае вычисления фона по нижнему уровню или символ
'h' в случае вычисления фона по верхнему уровню. По умолчанию
реализован случай вычисления фона по нулевому уровню.
Если после ввода окна в конце вводимой цифровой
последовательности пользователь набрал символ 'i',
то программа задает дополнительный вопрос:
Page 8 (printed 18/04/96)
FGR(1) FGR(1)
number of iterations [bgd:4,bgdn:5] ?
количество итераций (по умолчанию для программы bgd - 4,
для программы bgdn - 5).
Если после ввода окна для программ bgd, qbgd (bgd -q) и
pbgd (bgd -p) в конце вводимой цифровой последовательности
пользователь набрал символ 's', то программа задает
дополнительный вопрос:
new sigma (default %g mK) ?
уровень шума в мК ? При этом вместо последовательности
%g подставится текущее значение сигма.
Если после ввода окна для программы полиномиального
сглаживания pbgd (bgd -p) в конце вводимой цифровой
последовательности набрать символ 'd', то программа задаст
вопрос:
power of polynom [%d] ?
степень полинома, где вместо '%d' подставится текущая
степень, заданная в меню ввода параметров (см. ниже), либо
равная трем по умолчанию.
Если работа программы вычисления фона была по каким-либо
причинам прервана (например, из-за отсутствия программы в
системе, из-за ошибки в работе программы или сигналом
прерывания, посланным пользователем с клавиатуры терминала),
программа fgr выдает сообщение:
I can't execute this command
Tap to continue
что означает :
я не могу выполнить эту команду,
нажмите <возврат каретки> для продолжения.
При входе пользователя в шестой пункт данного меню 'Tr'
программа выдает подсказку:
format: [ Integer[{adlp}] ], [{DLP}] (d,D-polynom, l,L-line, p,P-parabola)
что означает:
формат ввода: целое число и возможно один из символов
'a','d','l','p' вслед за числом без пробела или один из
символов 'D','L','P'. При этом символ 'a' означает простое
осреднение на краях записи, символы 'd' и 'D' - признаки
полинома, символы 'l' и 'L' - признаки линии, а
символы 'p' и 'P' - признаки параболы.
Ниже высвечивается вопрос :
number of bound points [5] ?
количество граничных точек для вычисления линейного
тренда (по умолчанию 5).
Имеется ввиду количество точек на одной границе записи,
по которым вычисляется медиана. По двум точкам,
соответствующим медианам на концах записи, вычисляется
линейный тренд.
Имеется возможность менять способ вписывания прямой.
Если после вводимого числа набрать один из символов
'a', 'l' или 'L', то программа соответственно вычисляет
вместо медианных точек средние значения для краевых
точек (случай 'a'), используя краевые точки вычисляет
аппроксимационную прямую ('l') или вычисляет
аппроксимационную прямую по всем точкам записи (случай
'L'). В последнем случае ввод числа не обязателен.
Если после вводимого числа набрать один из символов
'p', 'P', 'd' или 'D', то программа будет вписывать
полиномиальную аппроксимационную кривую тренда. В случае
'p' это будет парабола, которая вычисляется по краевым
точкам, в случае 'P' это будет парабола, которая
вычисляется по всем точкам записи, в случаях 'd' и 'D'
полином, который вычисляется по краевым точкам записи
('d'), либо по всей записи. Перед вычислением полинома
Page 9 (printed 18/04/96)
FGR(1) FGR(1)
программа задает вопрос:
power of polynom [3] ?
степень полинома (по умолчанию 3).
Тренд вычисляется при наличии в системе программы
trend. См. также описание trend(1).
При входе пользователя в седьмой пункт данного меню 'Pars'
высвечивается меню установления параметров для программ
вычисления фона:
________________________________________________________
| |
| Iterations_number Sigma Level Power Return Exit |
| iterations_number ____________________________________|
|____________________|
где соответствующие комментарии означают :
iterations_number - количество итераций,
current noise level - текущее значение сигма
(уровень шума),
type level for bgd - тип уровня для программ
bgd и qbgd,
power for polynomial bgd calculation - степень полинома
для полиномиального
сглаживания,
return to the previous menu - выход в предшествующее меню,
return to the main menu - выход в главное меню.
При установке количества итераций программа задает вопрос:
number of iterations [bgd:4,bgdn:5] ?
количество итераций (по умолчанию для программы bgd - 4,
для программы bgdn - 5).
При установке шума (сигма) программа задает вопрос:
new sigma (default %g mK) ?
уровень шума в мК ? При этом вместо последовательности
%g подставится текущее значение сигма.
При установке типа уровня для программ bgd и qbgd задается
вопрос:
type of level for bgd or qbgd (default %c) ?
тип уровня ? При этом вместо последовательности
%c подставится текущий тип, который и будет по умолчанию.
При установке степени полинома программы pbgd задается
вопрос:
power of polynom [%d] ?
степень полинома, где вместо '%d' подставится текущая
степень, либо равная трем по умолчанию.
При входе пользователя в восьмой пункт меню 'Man' выбора
фона появляется возможность проведения кривой фона от руки
с помощью мышки или клавишей-стрелок. Внизу высвечивается
подсказка:
, MB1 (1st time): painter ON, (2nd time):painter OFF
Mouse, arrows : to move; Esc, q, MB2 - exit
что означает:
первое нажатие клавиши возврата каретки и первой клавиши
мышки включает карандаш; второе нажатие отключает.
Движение курсора производится с помощью мышки либо клавишей-
стрелок. Выход производится нажатием клавишей 'Esc', 'q'
или 2-ой клавиши мышки.
При работе в этом режиме первое нажатие клавиши
или нажатие и отжатие первой клавиши мышки включает режим
запоминания; второе нажатие отключает. Траектория,
нарисованная на том же месте, затирает предыдущее
состояние массива и записывает новое. В нетронутых
значениях буфера остается 0.
При входе пользователя в девятый пункт меню 'Spl' выбора
фона появляется возможность проведения кривой фона c помощью
сплайнов, узлы для которых задаются при помощи мышки.
Внизу высвечивается подсказка:
{,'s',MB1}-mark or select; {'u',MB2}-unselect, 'z'-zigzag
{Mouse,arrows}-move; 'm'-input pnts number; {Esc,q,MB3}-exit
что означает:
первое нажатие клавиши возврата каретки, клавиши 's',
или первой клавиши позволяет отметить выбранное положение
узла; символ 'u' или первая клавиша мышки отменяют
выбранный узел; движение курсора производится с помощью
мышки или клавишей-стрелок; 'z' - вычислять не сплайны,
а простую ломанную линию, соединяющую помеченные точки;
с помощью символа 'm' - задается количество узлов для
проведения сплайнов по умолчанию; выход из режима
производится с помощью клавишей 'Esc', 'q' или
третьей клавиши мышки.
При маркеровке выбранных узлов на экране вокруг них будут
появляться кружки другого цвета.
Если пользователь хочет отменить отмеченный узел, надо
подвести к нему курсор и нажать клавишу 'U' (unselect) или
вторую клавишу мышки. При этом цвет кружка вокруг
отмененного узла станет такой же, как и цвет выведенной записи.
Первый и последний узлы уже отмечены программой fgr. Они
вычисляются как медианы первых и последних 5 точек
соответственно.
Выход из режима ввода узлов производится после нажатия
клавиши 'q' или третьей клавиши мышки.
Сразу после выхода управление передается программе
fspline, которая по полученным узлам проводит кривую фона.
При входе пользователя в десятый пункт меню выбора фона
'Sbtr' программа вычитает фон из находящейся в памяти исходной
записи, после чего перегружает экран по-новому.
При входе в одиннадцатый пункт 'Put_m' программа записывает
сглаживания (вычисленный фон) в текущее место памяти, и
в дальнейшем рабочий массив в данном интервале будет
содержать результаты сглаживания.
При входе в двенадцатый пункт 'Out' программа выводит
вычисленный фон в F-файл, задавая вопрос :
filename ? ( fgr.data)
имя файла для вывода фона ?
По умолчанию fgr.data.
При входе в тринадцатый пункт пользователь попадает в
предшествующее меню, при входе в тринадцатый - в главное меню.
Программа при этом экран не перегружает.
------//------------//-----GAUSS----//--------------//--------
При входе пользователя в пункт 'Gauss' меню 'Math' главного
меню программа задает вопрос:
если по оси ординат отложены градусы Кельвина
noise level (mK) ?
Уровень шума в мК ?
Page 10 (printed 18/04/96)
FGR(1) FGR(1)
если по оси ординат отложены другие единицы, то
noise level (...[s,n,t]) ?
где вместо ... подставятся соответствующие единицы.
Фактически, уровень шума здесь означает наименьшую
амплитуду, ниже которой аппроксимация набором гауссиан
происходить не будет. Если при вводе уровня шума к числу
дописать символ 's', то программа будет вписывать гауссианы,
разбивая запись на отрезки по 240 сек с пересечением по 30
сек (аналогично ключу -s программы gauss). Если при вводе
уровня шума к числу дописать символ 'n', то перед запуском
подпрограммы будет производится нормировка записи на
максимальное значение, что бывает удобно при очень больших
числах (аналогично ключу -N программы gauss). При вводе
символа 't' происходит изменение вывода результатов
аппроксимации в протокольный файл fgr.log (см. в этом же
пункте ниже).
Для аппроксимации набором гауссиан необходимо наличие в
системе программы Гаусс-анализа gauss (см. подробнее описание
gauss(1); авторы Л.Н.Иванов, В.В.Витковский, М.Л.Моносов
и др.). При работе программа реагирует на ошибки так же, как
и при вычислении фона.
После вычисления гауссиан программа на текущее изображение
накладывает картинку с результатами аппроксимации, после
чего задает вопрос :
output gaussian curve ( y/n,N [n] ) ?
Вывод Гаусс-аппроксимации ? (по умолчанию 'нет').
При утвердительном ответе программа запрашивает имя файла
вывода, предлагая по умолчанию fgr.data.
При выводе формируется F-файл с результатами Гаусс-анализа.
Параметры рассчитанных гауссиан записывается в текстовый файл
fgr.log, при этом, если файл уже существует, запись производится
в конец файла. Запись параметров гауссиан в файл fgr.log
можно отменить, если в качестве ответа на предыдущий вопрос
ввести символ 'N'. При записи в файл формируется стандартная
таблица параметров гауссиан с шапочкой: положение,
амплитуда, полуширина, интеграл. В шапочке кроме заголовков
полей присутствуют также имя объекта, длина волны и дата
наблюдения. Если при ответе на вопрос:
noise level (...[s,n,t]) ?
после ввода уровня был набран символ 't', то программа
формирует сортированную таблицу параметров вписанных
гауссиан в следующем порядке: положение, амплитуда,
полуширина, интеграл под кривой, дата наблюдения.
При чем в случае "beam switching" для отрицательных
амплитуд значение положения будет отрицательным, а
амплитуда положительной. Это сделано для разделения
результатов при сортировке. Установку вывода в таком
табличном виде можно задать также и с помощью
переменной среды FGRLOG. Для оболочки csh это
будет выглядеть так:
setenv FGRLOG sort
Для оболочки sh
FGRLOG=sort; export FGRLOG
В простейшем случае для разовой установки можно
использовать следующую команду:
FGRLOG=sort fgr -p file
Для вывода такой таблицы в системе должны присутствовать
программы 'sort' и 'mv'.
Для сортировки по определенному столбцу можно задать
также номер столбца в соответствии с правилами команды
'sort' (см. описание sort(1)), например:
FGRLOG="sort +4.3"
Если значение переменной FGRLOG=nosort, то создаваемый
протокольный файл (в том же стиле, что и для значения
sort), сортироваться программой 'sort' не будет.
Гаусс-аппроксимация вычисляется также для режима "beam
switching", при этом программа анализирует ключевое слово
RCV-MODE шапочки F-файла (см. подробнее описания
ffile(5) и gauss(1) ).
------//------------//--BEAM_AP-----//--------------//--------
При входе пользователя в пункт 'Beam_ap' меню 'Math' главного
меню программа задает вопрос:
name of F-file with beam pattern (default) ?
имя F-файла с диаграммой направленности (или
использовать по умолчанию) ?
Если пользователь не вводит имени файла, то программа
ищет в текущем каталоге файл с диаграммой, созданный
предыдущим вызовом программы beamap с требуемыми для
данного случая характеристиками. Если такого файла
нет, то запускается программа bp1 для расчета
одномерной диаграммы направленности РАТАН-600.
При этом происходит проверка на наличиe в текущем
каталоге файла с константами РАТАН-600
ratan.const для расчета диаграммы направленности.
При его отсутствии запускается программа rat, которая
создает его по умолчанию.
Дальше программа fgr спрашивает:
Page 11 (printed 18/04/96)
FGR(1) FGR(1)
если по оси ординат отложены градусы Кельвина
noise level (mK) ?
Уровень шума в мК ?
если по оси ординат отложены другие единицы, то
noise level (...) ?
где вместо ... подставятся соответствующие единицы.
Фактически, уровень шума здесь означает наименьшую
амплитуду, ниже которой аппроксимация набором диаграмм
происходить не будет. Если после задания этого вопроса
сразу набрать , то вычислений производиться не
будет, и пользователь сразу попадет в исходное меню.
Для аппроксимации набором диаграмм необходимо наличие в
системе программы вписывания диаграмм beamap (см. подробнее
описание beamap(1)), расчета диаграммы направленности
РАТАН-600 bp1 (см. bp1(1)), работы с базой данных
констант РАТАН-600 rat (см. rat(1)).
При работе программа реагирует на ошибки так же, как
и при вычислении фона (см. выше).
После вписывания диаграмм программа на текущее изображение
накладывает картинку с результатами аппроксимации, после
чего задает вопрос :
output output beam fitting curve ( y/n,N [n] ) ?
Вывод кривую со вписанными диаграммами ? (по умолчанию 'нет').
При утвердительном ответе программа запрашивает имя файла
вывода, предлагая по умолчанию fgr.data. При выводе
формируется F-файл с результатами вписывания. Параметры
вписанных диаграмм записывается в текстовый файл fgr.log,
при этом, если файл уже существует, запись производится в
конец файла. Запись параметров диаграмм в файл fgr.log
можно отменить, если в качестве ответа на предыдущий вопрос
ввести символ 'N'.
Создаваемые в процессе работы программы beamap,
которая вызывалась программой fgr, файлы с диаграммой и
базой данных РАТАН-600 удаляются по умолчанию. Для того
чтобы сохранить эти файлы, надо перед вызовом
программы fgr выполнить следующую команду
для оболочки csh:
setenv BEAMFIT KEEP
для оболочки sh:
BEAMFIT=KEEP; export BEAMFIT
------//------------//---FCONVL-----//--------------//--------
При входе пользователя в пункт 'Fconvl' высвечивается меню
третьего уровня :
______________________________________________________________________
| |
| Conv Conv/p2 Inv.cnv Crs-cor sin(x)/x Gs Pars Put_m - Out Ret Exit |
| ________________________________________________________|
| convolution |
|______________|
где соответствующие комментарии означают :
convolution - свертка (нормированная на
интеграл под диаграммой),
Page 12 (printed 18/04/96)
FGR(1) FGR(1)
convolution normalized to sum of sq. b/p - свертка,
нормированная на интеграл
от квадрата диаграммы,
convolution with inverted pattern - свертка с диаграммой,
считанной в обратном порядке,
cross-correlation - кросс-корреляция,
convolution with sin(x)/x - свертка с функцией sin(x)/x,
convolution with gaussian - свертка гауссианой,
setting parameters for convolution - установка параметров
для свертки,
no overplot for result - не выводить картинку поверх
предыдущей,
put result into memory - записать результат в память
(чтобы с ним можно было
работать, не загружая новый
файл),
result output - вывод результата в F-файл,
return to the previous menu - выход в предыдущее меню,
return to the main menu - выход в главное меню.
При входе пользователя в первые три пункта 'Conv', 'Conv/p2'
и 'Inv.cnv' программа задает вопрос:
name of file with pattern?
имя файла с диаграммой ?
После ввода имени файла программа производит свертку и
выводит результат в текущее окно.
При входе пользователя в четвертый пункт 'Crs-cor' программа
задает вопрос :
name of file ?
имя файла ?
После ввода имени файла программа вычисляет кросс-корреляцию
и выводит картинку с результатом, затирая текущее изображение
в случае, когда в меню пункт '-'. Когда в текущем меню пункт
'+', новая картинка накладывается на старое изображение.
Для работы с этими пунктами в системе должна присутствовать
программа 'fconvl'.
При входе в пятый и шестой пункты ('sin(x)/x' и 'Gs'
соответственно) программа производит свертку с функцией
sin(x)/x либо гауссианой, которые генерируются программой
'fpatt'. При этом количество точек в создаваемом образце будет
равно количеству точек в загруженном файле. Изменить
количество точек можно войдя в пункт 'Pars' текущего
меню. Если у текущего файла отсутствует в шапочке
ключевое слово FWHM или значение его равно нулю, то
программа задает вопрос:
half power beam width (t.sec) ?
размер ширины по половинной мощности ?
Этот параметр необходим при генерации соответствующих
шаблонов для сверток.
Для работы с этими пунктами в системе должны присутствовать
программы 'fpatt' и 'fconvl'.
При входе в седьмой пункт 'Pars' программа высвечивает
под-меню:
____________________________________
| |
| File_BP FWHM P_num Return Exit |
| ___________|
| file with beam pattern |
|________________________|
где соответствующие комментарии означают:
file with beam pattern - ввести имя файла с шаблоном для
свертки;
half power beam width - ввести размер диаграммы направленности
по половинной мощности
number of points for pattern - ввести количество точек для
генерируемого шаблоны
return to the previous menu - выход в предыдущее меню
return to the main menu - выход в главное меню
В первых трех пунктах программа устанавливает параметры
файлов и данных для свертки.
При входе в восьмой пункт '-' программа меняет режим
вывода результата: новый график будет накладываться на
предыдущий в старом масштабе. После выхода из пункта
знак '-' в имени пункта поменяется на '+'. Аналогично
после входа в пункт '+' знак поменяется на '-' и
предыдущий график будет затираться.
При входе в пункт 'Put_m' программа загружает результат в
память, старый массив в памяти при этом затирается.
При входе в пункт 'Out' программа выводит результат в F-файл,
предварительно задавая вопрос: filename ? (fgr.data) .
При входе в пункт 'Ret' программа выходит в предыдущее
меню.
При входе в пункт 'Exit' программа выходит в главное меню,
при этом изображение затирается и загружается текущая картинка
из памяти машины.
------//------------//----FOUR------//--------------//--------
В пункте 'Four' меню 'Math' программа позволяет вычислять
энергетический спектр Фурье записи, распределение фазы, а
также удалять ненужные гармоники из Фурье-спектра.
При входе в этот пункт высвечивается следующее меню:
_________________________________________________________________
| |
| Fourier_sp Phase Four_cut Freq_del Put_m Out Return Exit |
| ______________________________________|
| power Fourier spectrum |
|__________________________|
где соответствующие комментарии означают:
power Fourier spectrum - вычисление энергетического
Фурье-спектра,
phase distribution - вычисление распределения
фазы,
cutting off frequencies manually - удаление частот вручную,
delete frequencies - удаление частот численным
заданием границ,
result output - вывод результата в F-файл,
put result into memory after F-cut - записать результат в
память после удаления частот
(чтобы с ним можно было
работать, не загружая новый
файл),
return to the previous menu - выход в предыдущее меню,
return to the main menu - выход в главное меню.
При входе в пункт 'Fourier_sp' программа вычисляет
энергетический спектр Фурье и строит его график на
экране.
При входе в пункт 'Phase' программа вычисляет
распределение фазы в спектре Фурье и строит его график на
экране.
При входе в пункт 'Four_cut' программа вычисляет
энергетический спектр Фурье, строит его график на
экране и ожидает ввода частот. При этом в центре экрана
высвечивается курсор в виде стрелки, а под графиком
высвечивается подсказка:
use symbols '>' & '<' to move;^U:up;^D:down;Q:exit;C:cut+exit;R:rubber
M(after R):measure; 1,2-set bounds 1&2 regime; 0-switch off set regime
что означает:
использовать клавиши-стрелки для движения, а также
TAB : для движения вправо,
^B : для движения влево,
^U : для движения вверх,
^D : для движения вниз,
1 : для установки первой границы интервала удаления
пространственных частот,
2 : для установки второй границы интервала удаления
пространственных частот,
0 : для отключения режима установки границ,
клавиши '<' и '>' : для движения по записи в обоих
направлениях; если перед работой с помощью этих
клавишей были набраны сисмволы 1 или 2, то будет
происходить установка одной из границ интервала
удаления простанственных частот,
клавиши '+' и '-' : для увеличения и уменьшения текущей
скорости движения курсора по записи с помощью
клавишей '<' и '>' в два раза,
D : для установки шага движения с помощью клавишей
'<' и '>'. При нажатии этой клавиши задается вопрос:
"step ?". Ввод необходимо производить в единицах
оси X. Например, в случае временного ряда - в
секундах времени.
Q : выход в исходное меню без удаления отмеченных частот,
С(A): выход в исходное меню с удалением отмеченных частот,
R : включение резинки (см. описание работы для ключа
'-l'),
M : измерение расстояний между точкой, помеченной
клавишей 'R' и текущим значением. Расстояния по
осям абцисс и ординат выдаются в соответствующих
единицах в левом верхнем углу,
W : текущее значение массива данных. Выдается текущее
значение элемента массива данных.
При нажатии клавиши 5, расположенной среди клавишей-стрелок,
происходит уменьшение шага передвижения с помощью стрелок,
при повторном нажатии - возврат к исходному шагу.
При нажатии любой другой клавиши, например , в правом
верхнем углу высвечиваются текущее значение по оси ординат
и расстояние от начала записи по оси абцисс в соответствующих
единицах.
Ввод частот осуществляется нажатием клавишей '1' или '2'.
При нажатии одной из этих клавишей на экране появляется
вертикальный бар (прямая линия), который передвигается
по экрану с помощью клавишей-стрелок или мышки с целью
выбора частоты (при этом, если набрана цифровая клавиша '1'
- происходит установка первой частоты, если клавиша '2' -
установка второй частоты).
После установки граничных частот необходимо набрать
символ 'C' для их удаления; причем выполнение операции
с помощью ввода символа 'C' будет осуществлено только
при вводе обеих частот. Ввод одной частоты можно
произвести с помощью символа '^A' (cntrl-A) или просто 'A'.
При этом если введена только первая частота (символ '1'),
то будут удалены все частоты ДО КОНЦА от текущего
значения введенной частоты, если введена только вторая
частота (символ '2'), то будут все частоты ОТ НАЧАЛА
до текущей частоты.
При входе в четвертый пункт 'Freq_del' производится ввод
границ частот для удаления с помощью клавиатуры. При входе
в этот пункт программа задает вопросы:
first frequency, Hz (default: 0.) ?
первая граница удаляемых частот в Гц (по умолчанию - 0) ?
second frequency, Hz (default: oo) ?
вторая граница удаляемых частот в Гц (по умолчанию
- бесконечность) ?
Если введена только первая частота, то будут удалены
все частоты ДО КОНЦА от текущего значения введенной
частоты, если введена только вторая частота, то будут
все частоты ОТ НАЧАЛА до текущей частоты.
Если не введены обе частоты, то программа ничего делать
не будет.
Для работе в этом пункте необходимо присутствие в системе
программы ftcalc.
При входе в пункт 'Put_m' программа загружает результат,
полученный после обращения Фурье-спектра после удаления
частот этого спектра (т.е. после работы в пп. Four_cut
или Freq_del), в память; старый массив в памяти при этом
затирается.
При входе в пункт 'Out' программа выводит результат в F-файл,
при этом задается вопрос : filename ? (fgr.data) .
При входе в пункт 'Return' программа выходит в предыдущее
меню.
При входе в пункт 'Exit' программа выходит в главное меню,
при этом изображение затирается и загружается текущая картинка
из памяти машины.
Количество элементов в Фурье-образе может превышать
количество элементов в исходном массиве, так как вычисляется
быстрое преобразование Фурье (где длина массива равна 2 в
степени n). Для работы в этом пункте 'Four' необходимо
наличие в системе программы вычисления Фурье-преобразования
four (автор В.Н.Черненков), программы интерактивной
графической работы с Фурье-спектрами записей fgfour
и программы ftcalc.
Обновить картинку на экране можно, войдя в пункт 'Exit'.
------//------------//---FCALC------//--------------//--------
При входе пользователя в пункт 'Fcalc' меню 'Math'
высвечивается меню третьего уровня :
_________________________________________
| |
| Vector Scalar Return Functions Exit |
| _____________________|
| vector operations |
|___________________|
где соответствующие комментарии означают :
vector operations - векторные операции,
scalar operations (work with constant) - скалярные,
операции или работа с
константой,
functional operations over vector - функциональные операции
над векторами,
return to the previous menu - выход в предшествующее
меню,
return to the main menu - выход в главное меню.
Здесь первые два пункта - заголовки меню четвертого уровня.
------//------------//----VECTOR----//--------------//--------
При входе в пункт 'Vector' высвечивается следующее меню :
____________________________________________________________________
| |
| Aver R.aver Key Sum Diff Mult Compr Put_m Out Return Exit |
| ___________________________________________________|
| simple average |
|_________________|
где соответствующие комментарии означают :
simple average - простое осреднение,
robust average - робастное осреднение,
key for average (with bgd subtraction or without) - ключ
для включения и выключения
вычитания фона при осреднении,
simple sum - простая сумма файлов,
difference - разность двух файлов,
multiplication - векторное произведение,
compress - сжатие файла,
put result into memory - запись результата в память,
result output - вывод результата в F-файл,
return to the previous menu - выход в предыдущее меню,
return to the main menu - выход в главное меню.
При входе в пункты 'Aver', 'R.aver', 'Sum' программа
задает вопрос : name of file (name, ^O) ? (имя файла для
ввода).
Можно ввести либо имя, либо изменить режим ввода файлов. При
вводе кода ^O (cntrl-O) и последующего нажатия <ВК> программа
fgr включает режим визуализации вводимого файла и повторяет
вопрос (см. следующий абзац).
При осреднении текущий файл программой уже учтен. После ввода
имени программа проверяет наличие этого файла на диске и
после поиска файла повторяет вопрос об имени файла, выдавая
сообщение о количестве введенных имен файлов:
(you have ... files) next one ? (name,^G,^L,^N,^O)
Вместо ... будет выведено текущее количество введенных имен
файлов, включая последнее.
Имя name может включать в себя метасимволы языка shell
'*', '?','[' и ']' (см. подробнее описание sh(1)), позволяющие
вводить групповые имена. Подстановку соответствующих
имен файлов производит команда 'ls', которой в этом
случае передается управление.
Существует возможность просмотра списка имен файлов и
содержащихся в них данных (последних - в графическом режиме).
При вводе кода ^L (cntrl-L) вместо имени файла программа
выходит из графического режима и передает управление
системным утилитам 'ls' и 'more' для просмотра списка
введенных имен (на самом деле исполняется команда
'ls -CF список_имен_файлов | more'). При завершении
работы этой команды программа fgr переходит в графический
режим и повторяет предыдущий вопрос.
При вводе кода ^G (cntrl-G) и нажатии программа
передает управление программе fgfew (см. fgfew(1)),
которая позволяет одновременно разрисовывать данные
Page 16 (printed 18/04/96)
FGR(1) FGR(1)
файлов друг под другом. В данном случае программа
выводит по 6 картинок и для перехода к следующей
серии необходимо нажать <ВК>.
При вводе кода ^G (cntrl-G) и нажатии пользователь
может отменить ввод последнего имени файла (только
если оно не введено с помощью метасимволов языка shell.
См. выше).
Последовательность ^O (cntrl-O) и <ВК> переключает режим
визуализации/невизуализации (см.выше) данных вводимых
файлов.
Если файл не существует в данном каталоге, программа выдаст
сообщение:
This file doesn't exist ( этот файл не существует) .
Для окончания ввода имен файлов на запрос : "name of file ?"
следует нажать клавишу возврата каретки.
При осреднении ( пункты 'Aver' и 'R.aver' ) программа
может либо вычитать, либо не вычитать фон в зависимости от
установки ключа в пункте 'Key'. Для работы с осреднением
и сложением необходимо наличие в системе программы aver.
Эта программа написана на языке управления заданиями оболочки
shell и использует программы (которые, следовательно, тоже
должны находится в системе) вычитания фона bgdn (автор
Б.Л.Ерухимов), калькулятора для F-файлов fcalc (автор
В.С.Шергин), обрезания F-файлов fcut (автор М.Л.Моносов),
робастного осреднения файлов ravr (автор Б.Л.Ерухимов), и
определения, является ли данный файл F-файлом, fmod.
В пункте 'Key' пользователь может установить правило
вычисления осреднения. При входе в этот пункт на экране
высвечиваются подсказка и вопрос :
keys: -1 -av:bgd_off,rav:bgd_on; 0-bgd subtr.off; 1-bgd subtr.on;current=..
key (current) ?
что означает :
ключ = -1 - установка по умолчанию : для простого
осреднения вычитания фона не происходит,
для робастного - происходит.
ключ = 0 - отключить вычитание фона,
ключ = 1 - подключить вычитание фона,
current=.. - выдача текущего значения ключа (вместо ..
будет подставлено текущее значение).
Далее программа запрашивает новое значение ключа, предлагая
по умолчанию текущее.
Если пользователь работает с окном, не равным по длине всему
файлу, то при осреднении и суммировании будет запускаться
программа fcut, устанавливая для суммируемых файлов те же
границы, что и у текущего окна.
При входе в пункт 'Diff' программа задает вопрос :
name of another file ?
имя второго файла ?
Page 17 (printed 18/04/96)
FGR(1) FGR(1)
После ввода имени файла с помощью программы fcalc вычитает
из первого файла второй.
При входе в пункт 'Mult' программа задает вопрос :
name of another file ?
имя второго файла ?
И после ввода имени файла произведет векторное перемножение
файлов.
При входе в пункт 'Compr' программа задает вопрос :
compression coefficient ?
коэффициент сжатия ?
После ввода коэффициента программа fgr запускает программу
робастного сжатия cmprs (автор Б.Л.Ерухимов) и накладывает
картинку с полученным результатом на текущее изображение.
При входе в пункт 'Put_m' программа записывает результат
в память, затирая при этом старые данные, находящиеся в
памяти машины. Операция не производится после выполнения
сжатия из-за изменения длины массива.
При входе в пункт 'Out' программа выводит результат в F-файл
(см. предыдущие пункты 'Out' ).
При входе в пункт 'Return' программа выходит в предыдущее
меню.
При входе в пункт 'Exit' программа выходит в предыдущее
меню, обновляя при этом картинку.
------//------------//----SCALAR----//--------------//--------
При входе в пункт 'Scalar' предыдущего меню высвечивается
меню четвертого уровня :
____________________________________________________________________
| |
| Add Subtr Multip Divis Norm Power Put_m Out Return Exit |
| ____________________________________________________|
| add constant |
|_______________|
где соответствующие комментарии означают :
add constant - прибавить константу ко всем
элементам массива,
subtract constant - вычесть константу из всех
элементов массива,
multiply by constant - домножить на константу все
элементы массива,
divide by constant, normalization - деление на константу
всех элементов массива, нормализация,
Normalization - нормализация
Power constant - возвести в степень константы
все элементы массива,
put result into memory- записать результат в память,
result output - вывести результат,
return to the previous menu - выход в предыдущее меню,
return to the main menu - выход в главное меню.
При входе в пункты 'Add' и 'Subtr' программа задает вопрос
в случае, когда по оси ординат Кельвины (или
миллиКельвины) :
constant (mK) ?
постоянная в мК ?
в случае, когда по оси ординат другие единицы :
constant (...) ?
Здесь вместо '...' подставятся текущие единицы значений
массива.
При входе в пункты 'Multip' и 'Power' программа
Page 18 (printed 18/04/96)
FGR(1) FGR(1)
задает вопрос : constant ?
При входе в пункт 'Divis' программа задает вопрос :
constant ('n' - normalize) ?
т.е. если вместо численного значения будет введен символ 'n'
или последовательность 'max', то программа произведет
нормализацию записи на максимум.
Для работы со всеми этими пунктами необходимо наличие в
системе программы fcalc (автор В.С.Шергин) .
При входе в пункт 'Put_m' программа загружает в память
результат вычислений в первых пяти пунктах меню.
При входе в пункт 'Оut' программа задает вопрос :
filename (fgr.data) ?
что означает : имя файла ? (по умолчанию fgr.data).
После ввода имени файла программа создает F-файл под этим
именем и записывает в него результат вычислений.
При входе в пункт 'Norm' программа делит каждый пиксел
записи на максимальное значение на текущем интервале.
При входе в пункт 'Return' программа возвращается в
предыдущее меню.
При входе в пункт 'Exit' программа возвращается в главное
меню, обновляя при этом картинку.
------//------------//--FUNCTIONS---//--------------//--------
При входе в пункт 'Functions' предыдущего меню высвечивается
меню четвертого уровня :
______________________________________________________________________
| |
| exp ln lg Lg power cos sin tg atg Put_m Out Return Exit |
| ________________________________________________________|
| exponenta |
|_____________|
где соответствующие комментарии означают :
exponenta - взять экспоненту от всех элементов
массива,
natural logarithm - взять натуральный логарифм от всех
элементов массива,
decimal logarithm - взять десятичный логарифм от всех
элементов массива,
decimal logarithm with alignment by minimum - взять
десятичный логарифм от всех элементов
массива,
power - возвести в степень все элементы массива,
cosine - вычислить косинус,
sine - вычислить синус,
tangent - вычислить тангенс,
arc tangent - вычислить арктангенс,
put result into memory - записать результат в память,
result output - вывести результат,
return to the previous menu - выход в предыдущее меню,
return to the main menu - выход в главное меню.
Для работы со всеми этими пунктами необходимо наличие в
системе программы fcalc (автор В.С.Шергин) .
При входе в пункт 'Lg' (вычисление логарифма с выравниванием
по минимуму) из каждого элемента массива вычитается минимальное
значение этого массива, добавляется единица и после этого
берется десятичный логарифм.
Page 19 (printed 18/04/96)
FGR(1) FGR(1)
В предыдущем меню (меню третьего уровня) кроме пунктов
'Vector', 'Scalar' и 'Functions' есть пункты 'Return' и 'Exit',
которые работают аналогично описанным выше.
------//------------//-----POL------//--------------//--------
При входе пользователя в пункт 'Pol' меню 'Math'
программа вычисляет в случае, когда текущий файл имеет
параметры Стокса U или Q, степень поляризации и угол
вращения, запрашивая при этом имена файлов с требуемыми
параметрами. ( Пока не реализован.)
------//------------//-----FILT-----//--------------//--------
В пункте 'Filt' меню 'Math' пользователь может запустить
программу фильтр (то есть программу, принимающую данные
из файла стандартного ввода и выдающую результат в файл
стандартного вывода) для работы с F-файлами, имеющуюся в
системе. При входе в пункт программа задает вопрос :
name of filter ?
имя фильтра ?
(Например, фильтры : allan - вычисление трехточечной
дисперсии Аллана, gist - вычисление гистограммы отсчетов.
Список фильтров стандартной системы обработки данных см.
в описании list(1). При запуске фильтра разрешается
использовать ключи. После вычисления на очищенный экран
выдается рисунок с результатом работы и задается вопрос:
output result (y/n [y]) ?
результат выводить ? (по умолчанию 'да').
При утвердительном ответе программа запрашивает имя файла
вывода, предлагая по умолчанию fgr.data :
filename ? (fgr.data).
После ввода имени файла программа создает F-файл с таким
именем. Во время работы фильтра при отсутствии программы-
фильтра в системе, при ошибке во время вычисления или в
случае, когда пользователем был послан сигнал прерывания
с клавиатуры терминала, программа-фильтр не запускается
или прерывает свою работу, выдавая при этом на экран
сообщение:
I can't execute this command
я не могу выполнить эту команду.
Если перед именем программы-фильтра стоит символ '+', то
новая картинка накладывается на текущую картинку; масштаб
при этом не пересчитывается.
Обновить картинку на экране можно, войдя в пункт 'Exit'.
------//------------//-----SHELL-----//--------------//--------
При входе в пункт 'Shell' меню 'Math' программа порождает
оболочку shell. При этом графический режим работы дисплея
отключается и на экране появляется символ '$' (подсказка
оболочки shell). При этом пользователь может выйти на другии
линии, либо выполнить системные утилиты или команды shell.
Выход из оболочки осуществляется командой 'exit' или '^D'.
После выхода из shell подключается графический режим
работы, и загружается текущая картинка.
При входе в пункт 'Exit' меню 'Math' пользователь попадает
в главное меню, при этом, если он работал с пп. 'Fconvl',
'Four', 'Fcalc', 'Filt', картинка обновляется.
------//------------//-------GR------//--------------//--------
При входе в пункт 'Gr' главного меню программа при отсутствии
файла fgr.pl создает его, либо при наличии - дописывает в
конец текущую картинку в формате PLOT, после чего файл
fgr.pl можно разрисовать программой graphic (см. описание
graphic(1) ).
------//------------//-----NEXT------//--------------//--------
При входе в пункт 'Next' главного меню программа переходит к
следующему файлу по списку, не выходя из режима 'prad'.
------//------------//-----OUTPUT----//--------------//--------
При входе в пункт 'Outp' главного меню программа
высвечивает новое меню:
_______________________________________________
| |
| Whole Cur_int Return |
| ________________________|
| Whole file output |
|______________________|
где соответствующие комментарии означают :
Whole file output - вывод всего файла
Current interval output - вывод текущего окна в
отдельный файл
Return to previous menu - возврат в исходное меню.
Если требуется вывод всего файла, то задается вопрос:
filename ? (....)
имя файла для вывода, где в скобках по умолчанию
- имя текущего файла.
Если вывод только окна, то в скобках имя файла по умолчанию
fgr.data:
filename ? (fgr.data)
------//------------//-----INPUT-----//--------------//--------
При входе в пункт 'Inp' программа задает вопрос :
filename (or cntrl-L) ?
После ввода имени файла программа fgr загружает файл с
введенным именем, а не следующий по списку.
Если вместо имени файла набрать код '^L' (cntrl-L)
или символ '*' или нажать третью клавишу мышки MB3,
то программа загружает на экран список
файлов текущего каталога и позволяет отмечать требуемый
файл нажатием символа 'y', клавиши или первой клавиши
мышки. Второе нажатие отменяет отмеченный файл. Движение
совершается с помощью мышки или клавишей-стрелок. Выход
из этого режима производится нажатием клавишей 'q', 'Esc'
или третьей клавиши-мышки.
------//------------//------DELETE----//--------------//--------
При входе в пункт 'Del' программа задает следующий вопрос :
You want to delete file ... , don't you ?
Вы хотите удалить файл ... , не так ли ?
(Вместо '...' подставляется имя текущего файла)
Только после ввода слова, начинающегося на букву 'y' ('yes'),
произойдет удаление текущего файла; после чего программа
переходит к следующему файлу по списку.
------//------------//-------SH------//--------------//--------
При входе в пункт 'Sh' программа порождает оболочку shell.
При этом графический режим работы дисплея отключается и
на экране появляется символ '$' (подсказка оболочки shell).
При этом пользователь может выйти на другии линии, либо
выполнить системные утилиты или команды shell.
Выход из оболочки осуществляется командой 'exit' или '^D'.
После выхода из shell подключается графический режим
работы, и загружается текущая картинка.
------//------------//-----REFR------//--------------//--------
При входе в пункт 'Refr' программа 'fgr' перерисовывает
экран.
------//------------//----PRAD_OFF---//--------------//--------
При входе в пункт 'Pr_off' программа перезагружает текущий
файл из списка, выходя при этом из режима 'prad' (см. ключ
-s).
Page 21 (printed 18/04/96)
FGR(1) FGR(1)
ЗАМЕЧАНИЯ
1) При наличии ключей -s или -p программа fgr на
графопостроителе или принтере не рисует.
2) Если пользователю не нравятся текущие цвета, то
находясь в одном из меню и нажимая клавишу ' ', он
может выбрать более приятное для него сочетание
или делая переустановки цветов в файле '.fgrrc'.
3) Для того, чтобы нарисовать картинку на графопостроителе
или принтере типа EPSON или записать ее на PostScript
языке, необходимо сначала создать PLOT-файл, с
графическими командами, используя ключ '-P'.
Далее, воспользовавшись командой plgr, картинку можно
можно перевести в коды графопостроителя Hewlett Packard
и вывести на плоттер.
Или с помощью этой же команды перевести ее на
PostScript язык, что позволит в дальнейшем выводить
ее на стандартные принтеры и в различные форматы.
Набор команд для вывод на графопостроитель будет
выглядеть так:
fgr file1 file2 ... -P
plgr -d hp fgr.pl > fgr.hp
cat fgr.hp > /dev/hp
где /dev/hp - примерное логическое имя графопостроителя,
или короче без промежуточных файлов:
fgr file1 file2 .. -P- | plgr -d hp > /dev/hp
Для вывода на стандартный лазерный принтер необходимо
использовать следующий набор команд:
fgr file1 file2 ... -P
plgr fgr.pl > fgr.ps
cat fgr.ps > /dev/lp
Для вывода на принтер типа EPSON необходимо
использовать следующий набор команд:
fgr file1 file2 ... -P
plgr fgr.pl > fgr.ps
gs -sDEVICE=epson -sOutputFile=fgr.eps fgr.eps < /dev/null
cat fgr.eps > /dev/lp
где gs - утилита системы UNIX для работы с файлами,
содержащими команды на языке PostScript.
4) Записывая в графический файл, следует иметь ввиду, что
программа fgr дописывает в конец существующего файла,
т.е. если PLOT-файл уже существует, то вся предыдущая
информация у него сохраняется, что может повлечь
вывод ненужных картинок. Графический файл в этом
случае надо удалять, либо вводить имя другого
графического файла с ключом '-P'.
ФАЙЛЫ
.fgrrc /usr/local/FADPS/lib/fgrrc
fgr.pl fgr.log fgr.data
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ
allan(1), aver(1), beamap(1), bgd(1), bgdn(1),
bp1(1), cmprs(1), fadps(1), fcalc(1), fconvl(1),
fcut(1), fgfew(1), fgfour(1), fgpol(1), fgrP(1),
ffile(5), flist(1), fmod(1), four(1), fpatt(1),
gauss(1), gist(1), gra3(1), graphic(1), plgr(1),
plsimp(1), trend(1), rat(1), ravr(1), rflex(5),
rtnsp(1), xplot(3)
АВТОР
Верходанов О.В.
ВЕРСИЯ
2.2
Back to Handbook