← Назад

Построение траекторий частиц.

Drawing particle trajectories.

PartTraj PEP-клиент


Назначение.

Решаемые задачи и метод.

Программа предназначена для рисования двумерных диаграмм поляризации волнового поля дволь указанного годографа. Например, программа может построить графики пар компонент XY, XZ, ZY. Диаграммы компонент быть произвольными.

Программа обеспечивает постраничное формирование черно-белых рисунков в формате PostScript. Пользователь может выбирать размер страницы ISO (A4, A3, A2, A1, A0) и по американским правилам (Letter, Legal, Tabloid). Расположение и размер диаграмм таков, что они полностью заполняют страницу.

Программа обладает возможностью выбирать входные трассы по типу прибора. Пользователь имеет возможность выбрать глубинные, наземные, контрольные или вспомогательные трассы.

Имеется возможность рисования диаграмм поляризации для всех трасс указанного типа или в заданном диапазоне кабельных глубин или перечисленных кабельных глубин.

Выходом программы является многостраничный файл формата PostScript, готовый в выводу на принтер (плоттер).

Взаимодействие с другими программами.

Выходной файл формата PostScript можно просмотреть с помощью программ эмуляции PostScript (например, ghostscript, ghostview, gv).

Файл может быть загружен в программы, предназначенные для работы с векторной графикой (например, CorelDRAW, Adobe Illustrator). В этом случае пользователь имеет возможность редактирования рисунков.

Программа является PEP-клиентом, то есть, она запускается из-под оболочки пакетного запуска pktexec, предоставляющей сервис по заданию параметров, управлению выполнением и просмотру протокола работы программы.


Описание.

Сеанс работы.

Задание параметров и запуск программы происходит из-под оболочки пакетного запуска pktexec. Типовой сеанс работы состоит из следующих важных шагов:

  1. Запуск программы из меню пакета UNIVERS (Polarization processing -> Drawing particle trajectories).
  2. Задание проекта, в каталоге данных которого находится исходная модификация (пункт меню File -> Project...).
  3. Выбор исходной модификации сейсмических трасс для анализа поляризации (параметр Input modification).
  4. Задание годографа, вдоль которого будет проводится анализ (параметр Hodograph of begin time) и ширины окна анализа (параметр Width along hodograph, ms).
  5. Задание пути и имени файла, в который будут записаны диаграммы поляризации. (параметр Output picture file). По умолчанию файл записывается в каталог изображений текущего проекта, подготовленных к выводу на принтер (HCOPIES).
  6. Задание пар компонент для вывода на двумерных диаграммах поляризации (параметр Coordinate axes).
  7. Выбор способа нормировки границ осей (параметр Normalization method).
  8. Необязательное задание интервалов изображения траекторий на двумерных диаграммах поляризации (параметр Global normalization for axes).
  9. Выбор трасс для анализа (параметры Way to select traces, List of cable depths, Range of cable depths).
  10. Запуск программы на выполнение (кнопка Start в панели инструментов или пункт меню PartTraj -> Start).
  11. Пользователь может следить за ходом работы программы по прогресс-индикатору на панели выполнения.
  12. После успешного завершения программы программа должна вернуть код 0, в информационых строках не должно быть сообщений об ошибках и в панели результатов (Results) должны присутствовать: число страниц, сформированных программой, и имя выходного файла.
  13. Для просмотра протокола прохождения программы надо нажать кнопку View log в панели инструментов или выбрать пункт меню PartTraj -> View log. В протоколе содержится информация о сформированных заголовках.
  14. Для выхода из среды пакетного запуска нужно нажать кнопку Exit в панели инструментов или выбрать пункт меню File -> Exit.


Параметры обработки.

Входные параметры (панель Parameters).

Input modification
Входная модификация (inmod)
Многокомпонентный сейсмический файл.
Coordinate axes
Группы компонент (cgroups)
Перечень пар компонент, разделенных пробелами, запятыми или точками с запятыми. Каждая пара рисуется на одной диаграмме, причем первая компонента в паре рисуется по горизонтальной оси,а вторая - по вертикальной.

