Sie sind auf Seite 1von 43

BobCluff

TheDiscoveryGroupInc.
RMAGSpringshortcourse,
20April2009
Objectives
Weassumeyoualreadyknowhowtousethe
software,
Ourgoalistopresentaseriesofusertipsandtricks
thatwill:
Improveworkflows
Letyoudothingsthatmaynothavebeenobvioushow
todo
Workaroundlimitationsinthesoftwareorsubstitute
forfeaturesthatarenotexplicitlydesignedintothe
package
Generallysaveyoutime,effort,andmoney
IamNOT goingtoteachaloganalysisschooltoday
Loganalysistipsandtricks
Petrahasageneralpurpose,flexiblelogcalculationengine
builtintoit.
ItdoesNOTaimtobeahighendpetrophysicalmodeling
ormodeldevelopmentpackage
DISCLOSURE: DiscoveryGroupdoesnotattempttoforcefit
Petraintothatmold,wehaveseveralspecialized
petrophysicspackagesavailableforourworkflows
WeDOusePetraforbatchprocessingoflargenumbersof
wells,forcomputingporevolumesandHCPVoverentire
fields,andforitsintegrationwithcrosssections,mapping,
andotherwelldata
WeuseitEVERYDAYinourpetrophysicalstudies
WhatPetradoeswell
Manageandorganizelogdata,includingsupportfor
logaliases
Allowyoutosplicecurvesorlogruns,editcurves,&
performsomebasiccurvenormalization
Computeshaliness,porosity,andfluidsaturations
Computeflagcurvesusingavarietyofcriteria
Computenetpay,netofuserdefinedcutoffs
Runprocessesonlargenumbersofwellsveryquickly
Allowsyoutowriteandsaveflexibleuserequations,
andtosomeextentuserprograms
WhatPetradoesnotdo..
Runvendorandtoolspecificenvironmental
corrections
Support1or2pointnormalizationusinghistogram
overlays
atleastwithoutusingaprinterandalighttable
Usestandardcrossplotroutinestocomputeporosity
frommultiplelogs(e.g.neutrondensity)
Computemultimineralvolumes(e.g.VdolVlsVqtz)
Linktooutsidecodesinstandardlanguages(e.g.
VisualBasic,C++,Java,etc.)
Leftforanotherday
Normalization
Crossplotting
Multimineralmodels
TheAdvancedUserModels language
A.HowdoIbringlogdataintoPetra,andwhatarethe
pitfallsofusingthebatchLASimportfunction?
APInumberscritical,cantlivewithem,cantlive
withoutem
WrongAPI=WrongassociationwithawellinPetra.
Youcannotassumethevendorordigitizergotitright.
Solutions:
Importwellsoneatatime
OpeneachLASfileinatexteditorandadd/fixthem
ExtracttheAPInumbersfromtheLASfiles,editthem
inaspreadsheet,writethembackintotheLASfiles.
B.HowdoIimportLASheaderdatatoPetra,andwhat
arethedifferencesbetweenLAS1.2and2.0formats?
LAS1.2and2.0headersuseadifferentformatforthe
Wellinformationblock,includinginformationsuch
astheAPInumber
PETRArecognizesbothformats,andautomaticallyflips
themintothestandard(2.0)order
Thecriticaldatatocaptureareanythingusedinlog
calculationsorusefulforlogevaluations
Loggingdate,runnumber,andservicecompany
Mudtype,weight,Rm@T___,Rmf@T___
Maxrecordedtemperature,LTD,baseofcsg
LAS version 1.2 Well Information Section.
~Well Information Section
#MNEM.UNIT Data Type Information
#--------- ------------- ------------------------------
STRT.M 635.0000:
STOP.M 400.0000:
STEP.M -0.1250:
NULL. -999.25:
COMP. COMPANY: ANY OIL COMPANY INC.
WELL. WELL: ANY ET AL A9-16-49-20
FLD . FIELD: EDAM
LOC . LOCATION: A9-16-49-20W3M
PROV. PROVINCE: SASKATCHEWAN
SRVC. SERVICE CO: ANY LOGGING COMPANY INC.
DATE. LOG DATE: 13-DEC-86
UWI . UNIQUE WELL ID: 100091604920W300
LAS version 2.0.
~Well Information Section
#MNEM.UNIT VALUE/NAME DESCRIPTION
#-------- -------------- ---------------------
STRT.M 635.0000 :START DEPTH
STOP.M 400.0000 :STOP DEPTH
STEP.M -0.125 :STEP
NULL. -999.25 :NULL VALUE
COMP. ANY OIL COMPANY INC. :COMPANY
WELL. ANY ET AL 12-34-12-34 :WELL
FLD . WILDCAT :FIELD
LOC . 12-34-12-34W5M :LOCATION
PROV. ALBERTA :PROVINCE
SRVC. ANY LOGGING COMPANY INC. :SERVICE COMPANY
DATE. 13-DEC-86 :LOG DATE
UWI . 100123401234W500 :UNIQUE WELL ID
LookattheorderoftheData
TypeandInformationinan
LAS1.2header
vs.theorderinanLAS2.0
header.Theorderisnow
consistentinalldatablocks
Headersareimportedseparately,andtheheader
importwillcreateanewwellifitcannotfindanAPI
numbermatch
Themappingbetweenheaderdataandzonedata
fieldsisvendorspecific withafewexceptionsthe
LASstandarddoesnotspecifyparameterorcurve
mnemonics.Loggingcompaniesanddigitizerscook
uptheirownabbreviations!
Youcansavethemappingforreuse.
Ithastoalreadyexisttobeusedinabatchimport.
1.2file
2.0file
C.HowdoIusecurvenamealiases,andhowshould
theybeorganized?
Aliasesarepublicandprojectwide.
AliasesareNOTnested.
Youneedtolistcurvesinthehierarchyyouwantthem
tobeused.E.g.,ifyouwanttouse2ftresolution
resistivitycurvesinpreferenceto1ftcurves,putthem
higherinthelist.
Werecommendeither:
Usethemostcommoncurvenamesasyouraliases(GR,
NPHI,DPHI),andaliasallthesynonymstothem;or
SetupspecialaliaseslikeALIAS_GR soitisobvious
whicharethealiasedcurvenames
SincePetrausesthe
firstcurveitfindsin
analiaslist,ifyou
havemultipleruns
withdifferentcurve
namesyouwillneed
tosplicerunsto
createasinglecurve
thatappearshigher
inthealiaslist
D.Ihavewaytoomanycurvenames howcanIclean
itupandsimplifymycurvedatabase?
Deanalreadytalkedaboutthis.
Weexportthecurvelisting,withwellcounts,toaspreadsheetbefore
anyseriousorganizing
Ithelpstocategorizecurvesbyloggingvendor,tooltype,vintage,&
datasource
Usesuffixesandprefixestosetapartspecialcurveclasses(flags,
aliases,normalizedcurves,etc.)
Consideradjective/nounorder.
Thereisareasonthemilitarynamesthingsthewaytheydo!
Weliketopreserveoriginalloggingvendormnemonics,thereisoften
informationinthemthatmightnotbeobvioustoanonspecialist
e.g.anAtlasCNCandCNCFaredifferent
Porositylogsareonlyusefulwhenyouknowthematrixassumptions
(SS,LS,DOL),makethempartofthename!
E. Myporositylogsarevariouslyindecimal(v/v)and
percent(pu)units.HowdoIcleanthatupsotheyplot
correctlyoncrosssectionsandcomputesaturations
right?
Findthemallfirst
Easiesttocomputelogstatisticsandthenusewell
selectbydatacriteriafunction
Convertthemalltothesamebasis.Mostequations
wantfractionalporosity.
Recomputethestatsandcheckyourwork
Pitfall:logrunchangeswithdifferentvendors.Thisis
acleanupproblemthatneedstobefixedwhencurves
arespliced.
F.Someofmywellshavedensityporosity,othershave
bulkdensity,someboth,whatshouldIuseandhowdo
Igetthemallonacommonbasis?
Asbefore,findthemfirstusingthewellselectbydata
criteriafunctions.
DensityporositycurvesareALWAYSambiguous,
sincetheymadeamatrixdensityandfluiddensity
assumptioninthefieldwhencurvewascomputed
LASheadersrarelyrecordthesevalues.Youhaveto
lookthemuponthepaperlogs/rasters.
Bewareofmidlogscalechanges
Enterthevaluesaszoneparameters;wesetupaspecial
petrophysics orlogging zoneforthisandotherdata.
G.SomeofmywellshaveneutronporosityinLSunits,
othersareinSS,whatshouldIuseandhowdoIget
themallonacommonbasis?
EqnstoconvertfromLSSSandSSLSarenot
publishedbytheservicecompanies
Youcandigitizethechartbooksandfiteqnstothecurves
yourself
LSunitsarethetruebasisofneutronlogging.Other
matricesareoutputasaconvenienceforloganalysison
thehoodofaChevy
Therelationshipsareallnonlinearexceptinlimestone.
Theyvaryfromcompanytocompany,tooltotool.
Findingproblemwellsisdifficultbecausethemnemonics
generallydonotincludethematrix.
Lookthemuponthepapercopies
Plotspecialxsectionsandlookfordistinctiveseparation
20%
25%
Highendpackagescompute
bothporosityand%mineral
volumesbasedoninterpolation
ofisoporositylinesandmineral
endpoints
SS
LS
SH
Usefulresources(outsidePetra)
Didger4.0 onscreendigitizingsoftwarefromGolden
Software
Grapher7.0has11predefinedcurvefitting
algorithmsthatfitmostcommonchartbookcurves
Excelhasverybasiccurvefittingfunctionality;you
canalsopurchaseanaddinthatexpandsonthis
Atthehighend,TableCurve2DandTableCurve3Dfit
thousandsofpredefinedfunctionstoadataset
Learnsomelinearalgebraifyouwanttodoit
yourself
H.WhatisthebestwaytobringcoredataintoPetra,
andwhatshouldgointothecoretabvs.whatgoesinto
thelogcurvedatabase?
CoredataliveintwoplacesinPetra:
TheCoresTab,whichstoresinformationoncoretype,
coredinterval,datecored,recovery,etc.Thiscanbe
postedonlogsandsections
TheLogstab,whereactualnumericalcoredatais
storedwiththelogdata
CoredatacanbeimportedasLASorasASCIIfiles,
depthshifted,plotted,andmanipulatedlikeanylog
data
CoredepthshiftscanberecordedontheCores
tab,orasremarkstoeachcurveintheLogtab
Theseareglobalremarks(appliestothe
curveinallwells
Thesearelocal
remarks
I. HowdoIdealwithdataondifferentdepth
increments(e.g.0.5ftlogdataand1ftcoredata)?
Petraisdatabaseoriented,nottiedtoaspecificframe
incrementlikeanLASfile
Itallowsdataondifferentdepthstepstocoexist
TheproblemariseswhenyouEXPORTdatatoanLAS
file,becauseLASfilesrequireaspecificstepvalue
Petrawillnotresamplecurvesonthefly,butitwill
allowyoutoonlyexportdatawithaspecificsample
rate
Bestsolutionistoresamplecurvespriortoexport
usingLogTransformationsTransformsResample
curves
Note:thisfunctionOVERWRITEStheoriginalcurve,so
youmightwanttoworkonacurvecopy
Also,becarefulwhenresamplingcoredata,as
interpolatedvaluesmightnotbewhatyouwant
Usewithcore
data!
J.Whatistheeasiestandcleanestwaytosplice
curves,nullbaddata,toolpickup,etc.inPetra?
EasiestisintheLogCurvePreviewer,accessedfrom
theLogstab
Youcannullsections,smooth,anddespikecurvesall
inthispanel
CurvesplicingisdoneinLogsSpliceCurves
K.IwanttobaselineshiftallmySPlogssotheyareat
~0mValongtheshalebaseline.WhatdoIdo?
Thisisquickifyoujustneedabasicbaselineshift
Startbycleaningupthecurves,includingnullingtool
pickupandintervalsbehindcasing
Ifyoudont,thosesectionswillbecountedinthelog
statisticsandcouldskewyourbaseline
Fixanyobviousoffsetsbetweenloggingruns
ComputeFromLogsStatistics,andcalculatethe
95
th
percentileoftheSPusingthearithmeticmean.
Savethisinanappropriatezone(likePetrophysics)
UsingComputeFromLogsEquationExpression,
SP_BLS=SP PC95SP
AssingtheappropriatecurvenametoSP,usingaliases
ifnecessary,andassignthezoneparametercalculated
beforetoPC95SP
AllofyourSPlogswillbebaselineshiftedtoavalueof
zeroatthe95
th
percentile.
Thisdoesnotcorrectfordriftwithdepth,itisa
simplebaselineshift.
Unlikethenormalizationfunction,thisdoesnot
rescaletheSPcurves itisjustanoffsetcorrection.
L. Whatismeantbynetpay andhowdoIcomputeit
inPetra?
Petrasnetpay moduleisactuallyageneralpurpose
summationmodule,accessedviaCompute FromLogs
Footages(ReservoirProperties).ItisoneofPetrasgreatest
strengths.
Definitions:
GROSS=thetotalinterval.CalculatedusingtheCompute
FromZonesIsopach function.
GROSSSAND=sandnetofashaliness(GR)cutoffonly,set
byCondition4intheLogFootageSummationscreen.
NETSAND=sandnetofshalinessandporositycutoffs,
ignoringfluidsaturation.Thisissetbyconditions1and4in
Petra.Engineerswantthistodefinethetotalcontainer
volume.
NETPAY=sandstonenetofshaliness,porosity,and
watersaturationcutoffs.PetraalsoaddsaPermeability
conditionandaUserLogcondition,forexampleaflag
curvetoexcludecertainlithologies(e.g.coal)
BecausePetradefinesnet aspassingALLchecked
conditions,youneedtobecareful.Ifyouwantto
calculatenetporevolume,irrespectiveofSw,you
cannotchecktheSwcondition,orelseyouhaveto
openupthecutoffrange.
Weoftenrunthismoduletwice,oncetogetreservoir
volumes,asecondtimetogetnetpay volumes.
Firstrungetsnetreservoir
properties
Secondruncomputes
pay properties
Youcancreateflagcurvesinthismoduleonthe
Capturetab
Youcansavepredefinedsetupscreensastemplates
andruntheminBatchmodetodomorethanone
step,orcalculatenetpaysensitivitytosomekey
criteria
e.g.netpay>6%,>8%,and>10%
M.HowdoIcomputeSwonalargenumberofwells
overabigareawheresomekeyparameter,likeRw,
variesfromwelltowell?
Youhavetwochoices:
Runeachzoneindividuallyusingequationexpressions,
whichcanbesavedinyourequationlist.
Or,usetheComputeFromLogsAdvancedLog
TransformsUserModelLogTransform module.
ProgramminglanguageissimilartoBasicandis
undocumented.Onlytheexamplesprovidedwith
Petraserveasaguidetowhatcanbedone.
GOTO,IFTHEN,BEGINENDandDONEstatements
Allinputlogs,constants,andoutputlogsaredeclared
atthestart.Ifthemodelcompiles,yougetascreen
thatallowsyoutoassignallofthosetologsorzone
parametersinPetra.
Youcanrunthemodeloverselectedzonesorthe
entirewell.

Das könnte Ihnen auch gefallen