СПОСОБ И СИСТЕМА ДЛЯ СОЗДАНИЯ КОНТРОЛЬНЫХ ТОЧЕК ВО ВРЕМЯ МОДЕЛИРОВАНИЯ

1. Способ снижения вычислительных затрат компьютерного моделирования, содержащий этапы, на которых:
выполняют стратегию создания контрольных точек, причем стратегия создания контрольных точек содержит этапы, на которых:
сохраняют контрольную точку корреляции на временном шаге, причем контрольная точка корреляции содержит данные, используемые для корреляции значения, распространяющегося в прямом направлении, сформированного посредством компьютерного моделирования, причем компьютерное моделирование не может быть повторно начато со значений, сохраненных в контрольной точке корреляции;
выделяют пространство памяти для контрольной точки корреляции; и
выполняют компьютерное моделирование на каждом из множества временных шагов, причем на каждом из множества временных шагов:
значение, распространяющееся в обратном направлении, из данных измерений коррелируют со значением, распространяющимся в прямом направлении, из компьютерного моделирования, причем прямое значение, распространяющееся в прямом направлении, сохраняется в контрольной точке корреляции.
2. Способ по п.1, дополнительно содержащий этапы, на которых:
сохраняют контрольную точку с полным состоянием; и
повторно начинают моделирование от контрольной точки с полным состоянием.
3. Способ по п.1, дополнительно содержащий этап, на котором определяют оптимальное местоположение для сохранения либо контрольной точки с полным состоянием, либо контрольной точки корреляции, причем оптимальное местоположение представляет собой пространство памяти, выделенное в памяти графического процессора (GPU), оперативном запоминающем устройстве (RAM), на виртуальном диске в оперативной памяти (RAM-диске), на дисковом накопителе или в любой их комбинации, причем определение оптимального местоположения по меньшей мере частично основано на скорости доступа к пространству памяти.
4. Способ по п.1, в котором пространство памяти, используемое для контрольной точки корреляции, меньше, чем пространство памяти, используемое для контрольной точки с полным состоянием.
5. Способ по п.1, дополнительно содержащий этап, на котором оптимизируют стратегию создания контрольных точек посредством этапов, на которых:
определяют вычислительные затраты, соответствующие сохранению контрольной точки корреляции;
минимизируют вычислительные затраты по меньшей мере частично на основе скорости доступа для каждого из множества блоков хранения и отношения пространства памяти, требуемого для контрольной точки с полным состоянием, к пространству памяти, требуемому для контрольной точки корреляции; и
формируют таблицу, содержащую множество временных шагов и тип контрольной точки, которая будет сохранена в каждом из множества временных шагов.
6. Способ по п.5, в котором этап определения вычислительных затрат содержит этапы, на которых:
вычисляют максимальное количество контрольных точек корреляции, которые могут быть сохранены в быстром блоке памяти;
вычисляют максимальное количество контрольных точек корреляции, которые могут быть сохранены в медленном блоке памяти;
если какие-либо контрольные точки корреляции могут быть сохранены в быстрой памяти:
вычисляют оптимальное количество пробегов с использованием только быстрой памяти и добавляют его к списку;
вычисляют минимальное количество пробегов с использованием только быстрой памяти и добавляют его к списку;
если какие-либо контрольные точки корреляции могут быть сохранены в медленной памяти:
вычисляют минимальное количество пробегов с использованием всех типов памяти и добавляют его к списку;
вычисляют оптимальное количество пробегов с использованием всей быстрой памяти и сохранением по меньшей мере одной контрольной точки корреляции в медленной памяти, добавляют его в список, если оно меньше последнего значения в списке;
добавляют в список целочисленное значение, ближайшее к каждому значению в списке;
вычисляют затраты для каждого значения в списке; и
возвращают минимальные затраты.
7. Способ по п.1, дополнительно содержащий этап, на котором формируют изображение подземной области из сейсмических данных.
8. Способ по п.1, дополнительно содержащий этап, на котором сопоставляют хронологию данных коллектора с моделированием коллектора.
9. Способ сравнения собранных данных с данными моделирования, содержащий этапы, на которых:
распространяют в обратном направлении собранные данные по решетке;
выполняют компьютерное моделирование для формирования данных, распространяющихся в прямом направлении, по решетке, причем:
множество буферов корреляции сохраняется во время компьютерного моделирования; и
моделирование не может быть повторно начато от какого-либо из множества буферов корреляции; и
выполняют корреляцию данных, сохраненных в буферах корреляции, с данными, распространяющимися в обратном направлении, в каждой точке решетки.
10. Способ по п.9, содержащий этап, на котором сохраняют контрольную точку с полным состоянием во время моделирования, причем моделирование может быть повторно начато от контрольной точки с полным состоянием.
11. Способ по п.9, дополнительно содержащий этапы, на которых:
вычисляют затраты для сохранения контрольной точки с полным состоянием; и
определяют временной шаг для сохранения контрольной точки с полным состоянием по меньшей мере частично на основе затрат.
12. Способ по п.1, в котором данные, распространяющиеся в прямом направлении, коррелируются с данными, распространяющимися в обратном направлении, на следующем временном шаге.
13. Способ по п.1, дополнительно содержащий этапы, на которых:
сохраняют множество контрольных точек корреляции в быстрой памяти; и
сохраняют по меньшей мере одну контрольную точку корреляции в медленной памяти.
14. Способ по п.13, дополнительно содержащий этап, на котором сохраняют по меньшей мере одну контрольную точку с полным состоянием, причем моделирование может быть повторно начато от контрольной точки с полным состоянием.
15. Способ по п.14, дополнительно содержащий этап, на котором сохраняют по меньшей мере одну контрольную точку с полным состоянием в быстрой памяти.
16. Система для корреляции данных моделирования с собранными данными, содержащая:
процессор;
систему хранения, содержащую структуры данных, представляющие:
данные измерений;
алгоритм распространения, выполненный с возможностью распространять данные измерений в обратном направлении во времени по решетке;
компьютерную модель, выполненную с возможностью формировать данные моделирования, распространяющиеся в прямом направлении во времени по решетке; и
память, причем память содержит код, чтобы заставить процессор:
распространять данные измерений в обратном направлении во времени по решетке;
заполнять решетку данными моделирования, распространяющимися в прямом направлении во времени, из компьютерной модели;
сохранять контрольную точку корреляции на временном шаге во время компьютерного моделирования; и
выполнять корреляцию данных, распространяющихся в обратном направлении, с данными моделирования, сохраненными в контрольной точке корреляции.
17. Система по п.16, в которой процессор содержит одно ядро, много ядер, графический процессор или любую их комбинацию.
18. Система по п.16, в которой контрольная точка корреляции сохранена в памяти.
19. Система по п.16, в которой память содержит оперативное запоминающее устройство (RAM), виртуальный диск в оперативной памяти (RAM-диск), память графического процессора или любую их комбинацию.
20. Система по п.16, в которой память содержит код для сохранения контрольной точки с полным состоянием на временном шаге, причем компьютерное моделирование может быть повторно начато от контрольной точки с полным состоянием.
21. Способ по п.1, в котором распространение моделируемых импульсов возбуждения в прямом направлении во времени выполняется с использованием полного двухстороннего волнового уравнения.
22. Способ по п.1, в котором распространение моделируемых импульсов возбуждения в прямом направлении во времени выполняется с использованием методики миграции Кирхгоффа, миграции луча или миграции с односторонним волновым уравнением.
23. Реализованный на компьютере способ решения задачи построения изображений или инвертирования сейсмических данных, в котором к сейсмической модели с прямым продвижением во времени должен быть получен доступ в обратном временном направлении для корреляции с сопряженным вычислением с обратным продвижением во времени, содержащий этапы, на которых:
c
s
c
s
c
s
определяют и реализуют стратегию создания контрольных точек, которая уменьшает время вычисления для установленного объема доступной компьютерной памяти M, включающей в себя хранение данных, посредством выбора комбинации из n буферов памяти с размером C, подходящим для хранения данных из прямого моделирования, необходимых для выполнения корреляции в отмеченном контрольной точкой временном шаге, без сохранения всех данных, необходимых для повторного начала моделирования с временного шага, и nбуферов памяти с размером S, подходящим для хранения всех данных, необходимых для повторного начала прямого моделирования с отмеченного контрольной точкой временного шага, причем nC+nS≤M, n≥1 и n≥0;
выполняют построение изображений или инвертирование на компьютере с использованием сохраненных данных из выбранных буферов памяти.
24. Способ по п.23, в котором стратегия создания контрольных точек основана по меньшей мере частично на разных скоростях доступа ресурсов памяти.
25. Способ по п.23, в котором стратегия создания контрольных точек включает в себя оптимизацию того, какие временные шаги выбираются в качестве контрольных точек для повторного начала, для предварительно выбранного общего количества временных шагов в прямом моделировании.
26. Способ по п.25, в котором оптимизация того, какие временные шаги выбираются в качестве контрольных точек для повторного начала, основана на минимизации функции вычислительных затрат.
27. Способ по п.23, в котором C зависит от того, какой тип корреляции используется при построении изображений или инвертировании.