.. moduleauthor:: Paul Ross .. sectionauthor:: Paul Ross .. Technical Note on LIS Indexing. .. _TotalDepth-tech-plotting: .. toctree:: :maxdepth: 2 ############################### Plotting Wireline Data ############################### Aside from the LogPass (the data structure that holds the frame data) the plot layout needs to be specified. There are two ways that TotalDepth does this: * A plot specification that is *integral* to the file. For example; LIS files may well have FILM and PRES tables within them that configure the plot as the recording engineer (or software) intended. In this case TotalDepth can make those plots directly. * A plot specification that is specified *externally* to the file. TotalDepth supports one such way; using LgFormat XML files and these are described below. ******************************************* Wireline Files With Integral Plot Data ******************************************* This applies to LIS (and possibly RP66 files). The LAS file specification does not describe any plot specification at all. LIS Plot Specification ========================== There are a number of table-like Logical Records (type 34) within a Log Pass that can specify the plot layout. As a minimum TotalDepth.LIS needs a ``FILM`` and a ``PRES`` record. FILM Record ----------------------- A dump of a ``FILM`` Logical Record might look like this:: Table record (type 34) type: FILM MNEM GCOD GDEC DEST DSCA ----------------------------- 1 EEE ---- PF2 D200 2 E4E -4-- PF1 DM The columns are: ======== ========================== Column Description ======== ========================== ``MNEM`` The (logical) name of the output, TotalDepth uses this as part of the plot file name. ``GCOD`` The coding of the tracks. ``E4E`` means three tracks which have linear, log (4 decades), linear. With three tracks the X axis track (depth for example) appears between the first and second tracks. ``GDEC`` The number of logarithmic decades for each track, ``-`` for linear. ``DEST`` The physical destination (in the logging unit) of the plot. Ignored. ``DSCA`` The depth scale, encoded. For example ``D200`` means 1:200. ======== ========================== PRES Record ----------------------- A dump of a ``PRES`` Logical Record might look like this:: Table record (type 34) type: PRES MNEM OUTP STAT TRAC CODI DEST MODE FILT LEDG REDG ----------------------------------------------------------------------------------- SP SP ALLO T1 LLIN 1 SHIF 0.500000 -80.0000 20.0000 CALI CALI ALLO T1 LDAS 1 SHIF 0.500000 5.00000 15.0000 MINV MINV DISA T1 LLIN 1 SHIF 0.500000 30.0000 0.00000 MNOR MNOR DISA T1 LDAS 1 SHIF 0.500000 30.0000 0.00000 LLD LLD ALLO T23 LDAS 1 GRAD 0.500000 0.200000 2000.00 LLDB LLD ALLO T2 HDAS 1 GRAD 0.500000 2000.00 200000. LLG LLG DISA T23 LDAS 1 GRAD 0.500000 0.200000 2000.00 LLGB LLG DISA T2 HDAS 1 GRAD 0.500000 2000.00 200000. LLS LLS ALLO T23 LSPO 1 GRAD 0.500000 0.200000 2000.00 LLSB LLS ALLO T2 HSPO 1 GRAD 0.500000 2000.00 200000. MSFL MSFL ALLO T23 LLIN 1 GRAD 0.500000 0.200000 2000.00 11 DUMM DISA T1 LLIN NEIT NB 0.500000 0.00000 1.00000 12 DUMM DISA T1 LLIN NEIT NB 0.500000 0.00000 1.00000 ... ======== ========================== Column Description ======== ========================== ``MNEM`` The (logical) name of the output curve. Note multiple curves might come from one ``OUTP``. ``OUTP`` The source of the curve. ``STAT`` Status, is this curve to be plotted. ``TRAC`` Which track the curve should be plotted on. ``CODE`` The line coding, dot, dash etc. ``DEST`` The logical film that this curve is sent to. Can be ``BOTH`` and so on. ``MODE`` What to do when the curve goes off scale (wrap round the track for example). ``FILT`` Filtering. Unused. ``LEDG`` Value of the left edge of the plot. ``REDG`` Value of the right edge of the plot. ======== ========================== Records Needed for a LIS Plot --------------------------------- As a minimum TotalDepth needs a ``FILM`` and ``PRES`` plot, using these TotalDepth can produce a plot identical to that when the data was recorded. In future releases TotalDepth might also support these Logical Records for plotting: * ``AREA``: Describes shading between curves on a plot. * ``PIP``: Describes integration marks on the plot such as integrated transit time, integrated hole volume etc. * ``VDL``: Describes presentation of waveform amplitude data. ******************************************* Wireline Files With External Plot Data ******************************************* This can apply to any wireline file and it means using an external configuration file to decide the plot layout. For example; LAS files do not have any plot specification (the LAS standard precludes this). The presentation of the plot is made with an external plot specification. These external plot specifications are numerous and varied. TotalDepth currently supports one such specification: the XML `LgFormat` or `LgSchema` files. LgFormat XML Files ===================== These appear to originate from some of Schlumberger's "free" software. Here is an example LgFormat XML file for plotting `HDT logs <../copy_to_html/plots/HDT.xml>`_ .TotalDepth supplies an number of examples of these. There are a number of problems [#]_ with the LgFormat which is why TotalDepth only supports a subset of it while we look for something better. .. rubric:: Footnotes .. [#] For example the ``LgCurve`` element content of ```` and ```` is numeric, without units. This robs a compliant implementation of the opportunity of converting frame data, say in ``"V/V "`` to plot data say ``"PU "`` which might be far more appropriate. Truth in advertising prompts me to say that LIS ``PRES`` tables have the same flaw but they have a reasonable excuse that they are *per file* specification rather than a global specification.