Тонкости в работе с Eclipse

Последнее сообщение
Злой 288 17
Июн 07

НароД,
Создаю schedule file в экселе (намного удобнее) и затем копирую в .txt. Из-за присутствующих пробелов-табуляций эклипс выдает ошибку при запуске. Как быстрее от них избавится или предотвратить их появление.?

Рушан 763 17
Июн 07 #1

из-за пробелов по идее не должно быть.
если нетрудно - выстави месседж ошибки

ignatovis 40 17
Июн 07 #2

Farом быстро можно заменить табуляцию на пробел

Unknown 1640 17
Июн 07 #3

ага, меняй в любом текстовом редакторе таб на пробел.
фар быстрее всего это сделает

volvlad 2196 17
Июн 07 #4

Злой пишет:

НароД,
Создаю schedule file в экселе (намного удобнее) и затем копирую в .txt. Из-за присутствующих пробелов-табуляций эклипс выдает ошибку при запуске. Как быстрее от них избавится или предотвратить их появление.?


Не из-за табов ошибка!!! А из-за того что пробелы-табы стоят перед ключевым словом
Из-за этого возникают ошибки при считывании файлов. В остальных случаях хоть тысячу пробелов-табуляций используй все будет читаться без проблем.
Например:
--------------------правильный участок
WCONPROD <-- ключевое слово без пробелов-табов
Well_X AUTO ORAT 150 4* 50.000 /
/
--------------------

--------------------неправильный участок
____WCONPROD <-- ключ. слово с пробелами-табами в начале
Well_X AUTO ORAT 150 4* 50.000 /
/
--------------------

Я для создания schedule файла использую собственоручно написанные в perl макросы.

Dorzhi 970 17
Июн 07 #5

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

www 209 17
Июн 07 #6

Dorzhi пишет:

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

Да наверное уже каждый инженер, работающий на Эклипсе, написал что то подобное в экселе. У меня тоже есть! Задаешь добычу нефти по месяцам, на выходе готовый скедал. Ещё бы кто научил это делать непосредственно в программе Schedule? Много раз пробовал, но чё то не получается пока!

Злой 288 17
Июн 07 #7

Проблема действительно была в Табах blink.gif blush.gif ... Farа нет, установил TextPad, и сделал replace \t на пробел... все заработало.
Если не жалко своих разработок... выложите плиз что у вас есть для создания sched файла. wink.gif

www 209 17
Июн 07 #8

Злой пишет:

Проблема действительно была в Табах blink.gif blush.gif ... Farа нет, установил TextPad, и сделал replace \t на пробел... все заработало.
Если не жалко своих разработок... выложите плиз что у вас есть для создания sched файла. wink.gif

Выложить то можно конечно, не жалко, но сможешь ли ты разобраться в спредшите?
Писался то для личного пользования! Хотя у меня там маленькая инструкция есть!

Antalik 1672 17
Июн 07 #9

Если будете выкладывать, то лучше в Файловый Архив на сайте.

www 209 17
Июн 07 #10

Я выложил в полезный софт, только почему то не появился!

Antalik 1672 17
Июн 07 #11

Появляется после апрува админами. Готово.

Barrios 37 17
Июн 07 #12

Можно еще копировать в Kedit. Он нормально воспринимает промежутки между содержимым ячеек. Как пробелы.

Вообще рекомендую Kedit. Можно и макросы писать. Свою разработку для Schedule выкладывать не вижу смысла, т.к. она под меня заточена smile.gif

Злой 288 17
Июн 07 #13

Народ... вот еще вопрос.
Делаю хистори матчинг скважины с использованием множителей проницаемости и интекса продуктивности скважины. Но хотелось бы использовать не множители, а абсолютные величны, чтобы нагляднее.
Кто сталкивался? или может на крайний случай запросить результаты расчета с этими величинами?

volvlad 2196 17
Июн 07 #14

Злой пишет:

Народ... вот еще вопрос.
Делаю хистори матчинг скважины с использованием множителей проницаемости и интекса продуктивности скважины. Но хотелось бы использовать не множители, а абсолютные величны, чтобы нагляднее.
Кто сталкивался? или может на крайний случай запросить результаты расчета с этими величинами?


Для задания конкретного значения продуктивности в скважине существует ключ. слово WELPI, для умножения WPIMULT.

Умножение проницаемости делается с помощью секции MULTIPLY, а установка абс. значений, например, через EQUALS.

Злой 288 17
Июн 07 #15

V. Volkov пишет:

Для задания конкретного значения продуктивности в скважине существует ключ. слово WELPI, для умножения WPIMULT.

Умножение проницаемости делается с помощью секции MULTIPLY, а установка абс. значений, например, через EQUALS.

