Показаны сообщения с ярлыком практика моделирования. Показать все сообщения
Показаны сообщения с ярлыком практика моделирования. Показать все сообщения

пятница, 23 октября 2015 г.

Моделирование температуры

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

воскресенье, 4 октября 2015 г.

tNavigar и интегрированное моделирование (tNavigatot GAP integration)

Petex внесли в список поддерживаемых Resolve симуляторов tNavigator.
Теперь интегрированное моделирование доступно и с tNavigator, что само по себе достижение для RFD.




пятница, 1 мая 2015 г.

Скин фактор в гидродинамической модели

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

Для наших стандартных 50м*50м ячеек скин фактор -5 уже недопустим. Многие симуляторы вылетают с ошибкой, только Tempest выдает warning (который конечно никто не читает) и принимает какое-то свое значение по умолчанию.

Немного о проводимости ячейка-пласт.

P.S. версия Tempest 7.1.1

P.S.2 Можно задать эквивалентный радиус гридблока, с которым можно фактически задать любой скин.

среда, 16 июля 2014 г.

Моделируем трещину ГРП в ECLIPSE

Вот здесь лежит пример моделирования трещин ГРП в ECLIPSE: FRACTURE FACE INTERFERENCE OF FINITE CONDUCTIVITY FRACTURED WELLS USING NUMERICAL SIMULATION

Кроме самой модели, там можно найти кое-какую теорию по трещинам.

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

GRID ==========

TOPS
103515*4950 /

DXV
-- reservoir
139*340 3*256 128 64 32 16 8 4
-- half fracture-1
2 4 8 16 32 64 128 6*256 128 64 32 16 8 4
-- well
2
-- half fracture-1
4 8 16 32 64 128 6*256 128 64 32 16 8 4 2
-- reservoir
4 8 16 32 64 128 3*256 139*340

/

DYV
147*340 256 128 64 32 16 8 4 2 4 8 16 32 64 128 256 147*340
/

DZ
 103515*100 /
/


Получается вот такой грид:
















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



П.С. Если ссылка на статью не работает, то можно найти под катом:

пятница, 30 мая 2014 г.

Про LGR

LGR - локальное измельчение сетки.

Почему - то общее представление о LGR ограничивается только измельчением сетки. На самом деле, LGR (про крайне мере в экслипсе) - вполне самостоятельный грид, со своими свойствами. Можно задать и модифицировать свойства, точно также как и в основной, родительской сетке.

В свое время, ради интереса только, я использовал такой метод.

1. Есть крупный апскелинговый грид, в котором задаем LGR.
2. Создаем новый грид с мелкой сеткой, разрешение которого равно LGR.
3. Распределяем свойства в мелкосеточном гриде.
4. Из мелкосеточного грида вырезаем область, равную LGR. Тут критично, чтобы количество ячеек совпадало.
5. Из вырезанной области выгружаем свойства, вставляем их в модель с LGR.

Пару лет назад Петрель уже умел создавать LGR, а вот задавать свойства в них приходилось ручной правкой эклипс файлов. 

четверг, 31 января 2013 г.

Боковой ствол скважины в Petrel

Вот какую замысловатую траекторию бокового ствола скважины нарисовал мне Petrel:
Чтобы такого не было, необходимо либо мельчить шаг прорисовки ствола скважины, либо увеличивать темп искривления ствола скважины (DLS в свойствах скважины).

пятница, 14 декабря 2012 г.

Пористость, проницаемость и давление.

Пористость и проницаемость породы - не статичные параметры, они зависят от давления (про воздействие закачиваемых реагентов умолчим).

В Эклипсе зависимость коллекторских свойств от давления реализована ключевым словом ROCKTAB в секции PROPS:


ROCKTAB
10   0.9818  0.8915
50   0.9850  0.9100
100 0.9883  0.9341
150 0.9948  0.9768
200 1.0013  1.0194
/

1 - давление
2 - множитель порового объема
3 - множитель проводимости (по X, если определено RKTRMDIR, см. мануал)
(4 - множитель проводимости по Y, если определено RKTRMDIR)
(5 - множитель проводимости по Z, если определено RKTRMDIR)

суббота, 10 ноября 2012 г.

Проверка инициализации модели.

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

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

Ниже пример неправильной инициализации.

воскресенье, 4 ноября 2012 г.

регионы в Tempest

Как задать регионы в Tempest?
Странно, но в хелпе не нашел ответа (вот чем бесспорно хороши Slb - так это отчетами и хелпами. Видно, что компанией правят менеджеры, а не инженеры. И это правильно.)