Пример: XY XZ ZY

Если указаны компоненты, отсутствующие на некоторой глубине, то диаграмма для этой пары не рисуется.

Normalization method
Способ нормировки границ изображения траектории (normway)
Имеются три вида нормировки:
  • Automatic - каждая компонента нормируется по максимальной амплитуде
  • Global - можно задать единый масштаб для всех глубин
  • Per depth - на каждой глубине определяется максимальная амплитуда
Global normalization for axes
Глобальные пределы по компонентам (climits)
Перечень плавающих чисел, раделенных пробелами, запятыми или точками с запятыми. Каждое число задает предел изображения соответствующей компоненты. Например, для компонент XY XZ ZY массив чисел может выглядеть так:

Пример: 0.2 0.1 0.2 0.5 0.5 0.1

Это значит, что все траектории в плоскости XY будут изображаться в пределах X:[-0.2 0.2], Y:[-0.1 0.1], в плоскости XZ в пределах X:[-0.2 0.2], Z:[-0.5 0.5], в плоскости XZ в пределах X:[-0.5 0.5], Y:[-0.1 0.1].

Если чисел введено меньше, чем перечислено компонент, недостающие пределы будут получены автоматически для каждой трассы. Следует отметить, что в этом случае пределы изображения для разных трасс будут различаться.

Hodograph of begin time
Годограф, вдоль которого проводится анализ (hodogr)
Годограф сопоставляется с сейсмическим файлом по кабельной глубине (HCAB). Это значит, что если кабельная глубина некоторой трассы отсутствует в годографе, то данная глубина пропускается в процессе рисования диаграмм.
Analysis window width, ms
Ширина окна анализа вдоль годографа, мс (hwidth)
Geophone type
Тип прибора (gtype)
Пользователь имеет возможность выбора типа анализируемых трасс. Эта возможность полезна если в сейсмическом файле присутствуют много типов трасс.

Альтернативы:

Any
- без различия типов трасс
Depth
- только трассы глубинных приборов
Control
- только контрольные трассы
Auxiliary
- только вспомогательные трассы
Surface
- только трассы наземных приборов
Way to select traces
Способ выбора трасс (hcabway)
Имеется возможность выбора диапазона трасс по кабельным глубинам:
All
- все трассы
List of cable depths
- перечисленные кабельные глубины
Range of cable depths
- диапазон кабельных глубин
List of cable depths
Список кабельных глубин (hcab_list)
Список кабельных глубин, для которых будут нарисованы диаграммы поляризации. Обрабатывается программой в случае задания соответствующего способа выбора трасс.

Пример: 100.1, 175.1, 400.3

Range of cable depths
Диапазон кабельных глубин (hcab_range)
Диапазон кабельных глубин, для которых будут нарисованы диаграммы поляризации. Обрабатывается программой в случае задания соответствующего способа выбора трасс.
Page size
Размер страницы (pagesize)
Размер страницы ISO (A4, A3, A2, A1, A0) и по американским правилам (Letter, Legal, Tabloid). Расположение и размер диаграмм таков, что они полностью заполняют страницу.
Output picture file
Выходной файл картинки (outfile)
Файл формируется в формате PostScript. Файл можно вывести на принтер или плоттер, поддерживающий этот формат, а также с помощью программных эмуляторов PostScript практически на любой принтер. Для предварительного просмотра файла можно воспользоваться программами ghostscript, ghostview, gv. Файл может быть загружен в программы векторной графики (например, CorelDRAW и Adobe Illustrator) для дополнительного оформления.


Информация времени работы программы (панель Runtime).

Stage of processing
Стадия обработки данных (stage)
Processing rate
Степень завершения работы (runner)


Параметры результатов (панель Results).

Output picture file
Выходной файл картинки (outfile)
Number of pages on output
Количество страниц на выходе (outpages)


Пользовательский интерфейс.