а про скин есть идеи?

volvlad 2196 17
Июн 07 #16

И в догонку у меня вопрос.
Кто-нибудь пользовался автодриллингом в эклипсе?

В общем я решил попробовать возможности этой опции.
Прописал в schedule следующее:
----------
в одной секции dates содержатся welspecs-ы, compdat-ы, wconprod-ы и wecon-ы всех скважин.
В wconprod статус работы всех скважин стоит auto.
затем прописал следующее:
-- алгоритм расчета рейтинга скважин (в данном случае это дебит нефти)
DRILPRI
0 0 1 0 0 1 0 0 0
/
-- маска скв. включаемых в список, и -1 указывает на то, что приоритет должен вычисляться
WDRILPRI
'P*' -1 /
/
-- время бурения каждой скв.
WDRILTIM
'P*' 60 YES /

Все вроде бы хорошо, скважины вводятся по очереди согласно указанному времени бурения, но есть одна засада - вводятся они строго в том порядке, в котором они указаны в файле schedule, т.е. не сортируются по вычисленному приоритету.

Albina 20 16
Июл 07 #17

В каком виде в *.NET файле указать скважину перешедшую на другой режим работы через определенный промежуток времени со всей ее историей. Насколько мне известно, нужно нефть+конденсат, газ прорывной+газ попутный. А в каком виде представить в NET?
Допустим,
Р1:1
P1:2
или
в категории Oil и Gaz указать дважды?
Может кто знает?

Гоша 1201 17
Июл 07 #18

V. Volkov пишет:

И в догонку у меня вопрос.
Кто-нибудь пользовался автодриллингом в эклипсе?

В общем я решил попробовать возможности этой опции.
Прописал в schedule следующее:
----------
в одной секции dates содержатся welspecs-ы, compdat-ы, wconprod-ы и wecon-ы всех скважин.
В wconprod статус работы всех скважин стоит auto.
затем прописал следующее:
-- алгоритм расчета рейтинга скважин (в данном случае это дебит нефти)
DRILPRI
0 0 1 0 0 1 0 0 0
/
-- маска скв. включаемых в список, и -1 указывает на то, что приоритет должен вычисляться
WDRILPRI
'P*' -1 /
/
-- время бурения каждой скв.
WDRILTIM
'P*' 60 YES /

Все вроде бы хорошо, скважины вводятся по очереди согласно указанному времени бурения, но есть одна засада - вводятся они строго в том порядке, в котором они указаны в файле schedule, т.е. не сортируются по вычисленному приоритету.

Вован, у мня было тоже самое.
Выход нашел для себя в том, что уже в макросе сортировал свои кусты и скважины по kh,
и писал их в КОМПДАТы в нужном порядке. Для этого конечно на вход макросу приходилось подавать проектную сетку уже со значениями kh...
Ежели кто найдет рецепт - отпишитесь на почту или в личку, плиз

visual73 1945 16
Авг 07 #19

Подскажите плиз, как в Eclipse моделируется газоконденсатно-нефтяная залежь, чтобы можно было учитывать и конденсат переходящий из газовой шапки в нефтяную часть и газ выделяющийся из нефти в газовую шапку (т.е. массообмен)?
Можно ли это сделать в модели blackoil? может с помощью API?

Dorzhi 970 17
Авг 07 #20

Лучше делать композиционную модель. Хотя в эклипсе есть модель с растворенным газом, там надо строить таблице изменения Rs от давления, и для свободного газа таблицы для Rv.

visual73 1945 16
Авг 07 #21

Dorzhi
Большое спасибо за ответ.
т.е. я так понял что
а. нет необходимости задавать регионы
б. задается таблица RVVD - для глубин залегания ГазШапки и RSVD - в нефтяной части. И соответственно PVTO и PVTG

volvlad 2196 17
Авг 07 #22

Гоша пишет:

Вован, у мня было тоже самое.
Выход нашел для себя в том, что уже в макросе сортировал свои кусты и скважины по kh,
и писал их в КОМПДАТы в нужном порядке. Для этого конечно на вход макросу приходилось подавать проектную сетку уже со значениями kh...
Ежели кто найдет рецепт - отпишитесь на почту или в личку, плиз


Расстановка приоритета собственными макросами или сторонними приложениями - это уже мануальные операции. Собственно я так и делаю в основном.
Но просто хотелось бы узнать, почему заявленная в ECLIPSE опция расстановки приоритетов скважин при автоматическом бурении не работает? Может я что-то не так делаю? Или может быть надо где-то включить какую-то опцию? Весь хелп уже перерыл и пока ничего не нашел.

Dorzhi 970 17
Авг 07 #23