Ответ оказался очень простым, если вспомнить что Tempest режет ключевые слова до 4 знака, а отдельной секции для регионов нет.

Итак, в Tempest регионы пишутся в секции GRID соответсвующими эклипсу ключевыми словами, обрезанными до 4 знака:

Регионы ОФП - SATN
Регионы PVT таблиц - PVTN
Регионы инициализации - EQLN
Регионы запасов - FIPN

Ну и, конечно, свойства все прописать соответствующие.

П.С. не заругается Tempest и на полное написание слов - SATNUM, PVTNUM, EQLNUM, FIPNUM (он вообще не видит что там после 4го знака, так что он не заругается в любом случае)

среда, 3 октября 2012 г.

Делаем автоматический перевод скважины из добычи в нагнетание в ECLIPSE

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

---------------------------------------------------------------------------------------
ACTIONW
A1  *  WWCT> 0.9 10000/

WCONINJE
'?' WATER OPEN RATE 100 2* /
/

ENDACTIO
/
-------------------------------------------------------------------------------------------

четверг, 20 сентября 2012 г.

Пост про задание временного шага в ECLIPSE

Ключевое слово DATES.


Многие привыкли видеть задание временного шага  ECLIPSE в подобном виде:

DATES
1   'SEP'  2012 /
/

т.е. формат задания даты:

DATES
D MMM YYYY /
/

Однако полный формат задания даты выглядит так:

вторник, 18 сентября 2012 г.

Проницаемость трещин в моделях двойной пористости.


При первом опыте моделирования двойной пористости в ECLIPSE меня очень смутил тот факт, что задаваемая в геологии проницаемость трещин сильно отличалась от проницаемости трещин в гидродинамике. Я даже по началу грешил на FloViz.
Однако оказалось, что симулятор просто домножает проницаемость трещин на пористость трещин, для получания полной эффективной величины проницаемости трещин, так описано в мануале.

Чтобы отключить это домножение нужно прописать ключевое слово NODPPM в Runspec. В этом случае считается, что пользователь знает явное значение эффективной проницаемости трещин.

вторник, 21 августа 2012 г.

Ставим экономически предел в ECLIPSE

Данная запись в секции Schedule будет отключать ВСЕ скважины, достигшие обводненности 0,9.
Естественно, расчет должен идти на прогноз, а не на историю.

------------------------------------------------------------------------------------------------------------
WECON
--name| min.O| min.G| max.WC| max.G/O| max.W/G| Workover
*   2*   0.9  2*  WELL /
/
-----------------------------------------------------------------------------------------------------------

воскресенье, 19 августа 2012 г.

Увеличиваем поровый объемы в ECLIPSE

Чтобы увеичить поровые объемы в ECLIPSE, в секции EDIT прописываем следующее:

BOX
--x1 x2   y1   y2   z1 z2
137 143  249  255   80 95 /  
/

MULTPV
--number of cells*multiplier
  784*30 /
/

ENDBOX/
/

Заметка: ключевыми словами BOX и ENDBOX выделяется блок, где будет модифицирован поровый объем или любой другой параметр.

Или вот второй способ, тоже в секции EDIT:
MULTIPLY
--name  modifier  x1 x2   y1   y2   z1 z2
-- 1st
  PORV   30     137 143  249  255   80 95 /  
-- 2nd
  PORV   30     140 143  269  278   80 95 /
/

вторник, 5 июня 2012 г.

Делаем авто ГРП в tNavigator


В секции schedule, в в самом начале прогноза прописываем:

------------------------------------------------------------------------------------------------
ACTIONC
'ACT1' 2* 6* BPR > 400 1000/

WFRACP
-- wname iw1 jw1 kw1 iw2 jw2 kw2 phi psi L1 L2 H1 H2 W   propant function phase PI biw1 bjw1 bkw1 biw2 bjw2 bkw2
'?' 6*  135   0  200 200 0  0  0.5  2*  'LIQ' 1 0 0 0 0 0 0 0 /
/

ENDACTIO
/
---------------------------------------------------------------------------------------------

Теперь во всех проперфорированных ячейках, при давлении выше 400 будет происходить ГРП со свойствами, описанными в WFRACP.


Замечание: данный прием не может быть применен в ECLIPSE, по крайней мере ECLIPSE 2009, поскольку в нем нет ключевого слова ACTIONC - это слово отвечает за события в ячейках перфорации (есть ключевые слова отвечающие за события в скважинах, регионе, но не в ячейках перфорации). Возможно в последующих версиях ECLIPSE это слово или что-то подобное уже ввели, но мне об это не известно.
/*----------------------------alex text------------------------------------------ ---------------------------------------------------------------------------------4 */