Для детального ознакомления с пользовательским интерфейсом оболочки пакетного запуска, смотри описание программы pktexec. Ниже приводится пример окна оболочки с активной панелью ввода параметров:


Входные данные.

Трассы.

Входом программы является одна модификация сейсмических трасс пакета UNIVERS.


Выходные данные.

Прочие данные.

Выходом программы является файл формата PostScript. Этот файл может быть распечатан с помощью принтера или плоттера, обладающего поддержкой PostScript, а также с помощью программного эмулятора PostScript.

Пример диаграмм поляризации приводится на рисунке:

На диаграмме изображены в заданных пользователем проекциях траектории частиц на одной глубине. Приводится также диапазон анализа по трассе (Analysis window) и масштаб изображения амплитуд (Scale). Оси подписаны нормированными значениями, близкими к единице. Наклонная прямая обозначает направление поляризации 45 градусов.

Стрелки и кружки обозначают отсчеты, причем кружки обозначают каждый пятый отсчет начиная с первого. Направление стрелок указывает движение по траектории.


Требования к окружению.

Операционное окружение.

Программа получает имя рабочего проекта через переменную среды PROJECT. В случае запуска программы из-под оболочки, это условие выполняется путем выбора рабочего проекта.

Программа определяет местонахождение системных файлов пакета из переменной VSPHOME, определенной в профиле пользователя или в файле setup в домашнем каталоге пользователя пакета. В файле setup данная переменная может выступать также под именем VSP.


Используемые файлы.

Программа ищет описание параметров в файлах $VSPHOME/etc/PartTraj.pep и $VSPHOME/etc/vsp.pep

В домашнем каталоге пользователя должен присутствовать файл setup, содержащий пути к каталогам данных, заданий и протоколов прохождения проектов, а также пути к системным файлам пакета UNIVERS.

Программа загружает умолчательные значения параметров из специальных файлов в следующем порядке:

  1. $VSPHOME/app-defaults/PartTraj.parameters.def - общесистемный каталог умолчательных значений параметров.
  2. JOBS/$PROJECT/PartTraj.parameters.def - каталог заданий текущего проекта.
  3. $HOME/.vsp/PartTraj.parameters.def - каталог пользовательских настроек.

Таким образом, пользовательские настройки имеют приоритет над общесистемными и проектными.


Прочие требования.

Прочие требования накладываются оболочкой пакетного запуска pktexec.


Сообщения пользователю.

Способ доведения сообщений до пользователя.

Все сообщения выводятся в стандартный поток ошибок. В случае запуска программы из-под интерактивной оболочки сообщения сохраняются в файле протокола прохождения задания LOG/$PROJECT/PartTraj-#.log. Сообщения классов серьезности FATAL и ERROR помещаются по завершении работы программы в область сообщений интерактивной оболочки.


Описание информационных сообщений.

Программа создает подробный протокол своей работы, позволяющий уточнить подробности.

Ниже приводится пример протокола прохождения с комментариями.

INFO: Job number is 8. INFO: Developer's level of the session is 1. INFO: Start of PartTraj application. INFO: Version: 3 INFO: Project: TEST2 INFO: Moment: 2002/05/29 15:37:35
Типовой заголовок протокола работы программы с указанием имени приложения, его версии, проекта и времени.
INFO: Adding 'XY' component group. INFO: Adding 'YZ' component group. INFO: Adding 'XZ' component group.
Заданные пользователем группы компонент.
INFO: 8 unique cable depths were found.
Программа обнаружила в файле указанное количество различных кабельных глубин трасс.
INFO: Cable depth 5600.1: INFO: - hodograph time 879.511 ms. INFO: - samples to draw: 879 .. 899 INFO: X: |A|max=0.0789071, Y: |A|max=0.103483 INFO: Y: |A|max=0.103483, Z: |A|max=0.12701 INFO: X: |A|max=0.0789071, Z: |A|max=0.12701
Для указанной кабельной глубины найдено время годографа, оно преобразовано в отсчеты на трассе, в этом диапазоне найдены максимальные по модулю амплитуды компонент.
INFO: End of PartTraj application. INFO: Moment: 2002/05/29 15:37:37
Метка окончания задания с указанием времени.