2visual73, угу, регионы задавать необязательно, если у тебя одна нефть и один газ. б. да эти таблицы. Учитывай, что эти Rs, Rv сильно влияют на пластовое давление. таблицы должны быть достаточно точные

Guzel 236 17
Сен 07 #24

вопрос такой... мониторинг пластового давления именно на скважинах, не по регионам fipnum

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

не знаю как в эклипсе, если не так - скажите.
а у нас, в моресе, как правило, для этой цели открывается визуализация карты давления и тыкается мышкой в ячейки на определенном расстоянии от скважины. причем приходится в голове отвечать себе на вопрос - 1) где это определенное расстояние 2) если одних только перфорированных слоев в модели штук 50, в какой слой тыкать?

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

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

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

volvlad 2196 17
Сен 07 #25

В Eclipse есть специальные ключевые слова в секции Summary - WBP, WBP4, WBP5, WBP9 пластовые давления в районе скважин. WBP - среднее давление по одной точке, WBP4 - по 4-м и т.д. Также есть WPI1, WPI4, WPI5, WPI9 - соответсвующие значения коэффициентов продуктивности.

Словом WPAVE можно править параметры осреднения и взвешивания давлений.

Dorzhi 970 17
Сен 07 #26

Обычно сравниваются WBP (WBP$, WBP9) как вышесказано, но нужно учитывать, что эти ключевые слова считают давления в ячейке скважины и соседних ячейках. Если ты пытаешься найти давление на расстоянии от скважины, то тож тыкаешься мышкой.
А вообще от петрофизиков и геологов надо вытащить минимальные и максимальные значения параметров и между ними уже играть, дескать входит в погрешность. Все равно точное значение проницаемости никто тебе не скажет.

volvlad 2196 17
Сен 07 #27

Dorzhi пишет:

Обычно сравниваются WBP (WBP$, WBP9) как вышесказано, но нужно учитывать, что эти ключевые слова считают давления в ячейке скважины и соседних ячейках. Если ты пытаешься найти давление на расстоянии от скважины, то тож тыкаешься мышкой.
А вообще от петрофизиков и геологов надо вытащить минимальные и максимальные значения параметров и между ними уже играть, дескать входит в погрешность. Все равно точное значение проницаемости никто тебе не скажет.


как раз словом WPAVE и настраивается способ взвешивания и осреднения.
Например:
WPAVE
0 2* /
В этом случае ячейки, в которых имеются коннекшны не будут учитываться при осреднении. По дефолту там стоит 0.5
Формула выглядит так:
Avg P = F1*P_ik+(1-F1)*Sum(P_ok)/N_ok
P_ik - ячейки, через которые проходит скв.
P_ok - соседние ячейки

Guzel 236 17
Сен 07 #28

V. Volkov пишет:

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

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

volvlad 2196 17
Сен 07 #29

Guzel
Теперь после нескольких комментариев пробема стала понятна. Первый пост был не очень четко сформулирован, я не сразу понял суть проблемы.

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

Сходу видется 2 выхода: либо продолжать снимать значения мануальным методом, либо, действительно, писать скрипт/макрос/программку, которая будет считывать значение давлений с нужных ячеек и осреднять их.

Надо подумать над этим, задачка сложная, но крайне полезная.

Dorzhi 970 17
Сен 07 #30

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

Guzel 236 17
Сен 07 #31

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

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

у нас PI по этой части месторождения были более-менее известны... всегда можно сделать выводы, почему не бьется жидкость и забойное - изза проницаемости или изза давления (граничные условия либо поддержка инжекторов)... неопределенность явно снижается. правда, мне вначале не верили, сказали, что PI может иногда зависеть от граничных условий - отклонение от радиального потока и тд. я провела эксперимент, PI зависит минимально... то есть зависимоcть почти на 100% только от KH, скины же при консервативном подходе должны быть равны 0.

странно, что никто никогда этому не учит. никогда еще я не могла так однозначно сказать, к примеру, что вот здесь в геол. модели точно не хватает connectivity, а здесь наоборот, можно понизить

Mishgen 144 16
Окт 07 #32

V. Volkov пишет:

Guzel
Сходу видется 2 выхода: либо продолжать снимать значения мануальным методом, либо, действительно, писать скрипт/макрос/программку, которая будет считывать значение давлений с нужных ячеек и осреднять их.

Надо подумать над этим, задачка сложная, но крайне полезная.

