PROYECTOS SIMPLES CON OFM............................................................................ 1
INTRODUCCIÓN ......................................................................... ............................................................ 3 DATO DATOS S DENTRO DE OFM ...................................................................................................... ...................................................................................................................... ................ 3 OTRAS TABLAS IMPORTANTES IMPORTANTES ..................................................................................................... .... 5
Datos estáticos.................................................................................................... estáticos.................................................................................................... ..... 6 Datos dinámicos
CREACIÓN DE PROYECTOS ......................................................................................................... ........ 8 CREACIÓN DE PROYECTO P ROYECTO USANDO EL TEMPLATE DE PRODUCTION ANALYST ANALYST .................. 8
Los símbolos del mapa............................................................................................... mapa............................................................................................... 19 Control de los datos.................................................................................................. 20 Creación de la tabla Propiedades ................................................................................. 23 CREACIÓN DE PROYECTO USANDO UN ARCHIVO DE DEFINICIÓN............ ............................ 26
El arci!o de de"inición de"inición ............................................................................................. 26 Car#a masi!a de datos............................................................................................... 33 Control de datos.............................................................................................. ........ 3$ REUSANDO DATOS............ DATOS...................................................................................................... .......................................................................................... ............ ........... 39
%rci!o de De"inición De"inición ..................................................................................... .......... 39 ARCHIVOS DE DATO DATOS........................................................................................................ S........................................................................................................ ................. 46 AGREGANDO NUEVOS DATOS DATOS A PROYECTOS DE OFM .............................................................. 52
____________________________________ _______________________________________________________ __________________________________ _______________ Armando Proyectos Simples con OFM
Introducción Este apunte está dedicado a quienes quieren armar proyectos simples de OFM. Digo simples pues eisten muc!as posi"ilidades en la "ase de datos que no serán cu"iertas aqu# $. El presente documento se concentrará en la carga de datos mensuales de producción% inyección% propiedades y datos esporádicos de ensayos. Antes de poder cargar alg&n dato en OFM% es necesario comprender qu' posi"ilidades de carga tenemos% dónde se guardan los datos y cómo se prepa preparan ran los arc!i arc!i(os (os AS)II AS)II para para incorp incorporar orarlos los al proye proyecto cto.. Finalme inalmente nte%% eplic plicar arem emos os cómo cómo crea crearr un proy proyec ecto to desd desde e cer cero y e(en e(entu tual alme ment nte e agregarle más datos.
Datos dentro de OFM Esta sección es eplicati(a y está primero porque es necesario tener estos cono conoci cimi mien ento tos s so"r so"re e la "ase "ase de dato datos. s. Si "ien "ien se pued puede e salt saltea ear% r% no recom ecomie iend ndo o segu seguir ir ade adelant lante e sin sin ante antes s comp comprrende enderr esta esta part parte e pues pues terminaremos tra"a*ando con proyectos sin sa"er que es lo que realmente está pasando y cuando los pro"lemas se presenten% se nos !ará más di+#cil su resolución. As# que% agua (a, -os datos en OFM se guardan en ta"las. Estas ta"las están relacionadas enla/adas0 entre s# para +ormar un &nico set de datos. En otras pala"ras% si "ien la in+ormación está cargada en distintas ta"las% se muestra al usuario como un &nico con*unto de datos% consistente. -a siguiente 1gura muestra un e*emplo de dos ta"las enla/adas. 2otar que eiste una ta"la principal con los nom"res de los po/os y sus respecti(as coordenadas. Esta ta"la se conoce en OFM como de tipo STATIC MASTER% y es tam"i' tam"i'n n llamad llamada a maestra. El nom"re puede ser cualquiera que uno eli*a% por e*emplo3 45% MAES67A% 8EADE7ID% etc. -a otra ta"la contiene los (alores de producción de estos po/os. Es de tipo MONTHLY MONTHLY y nue(amente% el nom"re puede ser cualquiera que el usuario eli*a% como P7D% P7OD9))IO2% MO268-5P7OD% etc. A simple (ista% podemos notar que los colores indican a qu' po/o pertenece cada dato. Sin em"argo% OFM no puede puede !acer !acer lo mismo mismo tan +ácilmen +ácilmente te y necesi necesita ta una columna columna especial que se lo indique. En OFM% la columna que se elige para relacionar los datos es la primera columna de la ta"la maestra. Esta columna es muy importante y es la clave maestra de la "ase de datos. Se puede (er Eiste disponi"le un manual llamado :OFM Administrator 8and"oo;< que trata en detalle las posi"ilidades de la "ase de datos de OFM.
$
Introducción Este apunte está dedicado a quienes quieren armar proyectos simples de OFM. Digo simples pues eisten muc!as posi"ilidades en la "ase de datos que no serán cu"iertas aqu# $. El presente documento se concentrará en la carga de datos mensuales de producción% inyección% propiedades y datos esporádicos de ensayos. Antes de poder cargar alg&n dato en OFM% es necesario comprender qu' posi"ilidades de carga tenemos% dónde se guardan los datos y cómo se prepa preparan ran los arc!i arc!i(os (os AS)II AS)II para para incorp incorporar orarlos los al proye proyecto cto.. Finalme inalmente nte%% eplic plicar arem emos os cómo cómo crea crearr un proy proyec ecto to desd desde e cer cero y e(en e(entu tual alme ment nte e agregarle más datos.
Datos dentro de OFM Esta sección es eplicati(a y está primero porque es necesario tener estos cono conoci cimi mien ento tos s so"r so"re e la "ase "ase de dato datos. s. Si "ien "ien se pued puede e salt saltea ear% r% no recom ecomie iend ndo o segu seguir ir ade adelant lante e sin sin ante antes s comp comprrende enderr esta esta part parte e pues pues terminaremos tra"a*ando con proyectos sin sa"er que es lo que realmente está pasando y cuando los pro"lemas se presenten% se nos !ará más di+#cil su resolución. As# que% agua (a, -os datos en OFM se guardan en ta"las. Estas ta"las están relacionadas enla/adas0 entre s# para +ormar un &nico set de datos. En otras pala"ras% si "ien la in+ormación está cargada en distintas ta"las% se muestra al usuario como un &nico con*unto de datos% consistente. -a siguiente 1gura muestra un e*emplo de dos ta"las enla/adas. 2otar que eiste una ta"la principal con los nom"res de los po/os y sus respecti(as coordenadas. Esta ta"la se conoce en OFM como de tipo STATIC MASTER% y es tam"i' tam"i'n n llamad llamada a maestra. El nom"re puede ser cualquiera que uno eli*a% por e*emplo3 45% MAES67A% 8EADE7ID% etc. -a otra ta"la contiene los (alores de producción de estos po/os. Es de tipo MONTHLY MONTHLY y nue(amente% el nom"re puede ser cualquiera que el usuario eli*a% como P7D% P7OD9))IO2% MO268-5P7OD% etc. A simple (ista% podemos notar que los colores indican a qu' po/o pertenece cada dato. Sin em"argo% OFM no puede puede !acer !acer lo mismo mismo tan +ácilmen +ácilmente te y necesi necesita ta una columna columna especial que se lo indique. En OFM% la columna que se elige para relacionar los datos es la primera columna de la ta"la maestra. Esta columna es muy importante y es la clave maestra de la "ase de datos. Se puede (er Eiste disponi"le un manual llamado :OFM Administrator 8and"oo;< que trata en detalle las posi"ilidades de la "ase de datos de OFM.
$
____________________________________ _______________________________________________________ __________________________________ _______________ Armando Proyectos Simples con OFM que los datos en la ta"la de producción contienen una columna igual que dice espec#1camente a qui'n pertenece el (alor y que !ace de enlace entre am"as ta"las. 6odo 6odo proyecto de OFM de"e tener una ta"la maestra y la primer columna de esta esta "ase "ase es usada usada como como el pegame pegamento nto entre entre las distin distintas tas ta"las. ta"las. Esta Esta columna tiene que ser de1nida como un S67I2=% es decir% una (aria"le que guarda una tira de caracteres y no un n&mero0. :)olumna pegamento<% en la *erga de OFM se dice : primary key<. En general y en ám"ito de este apunte0% los nom"res que 1guran en esta columna serán los due>os de los datos que se cargarán luego en las demás ta"las.
De esta 1gura destacamos (arios puntos muy importantes3 $? 2o puede puede !a"er !a"er datos datos en una ta"la ta"la de produ producc cció ión n que que no tenga tengan n su respecti(o due>o ya cargado en la ta"la maestra del proyecto. As# como está el e*emplo% sólo es posi"le cargar o agregar0 datos de producción a nom"re de tres po/os3 @-9E_$% 7ED_ o =7EE2_B. Si queremos cargar producción de un po/o llamado @7OC2_% 'ste de"e estar pre(iamente cargado en la ta"la maestra. ? 2o es posi" posi"le le que que eista istan n dos dos po/o po/os s en la ta"l ta"la a maes maestr tra a con con igua iguall nom"re. Por e*emplo% si eistieran dos 7ED_ en la ta"la maestra% cómo sa"emos a cual de ellos pertenecen los datos de producción cargados a nom"re de 7ED_ ? Si "orramos "orramos un po/o de de la ta"la maestra% maestra% los datos datos que perten pertene/ca e/can n a 'l en las demás ta"las de"en ser "orrados% para no quedar !u'r+anos. Esto es una una tar tarea que que OFM OFM !ace !ace auto automá máti tica came ment nte% e% por por lo cual cual no es necesario preocuparse pero es interesante sa"erlo.
____________________________________ _______________________________________________________ __________________________________ _______________ Armando Proyectos Simples con OFM
Otras ta"las importantes Eisten otras clases de ta"las en OFM% destinadas a guardar datos de otro tipo. 5a conocemos dos3 S6A6I) MAS6E7 y MO268-5. En este apunte (amos a mencionar solamente otras tres clases3 S6A6I)% SO76 y SPO7ADI). Antes de comen/ar a !a"lar de ellas% (amos a distinguir entre dos tipos grandes de datos3 aquellos que tienen un solo (alor estáticos0 y aquellos que pueden tener (arios dinámicos0. Para esta discusión% (amos a "asarnos en la siguiente 1gura.
El di"u*o muestra tres po/os distintos% con dos inter(alos cada uno. )ada uno de estos inter(alos produce gas o petróleo de distintos reser(orios. -a producción de petróleo se acumula en distintos tanques. -os datos de campo disponi"les para guardar en OFM son3 • -as coordenadas de los po/os • -os nom"res o1ciales de los po/os • -a producción o inyección0 !istórica mensual de aguaGgasGpetróleo de cada u no de los inter(alos pun/ados • -os resultados de ensayos e+ectuados esporádicamente a cada capa • -os reser(orios de los que produce cada capa • -a porosidad% permea"ilidad y espesor de cada capa • El tanque al cual se en(#a la producción de cada capa • El campo al cual pertenece cada capa • Etc.
____________________________________ _______________________________________________________ __________________________________ _______________ Armando Proyectos Simples con OFM Por e*emplo% la coordenada 4 del po/o P$ tiene un solo (alor que no cam"ia y si lo !ace% es una corrección del (alor% que reempla/a al anterior. 2o es necesario mantener una !istoria de los (alores de coordenadas 4 de P$. -o mismo mismo podemo podemos s decir decir de% por e*empl e*emplo% o% el reser reser(or (orio io del del cual cual una capa capa produce. Estos tipos de datos se llaman estáticos. )omo contrapartida a los datos estáticos% están los datos dinámicos% que s# requieren m<iples (alores. E*emplos de ellos ser#an los datos !istóricos de prod produc ucci ción ón%% que que (ar# (ar#an an con con la +ec! +ec!a a o de per1 per1le les% s% que que (ar# (ar#an an con con la pro+undidad3 2ecesitamos guardar (arios (alores de producción de petróleo o necesitamos (arios (alores de =7 para el mismo po/o. -os datos estáticos se cargan en tres tipos de ta"las3 S6A6I) MAS6E7% SO76 o S6A6I).
-os datos dinámicos se cargan en ta"las de tipo3 MO268-5% SPO7ADI)% etc. A continuación se descri"en estos tipos de ta"las y consideraciones a !acer antes de crear un proyecto nue(o.
Datos estáticos STATIC MASTER3 Este es el tipo de ta"la que se usa para crear la ta"la maestra. Se puede crear sólo una ta"la maestra por proyecto y como OFM usa muc!o esta ta"la% es con(eniente mantenerla lo más peque>a posi"le a lo anc!o% es decir% minimi/ar el n&mero de columnas0% con lo cual se de"er#an guardar sólo los datos que o"ligatoriamente (an all#. -a siguiente list lista a deta detalla lla los los line lineam amie ient ntos os del del cont conten enid ido o suge sugeri rido do para para una una ta"l ta"la a maestra3 • • •
•
2om"re de las entidades O"ligatorio0 )oordenadas 4 H 5 de las l as entidades O"ligatorios0 Alias para el mapa Opcional si se tra"a*a con po/os de una sola capa. Si !ay más de una capa por po/o% es o"ligatorio0 2om"re de po/o Opcional si se tra"a*a con po/os de una sola capa. Si !ay !ay más de una una capa capa por por po/o po/o y el alia lias es muy cort corto o para para ser considerado como nom"re del po/o% se puede agregar esta columna0
SORT3 -a ta"l ta"la a de sort sort o de fltro0 contiene atri"utos de las entidades guardadas guardadas en la ta"la maestra. maestra. Se puede puede tener una &nica ta"la de sort por proyecto y sus columnas no pueden contener datos num'ricos. STATIC3 Estas ta"las se arman para complementar a la ta"la maestra sin complicarla. Se pueden crear cualquier n&mero de ta"las estáticas en un proyecto. )omo e*emplos de datos que se cargan en ta"las estáticas% podr#amos citar3 • Permea"ilidad • Espesor
7ecordemos que estamos considerando solamente proyectos simples. 8ay más datos% que de necesitarse% de"en cargarse en la ta"la maestra. El nom"re entidades se puede re+erir tanto a capas inter(alos pun/ados0 como po/os. Para no limitarnos a sólo uno de los casos% los llamamos gen'ricamente as#.
______________________________________________________________________ Armando Proyectos Simples con OFM Porosidad • • Etc. 2otar que todos son (alores que necesitan solamente un &nico (alor. Además% son (alores num'ricos. -a siguiente 1gura muestra una distri"ución co!erente de datos estáticos en las tres ta"las mencionadas3
-a ta"la maestra del proyecto se llama Y . )ontiene los nom"res de los distintos inter(alos con sus coordenadas. 6am"i'n contiene los alias que por ser "re(es% (an a ser prácticos para los mapas0 y el nom"re o1cial del po/o. 2otar que las capas que pertenecen al mismo po/o repiten este (alor y el de las coordenadas0. En la ta"la de sort que siempre se llama SC0 de decidió guardar todas las particularidades de estas capas que se descri"en mediante un teto. El resto de los (alores num'ricos% !a sido (olcado a una tercer ta"la estática llamada !ropiedades. Es importante destacar que las relaciones entre ta"las con datos estáticos son del tipo "no a "no . Por cada l#nea de la ta"la maestra !ay una y solo una en las demás ta"las3 2o pueden eistir dos l#neas para P$3A en la ta"la de sort.
Datos dinámicos En este apunte trataremos solo dos tipos de ta"las que pueden guardar este tipo de datos3 MO268-5 y SPO7ADI). -a relación entre este tipo de ta"las y la maestra es del tipo "no a varios% que signi1ca que para cada l#nea de la ta"la maestra puede !a"er (arias l#neas en las ta"las MO268-5 o SPO7ADI). Am"os tipos están pensados para guardar datos que (ar#an con la +ec!a y por lo tanto no sir(en para guardar% por e*emplo% per1lesB. -a 1gura de la página muestra un e*emplo de ta"la MO268-5. 2otar que por cada l#nea de la ta"la maestra !ay (arias puede tam"i'n no tener ninguna% por e*emplo un po/o que nunca produ*o0 l#neas asociadas por cada po/o o inter(alo% !ay (arios (alores de producción de petróleo seg&n la +ec!a0. -a asociación se !ace mediante la primer columna de la ta"la
maestra que llamamos :columna pegamento< o :primary ;ey<% seg&n recordarán . El
nom"re 45 es a modo de e*emplo y es elegido por el usuario. B -a carga de datos de per1les y el tipo de ta"la necesario0 no se (a a discutir en este apunte. Eso espero,
______________________________________________________________________ Armando Proyectos Simples con OFM
)reación de proyectos Para crear un proyecto simple% !ay que disponer de% al menos% un par de cosas3 9n arc!i(o con la de1nición de la "ase de datos opcional0 • -os arc!i(os con los datos uno para cada ta"la a llenar0 •
El arc!i(o con la de1nición de la "ase de datos es el que de1ne qu' ta"las (an a crearse% de que tipo% con qu' nom"res% columnas% etc. Este arc!i(o es opcional pues eisten en OFM ciertos modelos prede1nidos llamados templates0. Si alguno de ellos nos es con(eniente% no necesitamos de este arc!i(o. Jamos a crear dos proyectos% con los mismos datos3 usando un template y usando un arc!i(o de de1nición.
)reación de proyecto usando el template de Production Analyst Para este caso% las ta"las y sus columnas (an a (enir de1nidas al estilo PA mediante un template eistente% por lo cual solo !ay que preparar los arc!i(os AS)II correspondientes a los datos. -os arc!i(os de"en ser AS)II tam"i'n llamados de teto0 que contienen los datos encolumnados con algunos comandos que indican como !acer la carga. En general% no es necesario que las columnas sean per+ectas% sino que lo &nico que le interesa a OFM es que eista separación entre los datos de al menos un espacio% un ta"ulador o alguna com"inación de ellos. Esto es lo mismo que decir que los siguientes dos e*emplos son totalmente equi(alentes para OFM. P1:B P2:A P2:C P3:A
-os arc!i(os de datos necesarios para nuestro e*emplo son3 • Arc!i(o para ta"la maestra llamada 450 • Arc!i(o para ta"la de sort llamada S)0 • Arc!i(o para ta"la Propiedades no eiste en el template% !ay que crearla0 • Arc!i(o para ta"la de Producción mensual llamada P7D0 • Arc!i(o para ta"la de Inyección de agua llamada CI2K0
______________________________________________________________________ Armando Proyectos Simples con OFM Ta#la Maestra El arc!i(o necesario para rellenar la ta"la maestra es el siguiente3 //Contenido del archivo ejemplo.xy *METRIC *TABLENAME XY *WELL *XCOORD *YCOORD *ALIAS 1243 P1:A 5433 P1 P1:B 1243 5433 P1 P2:A 4232 1232 P2 P2:C 4232 1232 P2 P3:A 6600 5800 P3 P3:C 6600 5800 P3
)ualquier l#nea que comien/a con GG es ignorada por OFM y sir(e para comentar el arc!i(o% por lo tanto% pueden poner comentarios eplicando el contenido del arc!i(o% la +ec!a de creación% etc. -a etensión recomendada para este arc!i(o es $y. El comando LME67I) indica que los datos están epresados en unidades m'tricas. )omo las coordenadas están de1nidas como unidad de longitud% si no ponemos este comando% $ (an a ser interpretados como $ pies. Al poner este comando% se interpretarán correctamente como $ metros. -a ta"la maestra que contiene el template de PA se llama 45% por lo cual el segundo comando del arc!i(o especi1ca que estos datos se guarden en la ta"la con ese nom"re. LCE--% L4)OO7D% etc. son los nom"res de las columnas de la ta"la maestra de este template que (an a almacenar los datos especi1cados. El orden es indistinto% siempre y cuando los datos que (ienen de"a*o est'n en el mismo orden. Ta#la de Sort
El arc!i(o para la ta"la de sort es similar% aunque los comandos son algo distintos. Es recomenda"le que la etensión de este arc!i(o sea srt.
-a ta"la de sort nunca eiste completamente +ormada0 en un proyecto !asta que se cargan los primeros datos. Al no eistir% tampoco se sa"e el nom"re de las columnas% ra/ón por la cual% la primer parte del arc!i(o de datos de"e de1nir las columnas necesarias antes de cargar datos a ellas.
//Contenido del archivo ejemplo.srt *define *tanque *campo *tipo *end_define *well *tanque *campo *tipo P1:A A A OIL P1:B A A OIL P2:A A B OIL
______________________________________________________________________ Armando Proyectos Simples con OFM P2:C P3:A P3:C
B SIN B
B B B
OIL GAS WINJ
2ue(amente% cualquier l#nea que comien/a con GG es ignorada por OFM y sir(e para comentar el arc!i(o. )omo la ta"la de sort no puede contener datos num'ricos% no !ay unidades y no se necesita el comando LME67I) no tiene sentido0. 9na (e/ más% el orden en que se de1nen y se cargan las columnas es indistinto. Sin em"argo% la l#nea que de1ne en que orden (ienen los datos LCE-- L6A29E L)AMPO,0 de"e ser consistente con el orden de los datos que (ienen por de"a*o. 6ampoco se puede especi1car un dato si no se de1ne pre(iamente la columna. Por e*emplo% el siguiente arc!i(o es incorrecto pues trata de cargar una columna estado% sin !a"erla de1nido pre(iamente. *define *tanque *campo *tipo *end_define *well *tanque *campo *tipo P1:A A A OIL P1:B A A OIL P2:A A B OIL P2:C B B OIL P3:A SIN B GAS P3:C B B WINJ
*estado PRODUCE PRODUCE PRODUCE PRODUCE CERRADO INYECTA
Es importante !acer un comentario antes de seguir con los siguientes datos. 2otar que la columna pegamento del template de PA se llama CE--. All# estamos guardando los nom"res de las capas de los tres po/os. Al cargar la ta"la maestra% llenamos estos nom"res. Para cargar la ta"la de sort% son necesarias tres cosas3 $? ue los inter(alos a los cuales les (amos a cargar los datos de sort P$3A% etc0% ya est'n pre(iamente cargados en la ta"la maestra. ? ue en el arc!i(o de carga de los datos de sort% de"emos especi1car para qui'n son los datos de esa l#nea% y este nom"re de"e coincidir con alguno de los eistentes. ? ue la columna CE-- de la ta"la de sort no la llenamos nosotros con los datos de este arc!i(o% sino que ya esta llena por OFM antes de cargar nada. -a siguiente 1gura muestra tres pasos del proceso de carga. 2otar tam"i'n que como OFM procesa l#nea por l#nea% es indistinto el orden en que aparecen las l#neas de datos. Es decir% le da lo mismo procesar primero a P$3A o a cualquier otro inter(alo.
______________________________________________________________________ Armando Proyectos Simples con OFM
Ta#la de !ropiedades El arc!i(o de carga de la ta"la propiedades es similar al (isto para la ta"la maestra. Sin em"argo% es con(eniente que su nom"re tenga una etensión dat. )omo en el template de PA no eiste una ta"la de propiedades% tendremos que crearla antes de cargar este arc!i(o. Por ello% podemos poner cualquier nom"re de ta"la y columnas. Por a!ora% este ser#a el arc!i(o de datos. -uego (eremos como crear la ta"la necesaria en el template para que acepte a estos datos. // Contenido del archivo propied.dat *METRIC *TABLENAME PROPIEDADES *WELL *POROSIDAD *PERMEABILIDAD *ESPESOR P1:A 0.18 2.2 0.6 P1:B 0.12 2.4 0.7 P2:A 0.11 1.3 1.2 P2:C 0.17 16.0 0.5 P3:A 0.15 13.1 0.9 P3:C 0.13 16.0 1.1
______________________________________________________________________ Armando Proyectos Simples con OFM -os comentarios a !acer son los mismos que antes. 2otar que se especi1ca el nom"re de la ta"la destino y el nom"re de sus columnas. 7ecordar que el template no contiene a esta ta"la% por lo cual (a a ser necesario crearla primero antes de intentar cargar estos datos. %atos de !rod"cci&n Jamos a tra"a*ar con unos pocos datos% para simpli1car la carga. Eisten dos +ormatos para estos arc!i(os que pasamos a mostrar. // Contenido del archivo produc.prd // Formato 1 *METRIC *TABLENAME PRD *WELL *DATE *DAYS *OIL *GAS *WATER 80 P1:A 199901 20 120 20 P1:A 199902 25 81 130 21 P1:A 199903 22 78 150 20 P1:A 199904 30 78 140 19 P1:A 199905 30 75 100 22 P1:A 199906 24 74 110 23 P1:B 199902 21 60 0 16 P1:B 199903 27 59 0 15 P1:B 199904 28 59 0 13 P1:B 199905 22 60 0 16 P1:B 199906 23 60 0 17
En los datos de producción% es importante el comando LME67I). El n&mero '( será interpretado como N m con LME67I) presente. Si el comando +alta del arc!i(o% serán cargados como N ""l. -a ta"la destino eiste en el template y se llama P7D. -as columnas eistentes en esta ta"la lle(an los nom"res especi1cados en la l#nea correspondiente LCE-- LDA6E LDA5S LOI-, Para arc!i(os cortos% este +ormato puede ser con(eniente. Sin em"argo% eiste un segundo +ormato que e(ita repetir el nom"re de la entidad due>a del dato0 en la primer columna. El +ormato alternati(o y totalmente equi(alente0 es el siguiente3 // Contenido del // Formato 2 *METRIC *TABLENAME PRD *DATE *DAYS *OIL *KEYNAME P1:A 199901 20 199902 25 199903 22 199904 30 199905 30 199906 24 *KEYNAME P1:B
2otar que se agrega un nue(o comando LE52AME0 que signi1ca3 :-os datos que siguen% !asta nue(o a(iso% pertenecen a,< %atos de Ensayos -os datos de ensayos son datos similares a los (istos para producción3 pertenecen a una determinada capa y +ec!a. Sin em"argo% no tienen la regularidad de 'stos3 2o tenemos datos de ensayos una (e/ por mes% sino de (e/ en cuando. =uardar estos datos en una ta"la de tipo MO268-5 ser#a un incon(eniente pues 'sta !ace lugar para uno y siempre un dato al mes3 2o me permite guardar dos (alores en el mismo mes y si no guardo nada en un determinado mes% igual crea el lugar.
El tipo de ta"la pre+erido para ensayos es SPO7ADI)% que como su nom"re lo dice% guarda (alores que se registran esporádicamente. El template de PA tiene una ta"la ya de1nida y se llama 6ES6. El arc!i(o necesario para cargar estos datos es3 // Contenido del archivo tests.dat // Formato 1 *METRIC *TABLENAME TEST *DATE *OIL *GAS *WATER *KEYNAME P1:A 19990112 2.67 4.00 0.67 19990219 2.70 4.33 0.70 19990502 2.50 3.33 0.73 19960624 2.47 3.67 0.77 *KEYNAME P1:B 19990202 2.00 0.00 0.53 19990519 2.00 0.00 0.53 *KEYNAME P3:A 19990601 2.00 0.00 0.57
2otar que las +ec!as contienen no sólo el a>o y el mes sino tam"i'n el d#a. El resto es similar a los arc!i(os mencionados anteriormente. De la misma manera% eiste un +ormato alternati(o para este tipo de datos% que se muestra a continuación3 // Contenido del archivo tests.dat // Formato 2 *METRIC *TABLENAME TEST *WELL *DATE *OIL *GAS *WATER P1:A 19990112 2.67 4.00 0.67 P1:A 19990219 2.70 4.33 0.70 P1:A 19990502 2.50 3.33 0.73 P1:A 19960624 2.47 3.67 0.77
%atos de Inyecci&n Para terminar% citamos a un arc!i(o con datos de inyección. Para simpli1car% diremos que el po/o P está siendo usado para inyectar a tra('s de su capa pun/ada en el reser(orio )% o sea que P3) es inyectora. El arc!i(o de carga de los datos de inyección de esta capa podr#a ser3 // Contenido del archivo Inyeccion.dat
2otar que este arc!i(o está preparado para la ta"la CI2K del template% que se usa para guardar los (alores mensuales de inyección de agua. CIDA5 es una de las columnas que guarda los d#as de inyección al mes% CI2K es el (olumen de agua inyectada y CIP7E la presión. Armado del proyecto con el template de !A )rear un directorio (ac#o para guardar al proyecto. Es aconse*a"le crear un su"directorio llamado %ata% donde colocaremos los arc!i(os AS)II preparados para el proyecto. 9na (e/ !ec!o esto% arrancar OFM. )on OFM a"ierto% seleccionar )ile*Ne+. Esto inicia el proceso de creación del nue(o proyecto. Elegir el directorio (ac#o creado para el proyecto e ingresar el nom"re deseado. En el e*emplo% se "auti/ó al proyecto como :@asado en PA<.
______________________________________________________________________ Armando Proyectos Simples con OFM
Al !acer clic; en O, % OFM pregunta cómo se (a a armar al proyecto. En este caso% seleccionamos el template Production Analyst. 2otar que el %ata So"rce muestra Ascii Flat Files% que son los arc!i(os AS)IIs preparados en las secciones anteriores. 9na (e/ seleccionadas estas opciones% !acer clic; en O, . OFM a"re la (entana de %ata Loader% destinada a seleccionar los arc!i(os AS)II que se (an a cargar al proyecto.
______________________________________________________________________ Armando Proyectos Simples con OFM En la parte superior se muestran los arc!i(os disponi"les. Al !acer do"le clic; so"re ellos% se mue(en a la parte in+erior. Esta sección in+erior muestra los arc!i(os que (an a ser cargados. Seleccionar los arc!i(os a cargar% tal como lo muestra la 1gura.
2otar que están los siguientes arc!i(os3 6a"la maestra3 L.y 6a"la de Sort3 L.srt 6a"la de Inyección3 L.dat 6a"la de Producción3 L.prd 6a"la de Ensayos3 L.dat 7ecordemos que no se selecciona el arc!i(o con los datos de propiedades pues el template no contiene a&n la ta"la para almacenar estos datos. Para proceder% !acemos clic; en :Load<. OFM carga los arc!i(os seleccionados y muestra los resultados como en la siguiente 1gura. 2otar que !ay tres s#m"olos en el mapa% que representan a los tres po/os. En realidad% !ay seis s#m"olos uno por cada inter(alo0% aunque como tienen coordenadas similares% se plotean superpuestos.
______________________________________________________________________ Armando Proyectos Simples con OFM
-os datos ya están cargados% sin em"argo !ace +alta decirle a OFM un par de cosas importantes. -o primero a !acer es Edit*Map*Association. Esto a"re una (entana donde de"emos asociar los distintos datos cargados. El primer "otón -ellType.Sort0 se usa para decirle a OFM en cuál columna de la ta"la de Sort están las siglas que descri"en al tipo de s#m"olo a usar en el mapa. Seleccionar la columna TI!O y el Cell Sym"ol File De+ault. 7epasar las opciones seg&n la 1gura y !acer clic; en O, . OFM muestra nue(amente el mapa% aunque a!ora con distintos s#m"olos% acordes a lo indicado en la columna 6IPO de la ta"la de sort.
______________________________________________________________________ Armando Proyectos Simples con OFM
Para arreglar el mapa un poco más% podemos !acer lo siguiente3 • Edit*Map*Limits*/rid y seleccionar que nos muestre la grilla. • Edit*Map*-ellnames y seleccionar que nos muestre los alias. • 0ie+*Le1end para mostrar la leyenda que eplica el signi1cado de los s#m"olos. 9na (e/ !ec!as estas modi1caciones% el mapa cam"ia como se muestra en la siguiente 1gura. 2otar que a!ora es más o"(io lo que dec#amos antes de que cada s#m"olo representa a un elemento de la ta"la maestra y no a un po/o. En los P$ y P% am"as capas son petroleras y como sus s#m"olos coinciden% aparentan ser uno solo. En el caso de P% sin em"argo% una de sus capas es gas#+era y la otra es inyectora. Am"os s#m"olos aparecen superpuestos.
______________________________________________________________________ Armando Proyectos Simples con OFM
-os s#m"olos del mapa )omo (imos% OFM necesita de una sigla para poder de1nir el s#m"olo del mapa. En nuestro caso el más com&n0% esta sigla (iene de una de las columnas de la ta"la de Sort% que decidimos llamar 6IPO. -as siglas que usamos en nuestro e*emplo +ueron3 OI-% =AS y CI2K y estas se representaron mediante las com"inaciones de s#m"oloGcolorGdescripción mostradas en la <ima 1gura. Por de+ecto% OFM reconoce un cierto n&mero de siglas y tiene pre?de1nidos para cada una de ellas un s#m"olo% color y descripción la que aparece en la leyenda del mapa "ase0. En la siguiente página listamos las siglas y sus equi(alentes. Es necesario destacar que esto es totalmente con1gura"le y que se puede a*ustar todo% inclusi(e incorporar nue(as +ormas de s#m"olo. Sin em"argo% como esto no se (a a discutir en este apunte% solamente nos limitamos a mostrar las opciones que OFM acepta sin ning&n es+uer/o adicional.
______________________________________________________________________ Armando Proyectos Simples con OFM Sigla
Descripción en la leyenda OIL Oil Producer GAS Gas Producer GINJ Gas Injector WINJ Water Injector CINJ Carbon Dioxide Injector CO2PRD Carbon Dioxide Producer DRY Dr !ole PROSP Pros"ect SWDIS Salt Water Dis"osal P#A Plu$$ed # Abandoned
Cclic Stea% Obser&ation Nitro$en Injector Water Su""l Stea% Injection Stea% Production Geot*er%al Producer !ori,ontal Disco&er Well .onitor Well WACO2 )A/d Injector )A/d Producer SWD
)ontrol de los datos 9na (e/ cargados los datos% es necesario !acer un control de ellos. En principio% la me*or +orma de !acerlo es mediante reportes Q. Sin em"argo% eiste la posi"ilidad de !acer una re(isión rápida de otra manera. Antes de seguir con estos procedimientos% es necesario !acer una importante aclaración3 -os siguientes procedimientos ponen a los datos en planillas de cálculo donde uno puede no solamente (er sino editar los datos. Editar los datos desde ellas no es un procedimiento recomendado y puede ser moti(o de corrupción de la "ase de datos. El modo pre+erido de carga o modi1cación de datos sigue siendo mediante arc!i(os AS)II. )omo los datos que ingresamos son m'tricos% antes de !acer el control% de"emos poner a OFM en modo m'trico para que nos muestre los (alores en el mismo sistema de unidades que usamos para la carga. Para ello% de"emos !acer Tools*Settin1s% seleccionar la ore*a de 2nits y acti(ar la opción de 2se Metric 2nits. Q )omo
este apunte no intenta eplicar cómo generar un reporte% mostraremos un m'todo alternati(o.
______________________________________________________________________ Armando Proyectos Simples con OFM -uego% desde el mapa "ase !acemos Edit*!ro3ect*%ata4 OFM nos muestra la lista de ta"las que eisten en el proyecto. )omo (erán% eisten muc!as y esto es de"ido a que
el template de PA utili/ado contiene más de las que estrictamente necesitamos. Por a!ora% seleccionamos la ta"la maestra Y y clic;eamos O, . OFM muestra la grilla con los datos cargados en esta ta"la% como se (e en la 1gura anterior. Esto nos sir(e para controlar nuestro arc!i(o de datos el L.y0 y (er que sus (alores
______________________________________________________________________ Armando Proyectos Simples con OFM !ayan sido cargados correctamente en el proyecto de OFM. Si los datos coinciden% podemos seguir. Si no% será necesario in(estigar la causa y recargar el arc!i(o AS)II. El siguiente paso es controlar los datos de Sort. Para ello% cerramos esta grilla con )ile*Close y una (e/ en el mapa "ase !acemos Edit*!ro3ect*Sort. OFM muestra la ta"la de sort y su contenido% como en la 1gura anterior. 9na (e/ re(isados los datos de sort% !acemos )ile*Close. El resto de los datos a re(isar son del tipo dinámico y no se pueden (er todos a la (e/. OFM es capa/ de mostrar una grilla similar a la (ista pero de a un due>o a la (e/% o sea% de a una !istoria a la (e/. El siguiente e*emplo clari1ca esta aclaración.
8aciendo Edit*!ro3ect*%ata% seleccionamos la ta"la de producción !R%0. OFM a"re una grilla (ac#a. Para (er los datos es necesario seleccionar el inter(alo que queremos re(isar desde la lista de selección% por e*emplo el !56A.
Al seleccionar alguno de los inter(alos% OFM recupera los datos correspondientes y rellena la grilla. )omo di*imos% lo !ace con solo uno a la (e/. Si deseamos controlar a alg&n otro% de"emos seleccionarlo. 9na (e/ satis+ec!o con los resultados% podemos !acer )ile*Close% (ol(er al mapa "ase y re(isar las otras ta"las. El procedimiento es similar. Por e*emplo% !aciendo Edit*!ro3ect*%ata*-IN7 y seleccionando al inter(alo que tiene cargada inyección !86C0 podemos (er los (alores cargados. El resultado ser#a como en mostrado en la 1gura siguiente. Seleccionar P$3A
______________________________________________________________________ Armando Proyectos Simples con OFM
-a siguiente 1gura muestra los (alores de ensayos cargados en la ta"la TEST0 para P$3A. 9na (e/ (eri1cados% cerrar la planilla con )ile*Close.
)reación de la ta"la Propiedades Finalmente% nos queda cargar las propiedades de los distintos inter(alos. Para ello% ya ten#amos preparado el arc!i(o AS)II con los datos% pero nos !ac#a +alta crear una ta"la que acepte estos datos. -a siguiente sección eplica como !acer esto. ______________________________________________________________________ Armando Proyectos Simples con OFM Para crear una ta"la% de"emos !acer Edit*!ro3ect*%efnition. Esto trae una (entana donde podemos agregar nue(as o quitar ta"las. 6am"i'n podemos escoger una ta"la eistente y modi1car su estructura. 8acemos clic; so"re Add y OFM nos gu#a para la creación de una nue(a ta"la. 7ecordemos que queremos llamar a esta ta"la :Propiedades< y queremos que sea del tipo estática. Por la tanto% una (e/ completados los datos como en la 1gura% !acemos O, y procedemos a de1nir el
resto de la ta"la. )ompletamos la siguiente (entana con la de1nición de la primera de las columnas3 :Porosidad< próima 1gura% a la i/quierda0. 2otar que !emos elegido tam"i'n una unidad del tipo Fraction.
9na (e/ completado% !acemos clic; en Ne+ para agregar la segunda columna% :Permea"ilidad<% a la cual asignamos md como unidad 1gura anterior% a la derec!a0. Finalmente% !acemos un segundo clic; en 2eR y agregamos :Espesor<% en m. )omo ya de1nimos todas las columnas% !acemos clic; en O, para cerrar esta (entana. 2otar que a!ora eiste la nue(a ta"la propiedades entre todas las ta"las del proyecto. )erramos la (entana de Edit !ro3ect %efnition !aciendo clic; en O, y retornamos al mapa "ase. Para cargar los datos% llamamos al Data -oader mediante )ile*/et E$ternal %ata*%ata Loader. )omo (emos% el data loader recuerda los
______________________________________________________________________ Armando Proyectos Simples con OFM arc!i(os que ya cargamos. )omo no los queremos (ol(er a cargar% !acemos clic; en Clear All y seleccionamos el arc!i(o AS)II con los datos que (an a la ta"la de propiedades% tal como se muestra en la siguiente 1gura. -uego !acemos clic; en Load y OFM carga los datos.
Finalmente% podemos (eri1car los datos cargados mediante Edit* !ro3ect %ata* !ropiedades. -a siguiente 1gura muestra el resultado.
)on este <imo paso damos por 1nali/ado el primer e*ercicio. A modo de repaso% resumiremos los principales puntos de esta sección.
____________________________________________________________________ Armando Proyectos Simples con OFM 8emos preparado los arc!i(os AS)IIs con los datos necesarios para el • nue(o proyecto. )omo el proyecto se "asa en el template de PA% no es necesario crear las • ta"las antes de la carga. Sin em"argo% los arc!i(os de datos de"en estar preparados para ser tomados por las ta"las de este template. • )reamos un directorio nue(o% (ac#o y creamos all# el nue(o proyecto. En la misma operación% !icimos la carga de nuestros arc!i(os de datos. 9na (e/ !ec!a la carga% re(isamos las asociaciones desde • EditGMapGAssociations.
• •
•
•
-uego a*ustamos un poco la cosm'tica del mapa "ase. Jeri1camos que los datos que se cargaron coinciden con los que especi1camos en nuestros arc!i(os AS)II. )reamos una ta"la nue(a llamada propiedades pues deseá"amos cargar este tipo de datos y el template PA no ten#a nada prede1nido. 9na (e/ creada esta ta"la% cargamos los datos desde el arc!i(o AS)II pre(iamente preparado. A su (e/% tam"i'n eplicamos algunos aspectos prácticos so"re los s#m"olos del mapa "ase.
)reación de proyecto usando un arc!i(o de de1nición )omparado con el anterior% este caso requiere solo un paso etra. En este e*emplo no (amos a usar ning&n template% con lo cual partiremos de la nada. Al no tener ninguna ta"la pre?de1nida la +unción principal del template0% es necesario crearlas antes de intentar la carga de los datos. 8emos (isto que una ta"la puede ser creada en modo interacti(o como se !a mostrado para la ta"la propiedades0. Sin em"argo% este m'todo sir(e para agregar ta"las a un proyecto eistente y no para cuando el proyecto es nue(o. En estos casos% es necesario preparar otro arc!i(o AS)II con los comandos necesarios para de1nir las ta"las necesarias. Este es el llamado arc9ivo de defnici&n .
El arc!i(o de de1nición Este arc!i(o posee una sintais algo complicada% sin em"argo% con el m#nimo de comandos se puede crear la estructura "ásica y completarla desde dentro del programa% en +orma interacti(a. Este es el modo en que (amos a proceder. Para más detalles del arc!i(o de de1nición% (er la sección correspondiente mas adelante. En general% el arc!i(o de1ne una a una las ta"las que deseamos incluir en el proyecto. )omo regla% se de"e de1nir la ta"la maestra primero y se de"e prestar especial atención a que la primer columna que en ella se de1na sea de tipo S67I2=. Esta será la columna pegamento primary ;ey0 del proyecto. El siguiente es un e*emplo de arc!i(o de de1nición m#nimo% con todas las ta"las que (amos a necesitar. ______________________________________________________________________ Armando Proyectos Simples con OFM // Archivo de definición básico. manual.def *TABLENAME MAESTRA Static Master
CAPA XCOORD YCOORD ALIAS POZO
STRING 20 FLOAT FLOAT STRING 10 STRING 30
*TABLENAME PRODUCCION Monthly DIAS FLOAT OIL FLOAT GAS FLOAT WATER FLOAT PDOIL CALCULATED*4 "OIL/DIAS" PDGAS CALCULATED*4 "GAS/DIAS" PDWATER CALCULATED*4 "WATER/DIAS" *TABLENAME INYECCION Monthly DIAS FLOAT WATERINJ FLOAT PRESION FLOAT PDWINJ CALCULATED*4 "WATERINJ/DIAS" *TABLENAME TEST Sporadic DATE OIL GAS WATER HORAS
En este arc!i(o apenas de1nimos las ta"las y sus columnas y no sus unidades% apariencia en plots% reportes% multiplicadores% etc.0 -a primera es la maestra% que llamamos MAES67A antes 450. -a primer columna +ue de1nida con el nom"re )APA que +uncionará de la misma manera que antes +unciona"a la llamada CE--0. -a segunda ta"la +ue llamada P7OD9))IO2 y será la que contenga los datos de producción. El resto es similar. Este arc!i(o se puede escri"ir desde cero o "ien se puede :ro"ar< de alg&n proyecto eistente cuya estructura quiera ser usada como modelo. Para o"tener un arc!i(o con la de1nición de las ta"las de un proyecto eistente% de"emos a"rir este proyecto y !acer )ile*E$port*Ta#le %efnitions. Esto crea el arc!i(o necesario y se (erá con mas detalles en secciones siguientes.
______________________________________________________________________ Armando Proyectos Simples con OFM Para nuestro caso% en el cual partimos desde nada% decidimos escri"ir este arc!i(o con los detalles m#nimos necesarios. 9na (e/ terminado% a&n de"emos preparar el resto de los arc!i(os AS)II de datos en +orma similar al caso anterior. Sin em"argo% es necesario notar que los nom"res de las ta"las a!ora son distintos por lo cual% algunas partes de estos serán di+erentes. -os siguientes cuadros muestran los distintos arc!i(os de datos preparados para ser cargados en las ta"las especi1cadas en el arc!i(o de de1nición. Ta#la Maestra //Contenido del archivo ejemplo.xy *METRIC *TABLENAME MAESTRA *CAPA *XCOORD *YCOORD *ALIAS *POZO P1:A 1243 5433 P1 ARG-NQN-A-P1x P1:B 1243 5433 P1 ARG-NQN-A-P1x P2:A 4232 1232 P2 ARG-NQN-B-P2p P2:C 4232 1232 P2 ARG-NQN-B-P2p P3:A 6600 5800 P3 ARG-MZA-B-P3x P3:C 6600 5800 P3 ARG-MZA-B-P3x
Ta#la de Sort //Contenido del archivo ejemplo.srt //Igual que el anterior *define *tanque *campo *tipo *end_define *well *tanque *campo *tipo P1:A A A OIL P1:B A A OIL P2:A A B OIL P2:C B B OIL P3:A SIN B GAS P3:C B B WINJ
Armado del proyecto 9na (e/ preparados los arc!i(os% estamos en condiciones de crear el proyecto. De"ido a que nuestro arc!i(o de de1nición no está completo% (a a ser necesario !acer el ensam"lado en dos etapas. Primero% la carga del arc!i(o de de1nición y su terminación en +orma interacti(a. Segundo% la carga masi(a de los datos.
Para ello% (ol(emos a crear un directorio (ac#o que contendrá al proyecto0 y colocamos un su"directorio %ata% donde incluiremos todos los arc!i(os AS)II de datos más el nue(o de de1nición. -uego% arrancamos OFM y seleccionamos )ile*Ne+ . Esto es similar a lo (isto anteriormente% le damos un nom"re y luego% no seleccionamos el template de Production Analyst% sino la opción de 2ser %efned % como se muestra en las siguientes 1guras.
______________________________________________________________________ Armando Proyectos Simples con OFM
9na (e/ !ec!o esto% OFM (uel(e a a"rir la (entana del %ata Loader. )omo di*imos% en primera instancia (amos a cargar &nicamente al arc!i(o de de1nición% por lo tanto% la (entana del Data -oader% de"er#a quedar como la siguiente 1gura. 9na (e/ !ec!o esto% clic;eamos -oad y OFM
arma la estructura del proyecto "asada en nuestro arc!i(o de de1nición. )omo no cargamos datos% la (entana del mapa aparece (ac#a. Este es el momento de terminar de dise>ar las ta"las. Si "ien están todas creadas% no se !a !ec!o ninguna de1nición etra mas allá de los tipos y nom"res. En particular% antes de cargar los datos% de"emos de1nir al menos las unidades. 8acemos esto (#a Edit*!ro3ect*%efnition. Seleccionaremos las ta"las% una a una y recorreremos las unidades que de"a asignarse a las distintas columnas que contengan n&meros y necesiten unidades. Empe/amos por la ta"la MAES67A% a modo de e*emplo. ______________________________________________________________________ Armando Proyectos Simples con OFM Para ello% seleccionamos la ta"la que apare/ca en a/ul% como en el e*emplo0 y !acemos clic; en el "otón )ields. Esto a"re la (entana de 0aria#le %efnitions . -uego% desde la lista de 0aria#le Name% seleccionamos las columnas que necesiten una unidad. En esta ta"la en particular% sólo las dos de las coordenadas% a las cuales les asignamos la unidad +eet +t0. 9na (e/ re(isadas todas las unidades de esta ta"la% con un clic; en O, cerramos la (entana de 0aria#le %efnitions. Sucesi(amente% desde la (entana de Edit Ta#le %efnition % pasamos por las siguientes ta"las y asignamos las correspondientes unidades a cada una de sus columnas.
-a siguiente lista muestra% para cada ta"la y columna% la unidad que es necesario asignar para las ta"las de este e*emplo3
)omo (erán% las unidades que les estoy sugiriendo son inglesas. Por a!ora% me (oy a limitar a una sugerencia% sin entrar en detalles so"re el tema de unidades tratado en pro+undidad en el OFM Administrator 8and"oo;0. En general% es más sencillo asignar las unidades desde el sistema ingl's o sea% con el Tools*Settin1s*2nits en no?m'trico0. El pro"lema es que !ay (arias unidades inglesas que tienen el mismo equi(alente en el sistema m'trico. Por e*emplo3
C: cu"ic +eet0 tiene un equi(alente a m8 Acre.:t tiene un equi(alente a m8 ;#l tiene un equi(alente a m8
Si asignamos las unidades con OFM seteado en m'trico% al querer asignar m nos (amos a encontrar con tres m% aparentemente iguales% de los cuales solo uno es el correcto. Para e(itar estas con+usiones% es muy recomenda"le !acer esto desde el sistema ingl's% luego poner a OFM en sistema m'trico y e(entualmente (eri1car los resultados.
)arga masi(a de datos Para completar el proyecto% el próimo paso comprende la carga de todos los datos. Esto de"e !acerse despu's de que las unidades !ayan sido seteadas. Si cargamos datos m'tricos y despu's asignamos la unidad correspondiente% (amos a tener pro"lemas. 2ue(amente% no entraremos en detalles pero recuerden esto3 cuando se cargan datos m'tricos con LME67I) en el arc!i(o de datos0% es necesario que las unidades est'n pre(iamente de1nidas. Si por el contrario% se modi1can las unidades con los datos ya cargados% será necesario recargar los datos.
______________________________________________________________________ Armando Proyectos Simples con OFM Para cargar los datos% de"emos llamar al cargador de datos3 )ile*/et E$ternal %ata*%ata Loader. En este pasos% !ay que asegurarse de "orrar el manual.de+% pues sino (ol(eremos al principio y perderemos las unidades de1nidas anteriormente. -uego seleccionamos los arc!i(os a cargar% como se indicó en el e*ercicio anterior. -a 1gura muestra este paso. 2otar que están todos los arc!i(os seleccionados. El de inyección tam"i'n% solo que está <imo en la lista y no se (e. 9na (e/ !ec!o esto% clic;eamos en Load4 OFM carga los arc!i(os y nos muestra el mapa "ase con
los tres s#m"olos. 2os queda repetir los pasos anteriores. -o primero a !acer% es (eri1car las asociaciones. Edit*Map*Associations 2otar que% como antes% el tipo de po/o para el s#m"olo (iene de la columna TI!O de la ta"la de sort. 2uestra in+ormación con el nom"re del po/o a!ora está en la columna !O
Para arreglar el mapa un poco más% podemos !acer lo siguiente3 • Edit*Map*Limits*/rid y seleccionar que nos muestre la grilla. • Edit*Map*-ellnames y seleccionar que nos muestre los alias. para mostrar la • 0ie+*Le1end leyenda que eplica el signi1cado de los s#m"olos.
______________________________________________________________________ Armando Proyectos Simples con OFM 9na (e/ !ec!as estas modi1caciones% el mapa cam"ia como se muestra en la siguiente 1gura.
)omo (emos% el resultado +ue eactamente el mismo de antes aunque a!ora% la estructura de la "ase de datos +ue pensada y de1nida enteramente por nosotros.
)ontrol de datos El próimo paso ser#a el de asegurarse de que los datos !ayan sido correctamente. Esto se !ace repitiendo los mismos pasos que mencionamos en el anterior e*ercicio% en la sección )ontrol de Datos% de la página $N. 7ecuerden que a!ora las ta"las y columnas tienen otros nom"res% por lo cual% al seguir las mismas instrucciones !a"rá que tener esto en cuenta.
______________________________________________________________________ Armando Proyectos Simples con OFM Ta#la Maestra
Ta#la de Sort
______________________________________________________________________ Armando Proyectos Simples con OFM %atos de !rod"cci&n de !56A
%atos de Inyecci&n de !86C
______________________________________________________________________ Armando Proyectos Simples con OFM %atos de Ensayos de !56;
Ta#la de !ropiedades
Para terminar este segundo e*ercicio% !aremos una (e/ más un "re(e repaso. 8emos con+eccionado un rudimentario arc!i(o de de1nición con las ta"las deseadas para este proyecto. •
______________________________________________________________________ Armando Proyectos Simples con OFM • 8emos preparado los arc!i(os AS)IIs con los datos necesarios para el nue(o proyecto% con los nue(os nom"res de ta"las y columnas elegidos en nuestro arc!i(o de de1nición. • )reamos un directorio nue(o% (ac#o y creamos all# el nue(o proyecto. En un principio% sólo cargamos al arc!i(o de de1nición. OFM creó un proyecto (ac#o% pero con la estructura de datos deseada. -uego% en modo interacti(o% de1nimos las unidades para cada una de las columnas num'ricas de nuestra "ase. • A continuación in(ocamos al data loader% y cargamos todos los arc!i(os de datos restantes. Esta (e/% como la ta"la de propiedades (ino de1nida por el propio arc!i(o de de1nición% incluimos el arc!i(o de datos con sus datos en la misma operación. (e/ !ec!a la carga% re(isamos las asociaciones desde • 9na EditGMapGAssociations. • -uego a*ustamos un poco la cosm'tica del mapa "ase. • Jeri1camos que los datos que se cargaron coinciden con los que especi1camos en nuestros arc!i(os AS)II.
7eusando Datos En los e*ercicios anteriores !emos (isto como construir proyectos sencillos "asados en un template o en un arc!i(o de de1nición. 6am"i'n (imos que un template es más cómodo siempre que la estructura se adapte a nuestras necesidades. Por el contrario% el arc!i(o de de1nición es más ei"le pero un poco más la"orioso. Eiste entre am"os una solución de compromiso y es la de :ro"arle< el arc!i(o de de1nición a un proyecto eistente. Este m'todo es muy con(eniente pues el arc!i(o no solo contiene la estructura de ta"las% sino todo lo relacionado con ellas3 unidades% apariencia en plots y reportes% multiplicadores% etc. En las siguientes secciones% mostraremos como !acer este tipo de operaciones y que detalles de"en tenerse en cuenta al preparar los arc!i(os AS)II de datos.
Arc!i(o de De1nición El arc!i(o de de1nición puede ser creado a partir de otro que ro"emos a alg&n proyecto modelo. A modo de e*emplo% a"ramos el proyecto DemoD@ que (iene con la distri"ución de OFM.
______________________________________________________________________ Armando Proyectos Simples con OFM
A!ora !acemos )ile*E$port*Ta#le %efnitions . OFM nos pregunta por un nom"re y crea un arc!i(o de de1nición "asado en la estructura de ta"las del proyecto demod". El arc!i(o es el siguiente3 *Datelabel DATE *TABLENAME HEADERID Static Master UNIQUEID STRING 20 *rh "" "HEADERID" "UNIQUEID" *rf 20 1 Right ALIAS STRING 20 *rh "" "HEADERID" "ALIAS" *rf 20 1 Right XCOOR DOUBLE *pn "HEADERID.XCOOR" *pa "Blue" "Solid " "None " 4 *u "None" *mu "1" "1" *id 0 *ma Yes None *da 0 0 -99999 *rh "" "HEADERID" "XCOOR" *rf 10 1 Right YCOOR DOUBLE *pn "HEADERID.YCOOR" *pa "Yellow" "Solid " "None " 4
)omo (emos% un arc!i(o de de1nición no solo contiene los nom"res de las ta"las y sus columnas% sino que tam"i'n puede contener cada uno de los posi"les atri"utos de ellas. 9n arc!i(o con todo esto correctamente de1nido !ace que el paso intermedio de asignación de unidades mostrado en el e*ercicio anterior sea totalmente innecesario. 9n "uen arc!i(o de de1nición contiene todo esto% solo que es di+#cil especi1carlo a mano. Analicemos alguna de las (aria"les% por e*emplo el petróleo de la ta"la de producción. … OIL
Estos comandos crean la columna OI- de tipo F-OA6. Sin em"argo% tam"i'n especi1can3 Lpn3 plot name% la leyenda que (a a incluirse en los plots cuando se use esta (aria"le. Lpa3 plot attri"utes% el color% tipo de l#nea% mar;ers y su anc!o para los plots. ______________________________________________________________________ Armando Proyectos Simples con OFM Lu3 units% las unidades de la (aria"le. Lmu3 multiplicadores de entrada y salida% para la carga y presentación. Lma3 mat! a(erage% para especi1car si el (alor de grupo es una suma o promedio. Lda3 data range% para especi1car los (alores máimo% m#nimo y de+ault. Lr!3 report !eader% que aparecerá en las tres l#neas de la ca"e/a del reporte. Lr+3 report +ormat% anc!o% decimales y alineación en los reportes. Etc. Eisten más atri"utos especi1ca"les mediante este arc!i(o% descriptos en el 8elp. u' es lo que queremos eplicar con esto ue una (e/ que tenemos un proyecto modelo% con todo de1nido a nuestro gusto% es muy +ácil clonarlo
para crear uno nue(o. Simplemente eportamos su arc!i(o de de1nición y lo usamos para nuestra nue(a "ase. Si el arc!i(o de de1nición está completo% podemos cargar todo en un solo paso% como se muestra a continuación. A"rimos OFM% !acemos )ile*Ne+. Elegimos el nom"re para nuestro nue(o proyecto. -uego indicamos que (a a ser "asado en un arc!i(o de de1nición 9ser De1ned0. )uando OFM a"re la (entana del data loader% no solo inclu#mos los arc!i(os de datos sino que el de de1nición tam"i'n. Al !acer clic; en -oad% OFM !ace todo en un paso. Solo resta re(isar las asociaciones y listo. )ile*Ne+
______________________________________________________________________ Armando Proyectos Simples con OFM
______________________________________________________________________ Armando Proyectos Simples con OFM OFM ensam"la las ta"las y carga los datos. Inmediatamente despu's% muestra el mapa con los resultados. -as asociaciones se de"en re(isar% como siempre.
Arc!i(os de Datos Eisten una serie de conse*os% reglas y trucos para los arc!i(os de datos. 6rataremos de eponerlas en esta sección. %atos n"m=ricos Se !an (isto pro"lemas cuando los datos num'ricos tienen decimales y estos están en el arc!i(o :a lo latino<% es decir% con la coma como separador decimal. Mi me*or conse*o es que tra"a*en siempre con el punto y *amás me/clen. Es tam"i'n recomenda"le que el mismo CindoRs est' seteado con este +ormato. E*emplos3 // Contenido del archivo Inyeccion.dat //Formato 1 *METRIC *TABLENAME WINJ *DATE *WIDAY *WINJ *WIPRE
%atos no n"m=ricos )uando el arc!i(o contiene datos no num'ricos tiras de caracteres0% es necesario seguir la siguiente regla3 Si la tira contiene espacios% es necesaria encomillarla. Si no !acen esto% OFM considera como dato a la primer parte antes del espacio. -o que siga% (a a ser asignado como dato siguienteT Por e*emplo% //Contenido del archivo ejemplo.srt *define *tanque *campo *tipo *end_define *well *tanque *campo *tipo P1:A “Tanque A” “Campo A” OIL P1:B “Tanque A” “Campo A” OIL P2:A “Tanque A” “Campo B” OIL P2:C “Tanque B” “Campo B” OIL P3:A “Sin Tanque” “Campo B” GAS //Contenido del archivo ejemplo.srt *define *tanque *campo *tipo *end_define *well *tanque *campo *tipo P1:A an!ue A "ampo A #I$ P1:B Tanque A Campo A OIL P2:A Tanque A Campo B OIL P2:C Tanque B Campo B OIL P3:A Sin Tanque Campo B GAS
Tanque &a a ir a 0tan1ue A &a a ir a 0ca%"o Campo &a a ir a 0ti"o ni A ni OIL &an a ser tenidos en cuenta
Alineaci&n -a alineación de los datos es innecesaria. 5a se !a mencionado esto antes pero lo repetimos para que la sección quede completa. Para separar dos datos en una l#nea%
______________________________________________________________________ Armando Proyectos Simples con OFM OFM necesita al menos un espacio o un ta"ulador o cualquier com"inación de ellos. Para OFM% los siguientes arc!i(os son igualmente (álidos. P1:B P2:A P2:C P3:A
)ec9as El campo de +ec!as tiene muc!as posi"ilidades. El +ormato depende del tipo de ta"la a la que se (a a cargar la +ec!a. Si la ta"la es mensual% no es necesario especi1car el d#a% por lo cual% las siguientes +ec!as son totalmente (álidas y equi(alentes3 19961201 961201 9612
Si la ta"la que (a a aceptar los datos es diaria o esporádica% el d#a del mes es necesario. En este caso% cualquiera de estos +ormatos es (álido y equi(alente3 19961201 961201
)omo OFM es compati"le con el pro"lema del a>o % tiene un algoritmo para discernir entre +ec!as am"iguas. )uando un a>o se especi1ca con solo dos d#gitos% OFM los trata de di+erente manera% de acuerdo al a>o especi1cado. Si el a>o nn es menor que % entonces lo considera como nn. Si por el contrario% es mayor o igual a % OFM lo considera como $Unn. Para tener total control% es con(eniente especi1car los cuatro d#gitos. Si esto no se !ace% OFM aplica la regla mencionada. E*emplos $N$ → $N$ $U$ → $U$ $ → $U$ $$ → $U$$ $ → $U$ UU → $UUU I1norando datos )uando cargamos un arc!i(o de datos% eisten dos maneras de decirle a OFM que ignore ciertos datos3 ue ignore cierta columna o que ignore cierta sección del 1nal del arc!i(o.
______________________________________________________________________ Armando Proyectos Simples con OFM Si queremos que OFM ignore cierta columna que está presente en el arc!i(o y no queremos cargar% usamos el comando LSIP como titulo de esa columna. E*emplo3 //Contenido del archivo ejemplo.srt *define *tanque *campo *tipo
OFM ignorará los datos de las columnas $ y % de"ido al comando especi1cado. Esto tam"i'n sir(e para arc!i(os de datos% por e*emplo3 // Contenido del archivo Inyeccion.dat //Formato 1 *METRIC *TABLENAME INYECCION *DATE *DIAS *WATERINJ *PRESION %&'IP *KEYNAME P3:C 199904 25.4 1100 400 )21 199905 30.0 1600 480 82.2 199906 27.8 1800 467 nada
El comando LSIP permite ignorar secciones (erticales del arc!i(o. Si necesitamos ignorar secciones !ori/ontales% se usa el comando LEOF. OFM ignora cualquier cosa despu's de este comando. Por e*emplo3 *METRIC *TABLENAME INYECCION *DATE *DIAS *WATERINJ *PRESION *KEYNAME P3:C 199904 25.4 1100 400 199905 30.0 1600 480 199906 27.8 1800 467 199907 25.4 1100 400 *EOF 1)))08 30.0 1+00 480 1)))0) 2,.8 1800 4+, 1)))10 2*.4 1100 400 -stos datos son inorados por #F/ 1)))11 30.0 1+00 480 1)))12 2,.8 1800 4+,
-os comandos LSIP y LEOF sir(en para arc!i(os de datos. 2o se aplican en el arc!i(o de de1nición. ______________________________________________________________________ Armando Proyectos Simples con OFM M"ltiplicadores Eiste una opción más para e(itar la edición innecesaria del arc!i(o. Esto !ace uso del multiplicador de entrada de1nido para la (aria"le en cuestión. Para modi1car este multiplicador% es necesario !acer3
Edit*!ro3ect*%efnition • Seleccionar la ta"la deseada • )lic;ear en )ields • Seleccionar la (aria"le deseada desde 0aria#le Name • Seleccionar la ore*a de Mat9 • Jeri1car el multiplicador de entrada Inp"t M"ltiplier 0 •
-a 1gura anterior muestra el proceso para la (aria"le /AS% de la ta"la !RO%2CCION. )omo el multiplicador de entrada seleccionado es M% cuando al cargar se lea un arc!i(o de datos destinados a esta columna% el n&mero del arc!i(o será interpretado como :miles de <. Si la unidad de1nida para =AS es scm standard cu"ic meter0% entonces un N en el arc!i(o de datos serán cargados como 8'((( scm de gas. Si por el contrario% el multiplicador de entrada se de*a en 5% el mismo N será interpretado como apenas 8' scm. El multiplicador de salida es sólo para la presentación de esta (aria"le. Por e*emplo% si !acemos un plot% el gas estará en scm el (alor se leerá so"re un e*e que marque N y la leyenda especi1cará que el gas está en scm0. Si por el contrario% el multiplicador de salida se selecciona tam"i'n en M% entonces el e*e indicará N% pero la leyenda dirá que el gas está en Mscm miles de scm0.
______________________________________________________________________ Armando Proyectos Simples con OFM E*emplos3
2nidades Finalmente% !a"laremos respecto de las unidades. OFM tra"a*a con dos sistemas de unidades3 M=tricoGIn1l=s. El sistema se selecciona mediante Tools*Settin1s*2nits .
Desde esta (entana% se selecciona el sistema deseado para la presentación de los datos% pero nada tiene que (er con la carga de ellos. -a +orma de decirle a OFM que los datos a cargar están en sistema m'trico es mediante la inclusión del comando LME67I) en el arc!i(o de carga. OFM no tiene en cuenta el seteo de 9nits a la !ora de ______________________________________________________________________ Armando Proyectos Simples con OFM !acer la carga. Sólo respeta a la presencia o ausencia0 del comando LME67I) en el arc!i(o de carga. Por lo tanto% se puede estar tra"a*ando en sistema ingl's y cargar sin pro"lemas un arc!i(o con datos m'tricos% siempre que este incluya el comando LME67I). -a situación opuesta es igualmente (álida.
Agregando 2ue(os Datos a Proyectos de OFM )uando reci"imos nue(os datos% es necesario agregarlos a nuestro proyecto de OFM. Esta sección eplica cómo !acer esto N. El procedimiento que eplicaremos será el mismo para el caso de desear corregir alg&n (alor ya cargado3 simplemente lo (ol(emos a cargar. En general% cuando uno recarga un dato que ya eiste% OFM reempla/a su (alor por el nue(o. 2o conser(a el (alor anterior sino que lo actuali/a. 7ecordemos que para poder agregar un dato a las ta"las de producción% inyección% ensayos o propiedades% es necesario que el due>o de estos datos est' en la ta"la maestra. Esto !ace que podamos !acer una distinción entre dos casos di+erentes3 )uando los datos pertenecen a entidades po/os o capas0 ya eistentes en la ta"la maestra. • )uando los datos pertenecen a entidades po/os o capas0 que no eisten en la ta"la maestra. •
Entidades Eistentes Si la capa o po/o0 ya eiste en la ta"la maestra% entonces agregar sus nue(os datos es tan +ácil como preparar un arc!i(o AS)II apropiado y cargarlo. Por e*emplo% si deseamos agregar datos a P$3A del mes de Kulio del UU% entonces los arc!i(os ser#an3 %atos de !rod"cci&n // Contenido del archivo produc.prd // Formato 1 *METRIC *TABLENAME PRD *WELL *DATE *DAYS *OIL *GAS *WATER P1:A 199907 23 73 109 23
%atos de Ensayos // Contenido del archivo tests.dat // Formato 1 *METRIC *TABLENAME TEST *DATE *OIL *GAS *WATER *KEYNAME P1:A 19990711 2.34 3.90 0.66 // Contenido del archivo tests.dat // Formato 2 *METRIC *TABLENAME TEST *WELL *DATE *OIL *GAS *WATER P1:A 19990711 2.34 3.90 0.66
Si deseamos agregar datos a más de un po/o o capa0 a la (e/% podemos poner todo esto en un mismo arc!i(o. Por e*emplo% para producción3 // Contenido del archivo produc.prd // Formato 1 *METRIC *TABLENAME PRD *WELL *DATE *DAYS *OIL *GAS *WATER P1:A 199907 23 73 109 23 1* P1:B 199907 20 60 0 // Contenido del archivo produc.prd // Formato 2 *METRIC *TABLENAME PRD *DATE *DAYS *OIL *GAS *WATER *KEYNAME P1:A 199907 23 73 109 23 *KEYNAME P1:B 1* 199907 20 60 0
Para modi1car un dato eistente% se recarga el arc!i(o AS)II con el dato modi1cado. Por e*emplo% si la producción de agua de P$3@ de Kulio del UU era $.B y no $B% como se cargó con el arc!i(o anterior% simplemente editamos el arc!i(o AS)II y lo (ol(emos a cargar. // Contenido del archivo produc.prd // Formato 1 *METRIC
Entidades nue(as Si la entidad no eiste en la ta"la maestra% de"emos preparar los arc!i(os necesarios para agregarla all#. Supongamos que se !a per+orado un nue(o po/o P% que produce de una sola capa ). 2os !an en(iado los datos de producción de esta nue(a capa% *unto con los primeros ensayos. )omo no eiste P3) en nuestra "ase% antes de poder cargar sus datos de"emos agregarlo a la ta"la maestra. Si "ien no es indispensa"le para poder cargar los datos mencionados0% al agregar el P3) a la ta"la maestra% tam"i'n de"er#amos incluir sus datos en la ta"las de sort y propiedades. Por lo tanto% los arc!i(os necesarios ser#an3 Ta#la Maestra //Contenido del archivo nueo.xy *METRIC *TABLENAME XY *WELL *XCOORD *YCOORD *ALIAS *WELLBORE P4:C 2200 6100 P4 ARG-NQN-A-P4P
Ta#la de Sort Si recuerdan% !a"#amos mencionado que antes de poder cargar datos a la ta"la de Sort% !a"#a que de1nir sus columnas y que esto se !ac#a en la primer parte del arc!i(o L.srt. El siguiente cuadro muestra un e*emplo del arc!i(o para agregar los datos de P3) a la ta"la de sort. //Contenido del archivo nueo.srt *define *tanque *campo *tipo *end_define *well *tanque *campo *tipo P4:C A B OIL
______________________________________________________________________ Armando Proyectos Simples con OFM Sin em"argo% como las columnas de esta ta"la ya están de1nidas nuestro proyecto ya contiene una ta"la de sort y con esas mismas columnas0% podemos crear un arc!i(o más simple que no incluya estos comandos y el resultado será totalmente equi(alente recrear una columna de sort con el mismo nom"re no a+ecta a los (alores que ya est'n cargados en ella0. Este arc!i(o ser#a3 //Contenido del archivo nueo.srt //Notar que no contiene los comandos *define … *end_define //ya que estas columnas ya están en la tabla de sort. *well *tanque *campo *tipo P4:C A B OIL
Ta#la de !ropiedades // Contenido del archivo propied.dat *METRIC *TABLENAME PROPIEDADES *WELL *POROSIDAD *PERMEABILIDAD *ESPESOR P4:C 0.12 1.6 0.3
%atos de Ensayos // Contenido del archivo tests.dat // Formato 1 *METRIC *TABLENAME TEST *DATE *OIL *GAS *WATER *KEYNAME P4:C 19990713 2.34 3.90 0.66 // Contenido del archivo tests.dat // Formato 2 *METRIC *TABLENAME TEST *WELL *DATE *OIL *GAS *WATER
P4:C 19990713 2.34 3.90 0.66
______________________________________________________________________ Armando Proyectos Simples con OFM
)onclusiones )omo (imos% es relati(amente sencillo crear un proyecto simple con OFM. -a primer parte de este apunte se concentró en descri"ir la :orma en >"e O)M 1"arda los datos. Espero que realmente presten atención a esta parte pues la comprensión de ella es de gran importancia para solucionar e(entuales pro"lemas. -uego mostramos la creación de un proyecto "asado en el template PA. El mismo procedimiento ser#a adecuado para "asarse en el otro de los templates disponi"les3 el template =eouest. 9sar templates nos a!orra muc!o tiempo% sin em"argo% nos limita en cuanto a los nom"res y ta"las que componen el proyecto. 2o es para preocuparse demasiado el !ec!o de que eistan ta"las que no usamos pues% si no se les carga dato alguno% consumen recursos desprecia"les y no a+ectan a la per+ormance general del proyecto. Siguiendo esto% eplicamos como construir un proyecto "asado en "n arc9ivo de defnici&n% creado a mano m'todo limitado% de"ido a la comple*idad de los comandos que se pueden incluir en este arc!i(o0 y tam"i'n utili/ando una de1nición "asada en un proyecto eistente usado como modelo. Durante estas eplicaciones% !icimos algunas ad(ertencias so"re el correcto tratamiento de arc!i(os con (alores en sistema m'trico con el comando ?METRIC0 y la importancia de tener las "nidades de1nidas antes de cargar este tipo de arc!i(os. 6am"i'n se !i/o mención al tema de s@m#olos y solo se trató el caso en el que las siglas pro(ienen de una de las columnas de la ta"la de sort. -a parte siguiente se concentró en detalles que es con(eniente sa"er a la !ora de preparar los arc!i(os de datos AS)II% para evitar ediciones intensivas innecesarias . Finalmente% eplicamos "re(emente cómo cargar nue(os datos o agregar0 a un proyecto armado. 2o se !an tratado temas igualmente importantes% tales como la creación de un set de varia#les calc"ladas para el proyecto. Solo nos limitaremos a decir que cuando nos "asamos en un template% 'ste ya incluyen un set m#nimo. Sin em"argo% cuando partimos de un arc!i(o de de1nición personali/ado% el proyecto resultante no tendrá ninguna (aria"le calculada !asta que se de1nan interacti(amente o mediante un arc!i(o AS)II0. Esto no de"er#a ser de gran preocupación pues C0 ;"ilder % uno de los módulos de OFM Plus que se incluyen a partir de OFM .% contiene una planilla para construir% en minutos% un set etremadamente rico de (aria"les calculadas.