Описание диагностических сообщений.

Список кодов и идентификаторов ошибок (обозначаемых ниже ERROR_IDENT), начинающихся с "ERROR__" приводится в документе Коды ошибок программ пакета UNIVERS.

ERROR: Can't open input mod 'Sxxx': ERROR_IDENT.
ERROR: Can't open hodograph 'VSP.x.x.FBINFO.x': ERROR_IDENT.
ERROR: Can't create output file '/xxx/xxx.ps': error description
Ошибки при доступе к указанным файлам.
ERROR: Unknown way to select traces 'hcabway'=N.
Ошибка при установке программы.
ERROR: No traces of speficied cable depths were found.
Программа не обнаружила ни одной трассы на заданных пользователем глубинах.
ERROR: Can't get traces with speficied cable depth: ERROR_IDENT.
ERROR: Can't get list of cable depths: ERROR_IDENT.
Внутренняя ошибка программы - обратитесь к разработчику.
ERROR: No actual traces were found.
ERROR: No actual traces of TYPE='T' were found.
В сейсмическом файле не оказалось ни одной актуальной трассы указанного типа прибора.
INFO: NNN unique cable depths were found.
Найдено указанное количество кабельных глубин.
INFO: Cable depth NNN:"
INFO: - hodograph time TTT ms.
INFO: - samples to draw: I .. J
INFO: Automatic limits X: |A|max=NN.N, Y: |A|max=NN.N
INFO: Final limits X: |A|max=NN.N, Y: |A|max=NN.N
Информация по указанной кабельной глубине. Распечатываются автоматически определенные пределы визуализации траекторий по компонентам и финальные, используемые для рисования траекторий. Они могут различаться, если пользователь вручную указал пределы (смотри параметр Global normalization for axes).
INFO: Adding 'XY' component group.
Программа приняла к сведению указанную группу компонент.
INFO: Default page size is ISO A4
Неизвестный размер страницы или он не задан. По умолчанию программа установит размер страницы A4.
WARNING: - skip group 'XY' due to ERROR_IDENT.
Ошибка при выборке трасс указанной группы компонент.
WARNING: Too much component groups: 'XY' is skipped.
Программа не позволяет отобразить более чем 5 диаграмм поляризации на каждой глубине.
WARNING: Can't add 'XYZ' component group: need two components.
Пользователь указал группу компонент, состоящую из одной или более чем двух букв.
WARNING: Empty list of cable depths: displaying all.
Задан пустой список кабельных глубин. Программа построит в этом случае диаграммы поляризации для всех имеющихся в сейсмическом файле глубин.
WARNING: Can't find hodograph time at HCAB=NNN due to ERROR_IDENT; skipping.
Время годографа для указанной кабельной глудины не найдено. Возможно, в годографе отсутствует точка на этой глубине.
WARNING: Samples are out of allowed range; skipping
Время годографа выходит за пределы полезных времен на трассе.
WARNING: - no traces for group 'XY'; skipping.
На текущей глубине не найдены ни одной трассы с комопнентами указанной группы.
WARNING: - number of traces in group 'XY' is not 2 (=N); skipping
На текущей глубине найдены более чем две трассы с указанными компонентами. Программа не может определить, какие трассы следует анализировать, поэтому диаграмма поляризации не будет построена.


Особенности использования.

При задании пределов визуализации, более узких, чем автоматически определенные (параметр Global normalization for axes), траектория будет выходить за пределы ограничивающего прямоугольника.


Ссылки.

Программы и документы.

Литература и прочие источники.

  • Немнюгин С., Чаунин М., Комолкин А. Эффективная работа: UNIX, СПб.:Питер, 2001 г, стр. 559-619
© ООО Геоверс, 2001-2024