Задача лишь кажется сложной, но имеет изящное и очень простое решение. 3-тий выход.
Задача: определить давление на предполагаемом контуре питания (скажем половина расстояния по сетке) работающей скважины в симуляторе.
Известно - радиус скважины (Rw~0.1) и давление в этой точке (WBHP), среднее давление на расстоянии одной ячейки (RCell ~100 ~50 ~25) от скважины (WBP4).
Допущение: воронка депрессии может быть описана уравнением -
P(L)=A*Ln(L)+B (верно для несжимаемой жидкости, но с учетом необходимой точности подойдет :-) осталось узнать A и B
Итого: два уравнения, два неизвестных - на каждый шаг отчета (ReportStep) можем определить А и В и вычисить давление на нужном расстоянии от скважины.
Реализация: если Ваш инструмент не имеет функции Ln(X) константы Ln(Rw),Ln(RCell), Ln(Rd) считаем в Excell и вводим значения.
Для тех, кто в танке:
P(Rd)=(WBHP-WBP4)/(Ln(Rw)-Ln(RCell))*(Ln(Rd)-Ln(Rw))+WBHP
Для нефтяных месторождений проверял. Выбирал ячейки, лежащие в модели на расстоянии от Rd-RCell до Rd+RCell от скважины на сетке 25х25. Работает. Получаю Calculated вектор на основе WBHP и WBP4, а чтение Resturt файлов оставляю более продвинутым пользователям :-).
С уважением,
Инженер

Mishgen 144 16
Окт 07 #33

V. Volkov пишет:

И в догонку у меня вопрос.
Кто-нибудь пользовался автодриллингом в эклипсе?

В общем я решил попробовать возможности этой опции.
Прописал в schedule следующее:
----------
в одной секции dates содержатся welspecs-ы, compdat-ы, wconprod-ы и wecon-ы всех скважин.
В wconprod статус работы всех скважин стоит auto.
затем прописал следующее:
-- алгоритм расчета рейтинга скважин (в данном случае это дебит нефти)
DRILPRI
0 0 1 0 0 1 0 0 0
/
-- маска скв. включаемых в список, и -1 указывает на то, что приоритет должен вычисляться
WDRILPRI
'P*' -1 /
/
-- время бурения каждой скв.
WDRILTIM
'P*' 60 YES /

Все вроде бы хорошо, скважины вводятся по очереди согласно указанному времени бурения, но есть одна засада - вводятся они строго в том порядке, в котором они указаны в файле schedule, т.е. не сортируются по вычисленному приоритету.

Ложка не к обеду, но ...
судя по описанию не хватает ключевого слова GCONPRI.

Злой 288 17
Апр 08 #34

Пипл... моделирую каналы высокой проницаемости... run time улетает в небо...
проницаемость каналов в 100 раз больше матрицы...
Кто мож занимался подобным? Че делать то?

Lost 3 15
Май 08 #35

ignatovis пишет:

Farом быстро можно заменить табуляцию на пробел


Я в делфи скрипты пишу для подобных проблем - очень ускоряет рабочий процесс

VIT 1111 17
Май 08 #36

Злой пишет:

Пипл... моделирую каналы высокой проницаемости... run time улетает в небо...
проницаемость каналов в 100 раз больше матрицы...
Кто мож занимался подобным? Че делать то?


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

DmitrySh 28 15
Май 08 #37
Цитата

Farом быстро можно заменить табуляцию на пробел

А если попробовать сохранить экселевский спредшит в формате *.prn - там разделение идет пробелами, а не табами... для StratWorks такая операция прокатывает, тож табы не любит...

engi 74 13
Окт 10 #38

Приветствую всех!

кто-нибудь работал с функциями RESTART и SKIPREST в эклипсе?
собственно вопрос в следующем: сохраняет ли эклипс умножения WPIMULT с основого шедула для расчета после рестарта?

beloil 45 15
Окт 10 #39

Добрый день.
Как описано в Manual-е ключевое слово WPIMULT - коэффициент соединений умножается на заданный коэффициент. Если затем для переопределения данных соединения (не важно в основном кейсе или рестарте) нет ключевого слова COMPDAT, то коэффициенты соединений не переопределяются.
Т.е если у вас для данной скважины нет кл.слова COMPDAT в рестарте, то Eclipse будет использовать коэффициенты соединения с учетом WPIMULT из основного кейса.

engi 74 13
Окт 10 #40

beloil пишет:

Добрый день.
Как описано в Manual-е ключевое слово WPIMULT - коэффициент соединений умножается на заданный коэффициент. Если затем для переопределения данных соединения (не важно в основном кейсе или рестарте) нет ключевого слова COMPDAT, то коэффициенты соединений не переопределяются.
Т.е если у вас для данной скважины нет кл.слова COMPDAT в рестарте, то Eclipse будет использовать коэффициенты соединения с учетом WPIMULT из основного кейса.

эксперименты подверждают твои слова)))

P.S. спасибо за ответ!

Go to top