← Назад
FDModel PEP-клиент.
Данная программа реализует двумерное конечно-разностное
моделирование сейсмических волновых полей. При этом
используется явная консервативная конечноразностная схема
для уравнений распространения упругих P и SV волн относительно
вектора мещений.
В качестве параметров программа требует координаты прием-
ников (описанные в заголовках модификациипрототипа),
двумерную модель среды (таблица типа 'DDR2DMOD'),
размеры ространственной ячейки в метрах, шаг дескритизации
по времени, длину сейсмической записи и параметры источника,
включающие его положение в среде (координаты источника
также считываются из входной модификации), амплитуду и частоту
сигнала (источник считается 'взрывом', т.е. сферическим фронтом
для изотропной модели и эллиптическим - в случае
трансверсально-изотропной среды). В результате формируется модификаци
с синтетическими трассами, а также сейсмический файл, содер
жащий снепшоты (в случае указания необходимости
создания).
---
Программа является PEP-клиентом, то есть, она запускается из-под оболочки
пакетного запуска pktexec, предоставляющей
сервис по заданию параметров, управлению выполнением и просмотру протокола
работы программы.
Задание параметров и запуск программы происходит из-под оболочки пакетного
запуска pktexec. Типовой сеанс работы
состоит из следующих шагов:
- Запуск программы из меню пакета ВСП.
- Задание проекта
(пункт меню File -> Project...).
- Задание входных параметров:
- входной модификации-прототипа;
- двумерной скоростной модели среды;
- шагов дискретизации по горизонтальной оси (основной изагущение);
- начала и конца области загущения по горизонтальной оси;
- шагов дискретизации по вертикальной оси (основной изагущение);
- начала и конца области загущения по вертикальнойоси;
- шага дискретизации по времени;
- длительности синтетической трассы;
- шага дискретизации синтетической трассы;
- типа начального импульса;
- амплитуды начального импульса;
- частоты начального импульса;
- имени импульса (в случае задания импульса из сейсмического
файла);
- длины импульса (в случае задания импульса из сейсмического
файла);
- начального и конечного времени записи снепшотов;
- шага записи снепшотов;
- номеров пунктов возбуждения для записи снепшотов;
- типа среды распространения (изотропия - анизотропия);
- расположения источника внутри области моделирования;
- выходной модификации для синтетических трасс.
- выходной модификации для снепшотов.
- Запуск программы на выполнение (кнопка Start в панели инструментов
или пункт меню FDModel -> Start).
- Во время выполнения программы выдается текстовая информационная строка,
сообщающая, какой этап работ выполняется, а также бегунок, показывающий
относительный прогресс выполнения программы.
- Для просмотра протокола прохождения программы надо нажать кнопку View
log в панели инструментов или выбрать пункт меню FDModel -> View
log.
- Для выхода из среды пакетного запуска нужно нажать кнопку Exit в
панели инструментов или выбрать пункт меню File -> Exit.
- "Prototype modification"
- Имя: iwave
Тип: nmod_s
Описание: Шаблонная модификация с сейсмическими данными, из которой
программой будут извлечены координаты сейсмоприемников и
источника. Поэтому необходимо, чтобы заголовки трасс-
прототипов содержали значащие поля XOPV, ZOPV, XSPV и ZSPV.
Если какие-нибудь приемники окажутся за пределами области
моделирования, то они использованы не будут.
Если за пределами области моделирования окажется источник,
программа работать не будет. Источник занимает сферическую
область с центром в точке (XSPV, ZSPV - указаны в файле-
прототипе) и радиусом R = 2*Vp(XSPV,ZSPV)/f, f - частота
исходного сигнала.
- "2D model of media"
- Имя: imodel
Тип: dbitem_s(VSP...DDR2DMODLIST.)
Описание: Таблица типа 'DDR2DMOD', содержащая описания границ слоев,
скоростей P и S волн, а также плотностей. В случае анизотропной
модели также используются параметры анизотропии (скорости вдоль
осей X и Z, а также независимый параметр R).
- "Spatial grid parameters in X [m] (main, special)"
- Имя: deltax
Тип: float2
Описание: Этот параметр определяет шаг пространственной дискретизации
по горизонтальной координате (основной и в области сужения).
Заметим, что чем крупнее сетка, тем менее точным получается
решение; однако, при этом время счета также уменьшается.
Размеры ячейки должны быть заданы в метрах.
- "Position of special area in X axis [m] (start,end)"
- Имя: dencex
Тип: float
Описание: Этот параметр определяет область сгущения пространственной сетки
по горизонтальной координате. Область сгущения позволяет получить
более точный результат в интересующей области без загущения сетки
вдоль всей координаты, что позволяет получать лучшие выходные
данные при несущественном увеличении времени счета.
Область сгущения не должна выходить за границы области моделирования.
- "Spatial grid parameters in Z [m] (main, special)"
- Имя: deltaz
Тип: float2
Описание: Этот параметр определяет шаг пространственной дискретизации
по вертикальной координате (основной и в области сужения).
Заметим, что чем крупнее сетка, тем менее точным получается
решение; однако, при этом время счета также уменьшается.
Размеры ячейки должны быть заданы в метрах.
- "Position of special area in Z axis [m] (start,end)"
- Имя: dencez
Тип: float
Описание: Этот параметр определяет область сгущения пространственной сетки
по вертикальной координате. Область сгущения позволяет получить
более точный результат в интересующей области без загущения сетки
вдоль всей координаты, что позволяет получать лучшие выходные
данные при несущественном увеличении времени счета.
Область сгущения не должна выходить за границы области моделирования.
- "Time step, ms"
- Имя: deltat
Тип: float
Описание: Шаг сетки по времени в миллисекундах. Так как
программа использует явную разностную схему, то значение этого параметра должно
удовлетворять условию устойчивости:
dt <= min(dx,dz)/max(Vp).
Параметр задается в мс.
- "Trace length, ms"
- Имя: trace_len
Тип: int
Описание: Длительность синтетической трассы, которая будет рассчитана,
в миллисекундах.
- Имя: trace_dt
Тип: int
Описание: Шаг дискретизации выходной сейсмической трассы.
Величина должна быть задана в миллисекундах.
- "Source impulse"
- Имя: src_imp
Тип: enum
Описание: Данный параметр определяет тип источника. Может использоваться
импульс Риккера, минимально-фазовый импульс и импульс из
сейсмического файла.
- "Amplitude of source impulse"
- Имя: srcampl
Тип: float
Описание: Данный параметр определяет амплитуду сигнала в источнике.
- "Source frequency [Hz]"
- Имя: srcfreq
Тип: float
Описание: Данный параметр определяет частоту сигнала в источнике.
- "Seismic file for impulse (for mode 'from Seismic')"
- Имя: nmod_e
Тип: float
Описание: Данный параметр определяет имя входной сейсмограммы с
источником колебаний.
- "Time length of inpulse[ms] (for mode 'from Seismic')"
- Имя: seis_imp_t
Тип: float
Описание: Данный параметр определяет длину входного исмульса в милисекундах.
- "Time range for snapshots [ms] (Start, End)"
- Имя: snap_time
Тип: float2
Описание: Данный параметр определяет начальное и конечное время записи снепшотов
(изображений среды).
- "Time step for snapshots [ms]"
- Имя: snap_dt
Тип: float
Описание: Данный параметр определяет временной шаг записи снепшотов
(изображений среды).
- "Number of snappoints to creare snapshots"
- Имя: snap_sp
Тип: int_ar1
Описание: Данный параметр определяет те пункты возбуждения, для которых есть
необходимость записи снепшотов (Выборка по NSP).
- "Time step for snapshots [ms]"
- Имя: medium
Тип: enum
Описание: Данный параметр определяет тип моделируемой среды. Может быть изотропной
или трансверсально-изотропной.
- "Output seismic data"
- Имя: owave
Тип: nmod_e
Описание: Имя модификации, в которую будут записаны модельные трассы.
- "Seismic for writing snapshot wave field"
- Имя: osnap
Тип: nmod_e
Описание: Имя модификации, в которую будут записаны снепшоты (сортировка времени по
NMGL, сортировка по пунктам взрыва - NSP).
- "Executing"
- Имя: p_progress
Тип: string
Описание: Информационная строка, отображающая этап работы программы. - "Done traces:"
- Имя: done
Тип: progress
Описание: Показывает относительное количество обработанных
пунктов трасс
- "Output seismic data"
- Имя: rwave
Тип: nmod_e
Описание: Имя модификации, в которую будут записаны модельные трассы.
- "Seismic for writing snapshot wave field"
- Имя: rsnap
Тип: nmod_e
Описание: Имя модификации, в которую будут записаны снепшоты (сортировка времени по
NMGL, сортировка по пунктам взрыва - NSP).
Для детального ознакомления с пользовательским интерфейсом оболочки
пакетного запуска, смотри описание программы
pktexec. Ниже приводится пример окна оболочки с активной панелью
ввода параметров:
Для работы программы требуется модификация-прототип со значащами полями
XOPV, ZOPV.
Таблица типа 'DDR2DMOD' с описанием скоростной модели среды.
Выходом программы является модификация с модельными трассами.
Программа получает имя рабочего проекта через переменную среды PROJECT. В
случае запуска программы из-под оболочки, это условие выполняется путем выбора
рабочего проекта.
Программа определяет местонахождение системных файлов пакета из переменной
VSPHOME, определенной в профиле пользователя или в файле setup в домашнем
каталоге пользователя пакета. Файле setup данная переменная может
выступать также под именем VSP.
Программа ищет описание параметров в файлах $VSPHOME/etc/FDModel.pep и
$VSPHOME/etc/vsp.pep.
В домашнем каталоге пользователя должен присутствовать файл setup,
содержащий пути к каталогам данных, заданий и протоколов прохождения проектов, а
также пути к системным файлам пакета ВСП.
Прочие требования накладываются оболочкой пакетного запуска pktexec.
Все сообщения выводятся в стандартный поток ошибок. В случае запуска
программы из-под интерактивной оболочки сообщения сохраняются в файле протокола
прохождения задания LOG/$PROJECT/FDModel-#.log. Сообщения классов серьезности
EL_FATAL и EL_ERROR помещаются по завершении работы программы в область
сообщений интерактивной оболочки.
N/A
Список кодов и идентификаторов ошибок (обозначаемых ниже ERROR_IDENT),
начинающихся с "ERROR__" приводится в документе Коды
ошибок программ пакета UNIVERS.
Диагностические сообщения, выводимые в информационную строку:
- "Invalid output trace length"
- Неверно задано значение длины выходной трассы.
- "Invalid scheme time sampling"
- Неверно заданы значения шагов дискретизации для конечно-разностной схемы
(слишком маленькие либо отрицательные, либо равные 0).
- "Invalid scheme step dx1"
- Неверно задано значение основного пространственного шага по горизонтальной оси.
- "Invalid scheme step dx2"
- Неверно задано значение уменьшенного пространственного шага по горизонтальной оси.
- "Invalid scheme step dz1"
- Неверно задано значение основного пространственного шага по вертикальной оси.
- "Invalid scheme step dz2"
- Неверно задано значение уменьшенного пространственного шага по вертикальной оси.
- "Start dense point on X-axis must be less then end point on same axis"
- Координаты начала и конта области сгущения по горизонтальной оси заданы неверно.
- "Start dense point on Z-axis must be less then end point on same axis"
- Координаты начала и конта области сгущения по вертикальной оси заданы неверно.
- "Invalid source frequency"
- Неверно зада частота начального импульса.
- "Invalid start time for snapshots"
- Неверно задано начальное время записи снепшотов.
- "Invalid finish time for snapshots"
- Неверно задано конечное время записи снепшотов.
- "Invalid snapshots time step"
- Неверно задан шаг записи снепшотов.
- "Specified grid and time sampling do not satisfy stability condition"
- Пространственные и временные шаги конечно-разностной схемы не
удовлетворяют условию стабильности.
- "Failed to open custom impulse from seismic"
- Невозможно открыть входную модификацию с сейсмическим импульсом.
- "Empty seismic file with custom impulse"
- Входная модификация с чейсмическим импульсом пустая.
- "Can't create output seismic data due to"
- Невозможно создать выходную модификацию.
- "No shot points were found!"
- Не найдено ни одного пункта взрыва.
- "Trace (X) writing error."
- Ошибка записи выходной сейсмики.
- "Trace (Z) writing error."
- Ошибка записи выходной сейсмики.
- "Failed to retrieve medium parameters for a source"
- Невозможно получить параметры среды в точке.
- "Failed to open 2D velocity model"
- Невозможно открыть скоростную модель среды.
Замечание: настоящая программа весьма требовательна к системным ресурсам.
В случае их недостатка программа работать не будет либо будет работать
нестабильно. Количество необходимой для запуска памяти может быть вычислено по
формуле
Mr(iso) = 120*n*m (байт),
Mr(aniso) = 160*n*m (байт),
где Mr - необходимый объем памяти (изотропная и анизотропная
среда), n - горизонтальный размер пространственной сетки,
m - вертикальный размер пространственной сетки (выраженные
в количестве точек).
- Интерактивная оболочка пакетного запуска
pktexec.
- J. Zahradnik, E. Priolo. Heterogeneous formulations of elastodynamic
equations and finite-difference schemes. Geophysics. 1995. 60. P. 663-676.
- R. Stacey. Improved transparent boundary formulations for the elastic-wave
equation. Bull. Seism. Soc. Am. 1988. 78. P. 2089-2097.
- D.H. Yang, E. Liu, Z.J. Zhang, J. Teng. Finite-difference modelling in
two-dimensional anisotropic media using a flux-corrected transport technique.
Geophysics. 2002. 148. P. 320-328.