Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Author's personal copy ARTICLE IN PRESS Computers & Geosciences 35 (2009) 2151–2159 Contents lists available at ScienceDirect Computers & Geosciences journal homepage: www.elsevier.com/locate/cageo SedLog: A shareware program for drawing graphic logs and log data manipulation$ Dimitrios Zervas a,c, Gary J. Nichols a,b, Robert Hall a, Helen R. Smyth a, Charlotta Lüthje b, Fionn Murtagh c, a Department of Earth Sciences, Royal Holloway, University of London, Egham TW20 0EX, UK University Centre on Svalbard, PO Box 156, Longyearbyen N9170, Norway c Department of Computer Science, Royal Holloway, University of London, Egham TW20 0EX, UK b a r t i c l e in fo abstract Article history: Received 24 December 2008 Received in revised form 14 February 2009 Accepted 17 February 2009 SedLog is a free multi-platform software package for creating graphic sediment logs providing an intuitive graphical user interface. The graphic sediment logs generated by SedLog can be exported as PDF, Scalable Vector Graphics (SVG), or JPEG for use by other drawing applications or for publications. Log data can be imported and exported in Comma Separated Values (CSV) format. The logs can also be printed to any paper size the user wants. Zoom In, Zoom Out, Fit page, Fit Height and Fit Width facilities are also provided to enable the user to customise the workspace size. & 2009 Elsevier Ltd. All rights reserved. Keywords: Sedimentology Log Lithology Software Java Graphics 1. Introduction The graphic sedimentary log is the standard method used by geologists to present data from successions of rocks (Collinson et al., 2006). These successions may be from cliffs or quarry faces where rocks are exposed, or in core drilled through layers of rocks in the subsurface. From each bed data are recorded and summarised in a largely diagrammatic format to create a representation of the strata in a form that can easily be related to the bed characteristics. The thickness of the bed is measured, the lithology determined (sandstone, mudstone, limestone, etc.), the presence of any structures, such as ripple marks, noted and other features such as the fossil content recorded. This information is presented on the graphic log using a vertical scale for the bed thickness, patterns to represent different lithologies (‘dots’ for sandstone, ‘bricks’ for limestone and so on) and symbols to illustrate structures and fossils. Other data that may be recorded and indicated on the log may include other features such as colour, the locations where rock samples have been taken or other $ Latest version of SedLog can be downloaded from www.sedlog.com, a site hosted by Royal Holloway University of London.  Corresponding author. Fax: +44 1784 439786. E-mail address: fmurtagh@acm.org (F. Murtagh). 0098-3004/$ - see front matter & 2009 Elsevier Ltd. All rights reserved. doi:10.1016/j.cageo.2009.02.009 specific information from different points in the succession. Logs may be used to compare strata between different areas and data may be extracted from the log to analyse trends in bed thickness, distribution of lithologies or other features. They can be drawn in the field as summary sketch logs, or on log sheets that contain all the data from the succession and later drawn up in a neater form for reports or publications (Tucker, 2003; Stow, 2005; Collinson et al., 2006). Although they are most commonly used by sedimentologists, they are widely used by geologists working in many other fields, such as volcanology, igneous petrology and palaeontology. Logs were originally hand-drawn, but with the advent of graphical drawing packages it is now usual for logs presented in commercial reports and scientific publications to be images generated by computer graphics. Whilst these can provide a satisfactory representation of the information, the actual data is not recorded in any form that can be analysed in any numerical way. For example, any statistical analysis of trends in bed thickness or the distribution of different lithologies would require returning to the original data set to access the numerical information. A further drawback of logs presented only as pictures is that if substantial changes need to be made, such as using a different vertical scale, the log may need to be almost completely re-drawn. Computer-drawn logs, therefore, offer little advantage over their hand-drawn predecessors—they are just neater. Author's personal copy ARTICLE IN PRESS 2152 D. Zervas et al. / Computers & Geosciences 35 (2009) 2151–2159 Some software packages are available, e.g. WinLoG1 or LogPlot 72 that can use a database of information to generate sedimentary logs, either as stand-alone utilities or as parts of larger, integrated suites. Not all are well-suited to the needs of all geologists: in some cases, the data input is not straightforward, as parameters may need to be defined at the outset, and output may not have the desired flexibility. The greatest obstacle to the widespread use of many of these packages is, however, their cost: even if some of the packages can satisfy many of the requirements for input and presentation of sedimentological data, they are not readily available and affordable for use by students and others without the resources to purchase the software licences. This problem was recognised by Hoelzel (2004) who described a program, based on CorelDraw, to draw logs while we were developing the software described in this paper. Here we present SedLog, a user friendly multi-platform software written in Java for creating graphic sedimentary logs. We had similar aims to Hoelzel (2004), but chose to make our application as complete as possible without any need for other software. SedLog can draw logs by dragging and dropping, and also has a full range of patterns and many other attributes built in. The graphic sedimentary logs produced by SedLog can be printed directly from the screen or exported as vector images to other graphics packages. All data can also be output to spreadsheets (CSV file format) for statistical analysis or export into other packages that handle sedimentological or stratigraphic information. Data in spreadsheet format can be imported into SedLog and can be used as the basis for drawing a graphic log. The program is available free from www.sedlog.com. 2. Development Our objectives in developing the software for graphic sedimentary logs were as follows: 1. The graphic log output should closely resemble the formats commonly used by geologists in publications. 2. The layout, patterns and symbols used in creating the graphic log should be flexible enough to accommodate the different layouts and conventions used by sedimentologists and others. 3. Graphical output should be importable into graphics software packages to allow final modifications to the appearance of the output. 4. All the data about each bed should be stored in ASCII format to permit export of the data to other packages or for statistical analysis to be carried out. 5. Data in ASCII format should be importable into the program and used to generate graphic logs. 6. The program should be relatively self-explanatory, such that a new user could input data and generate logs in a simple format without requiring reference to an instruction manual. 7. The program should be freely available. One option for a Graphical User Interface (GUI) and graphics intensive application is Borland C++ Builder because of its strong GUI design facilities and the speed of the C++ language. We selected, however, Java3 for its cross-platform operability. Java is a programming language originally developed by Sun Microsystems and released in 1995. The language derives much of its syntax 1 WinLoG Version 4, http://www.gaea.ca, 2007, from GAEA Technologies (Whitby, Ontario, Canada). 2 LogPlot Version 7, http://www.rockware.com, 2007, from RockWare Inc. (Golden, Colorado, USA). 3 Java official web page: http://www.java.com. from C and C++ but has a simpler object model and fewer low-level facilities. Java applications are typically compiled to bytecode which can run on any Java virtual machine (JVM) regardless of computer architecture. Java also provided the Java 2D Application Programming Interface (API). Java 2D API is a set of Java classes for advanced 2D graphics and imaging. It encompasses line art, text and images in a single comprehensive model. Using Java 2D avoided a lot of low-level graphics programming, minimized development time and aided debugging of the application. For Java development, we initially used Borland’s JBuilder 2005 foundation but in the latest version of SedLog we used the NetBeans IDE4 instead. NetBeans IDE is a free, opensource Integrated Development Environment (IDE) for Java software development and runs on Windows, Linux, Mac OS X and Solaris. The NetBeans IDE provides a GUI Builder which enables intuitive GUI design by dragging and dropping GUI components from a palette onto a canvas, which can then be clicked and edited in place. To store and draw lithology patterns and symbols we needed a suitable file format, either: (a) as a raster graphics image or bitmap or (b) as a vector graphics image. Bitmaps are matrices of pixels and appear jagged when rescaled or printed. Vector graphics use geometrical primitives such as points, lines, curves and polygons to represent images and continue to look the same when rescaled or printed. Naturally, we decided to store patterns and symbols in vector file format but developing a parser for a vector file format from scratch would have been a major task. So, we used the Scalable Vector Graphics (SVG) file format and the Batik5 free library for parsing them instead of writing our own parser. SVG is an XML specification and file format for describing two-dimensional vector graphics, both static and animated. It is an open standard created by the World Wide Web Consortium’s SVG Working Group. Batik is a pure-Java library that can be used to render, generate and manipulate SVG graphics. For exporting the logs to PDF, we used the iText6 library (Lowagie and Soares, 2007) which is an open-source library for creating and manipulating PDF, RTF and HTML (respectively, Portable Document Format, from Adobe; Rich Text Format, from Microsoft; and Hypertext Markup Language) files in Java, and is distributed under the Mozilla Public Licence with the LGPL (GNU Library General Public Licence) as alternative licence. We started development by creating a simple prototype which took about 3 months. Then, we gave the prototype to various users and we started adding features and modifying it according to their comments. 3. SedLog description SedLog provides an intuitive graphical user interface, making it very easy for anyone to use with minimum effort. The graphic sediment logs generated by SedLog can be exported as PDF, SVG, or Joint Photographic Experts Group (JPEG, for bitmapped images) for use by other drawing applications or for publications. Log data can be imported and exported in CSV format. Comma separated values (CSV) files store tabular data and can be generated and imported by any spreadsheet application (such as MS Excel, MS Works Spreadsheet, StarOffice Calc, Quattro Pro, etc.). The CSV file 4 NetBeans Integrated Development Environment (IDE) for Java software development official web page: http://www.netbeans.org/. 5 Batik free Java library used to render, generate, and manipulate SVG graphics official web page: http://xmlgraphics.apache.org/batik. 6 B. Lowagie and P. Soares, iText (software), release 2.0.7, Nov. 28, 2007, 1999–2007, http://www.lowagie.com/iText. Author's personal copy ARTICLE IN PRESS D. Zervas et al. / Computers & Geosciences 35 (2009) 2151–2159 2153 format does not require a specific character encoding, byte order, or line terminator format making it platform independent. Below is a sample CSV file opened by a text editor: pertaining to a bed can be edited subsequently. On the input page, a series of drop-down menus provide options for recording information about the bed. These include: ‘‘THICKNESS (CM)’’,‘‘BASE BOUNDARY’’,‘‘LITHOLOGY’’,‘‘LITHOLOGY %’’,‘‘GRAIN SIZE BASE’’,‘‘GRAIN SIZE TOP’’,‘‘SYMBOLS IN BED’’ 100,‘‘/noneS’’,‘‘Limestone’’,100,‘‘vf’’,‘‘vf’’,‘‘Intense bioturbation’’ 45,‘‘Sharp’’,‘‘Shale’’,100,‘‘clay’’,‘‘clay’’,‘‘/noneS’’ 45,‘‘Erosion’’,‘‘Conglomerate’’,100,‘‘pebble’’,‘‘granule’’,‘‘Cephalopods’’ 135,‘‘Gradational’’,‘‘Sandstone’’,100,‘‘vc’’,‘‘m’’,‘‘Trough cross bedding’’ 65,‘‘/noneS’’,‘‘Sandstone’’,100,‘‘m’’,‘‘m’’,‘‘Planar cross bedding’’ 50,‘‘/noneS’’,‘‘Sandstone’’,100,‘‘f’’,‘‘f’’,‘‘Current ripple crosslamination’’ 60,‘‘Sharp’’,‘‘Siltstone’’,100,‘‘silt’’,‘‘silt’’,‘‘/noneS’’ 35,‘‘/noneS’’,‘‘Coal’’,100,‘‘/noneS’’,‘‘/noneS’’,‘‘/noneS’’ 65,‘‘Sharp’’,‘‘Siltstone’’,60,‘‘clay/silt’’,‘‘clay/silt’’,‘‘Moderate bioturbation’’ (a) Lithology, including the option of recording the proportions of up to three different lithologies for a single bed; by default the first lithology entered is 100%; a set of patterns are provided for the most common lithologies and are displayed in the drop-down menu. (b) Type of basal contact, gradational, sharp or erosional. (c) The grain size at the base and at the top of the bed (the basal grain size is assumed for the whole bed unless a size is entered for the top): the menu provides name descriptors such as ‘coarse sand’, ‘medium-fine sand’, but the program also records the equivalent phi scale value (Krumbein, 1934). On the graphic log these are displayed using a scale with increasing grain size towards the right. (d) Sedimentary structures ‘within the bed’: a variety of symbols is available to represent the commonest structures (trough cross bedding, symmetrical ripples and so on) and can be displayed as single symbols or as tiled symbols filling the grain-size ‘curve’. The lithology patterns can also be inserted into the grain-size column to create the merged lithology/ grain-size arrangement which is also commonly used. (e) Symbols ‘beside the bed’: sedimentary structures, fossils and bioturbation features can all be displayed, either singly or in combinations in a column. (f) A ‘Notes’ column allows for text of numerical information to be entered. The logs can be printed to any paper size. Zoom In, Zoom Out, Fit page, Fit Height and Fit Width facilities are also provided to enable the user to customise the workspace size. Sediment log files generated by SedLog have the *.SLG extension. Template files generated by SedLog have the *.TEM extension. SLG and TEM can be opened and modified only from SedLog. 3.1. Data input in SedLog The data set for a succession of rocks is built up on a bed-bybed basis. After creating a new file, information about the first bed (the lowest) is entered via an input menu (Fig. 1). The only data required for every bed is its thickness, and as much or as little other information as is required can be entered initially: all data 3.2. Log format options The columns detailed above constitute the default layout (Fig. 2) which uses a 1:50 scale. Alternative layouts can be used, Fig. 1. Data input menu, main interface in SedLog for entering data bed-by-bed. Author's personal copy ARTICLE IN PRESS 2154 D. Zervas et al. / Computers & Geosciences 35 (2009) 2151–2159 Fig. 2. Default layout for a graphic sedimentary log in SedLog. Columns may be added or removed, names and order of them changed and widths of columns modified. with all or some of these columns, or using some of the following additional columns: (a) Bioturbation: this column may be used to display symbols for different types of ichnofauna plus a value to indicate the intensity of the bioturbation (Droser and Bottjer, 1986). (b) Facies: a useful way of showing the facies is to use a narrow column for each facies and filling in the column adjacent to the appropriate beds (Fig. 3). This format can provide a quick, visual impression of the distribution of facies within a succession, and if the order of the columns is arranged appropriately, for example with the shallowest depositional environment on the left and the deepest on the right, then shallowing or deepening trends can be recognised (e.g. Lønne and Nemec, 2004). (c) Palaeocurrent data is recorded bed-by-bed with multiple entries for a single bed possible: SedLog stores the data numerically, but it can be displayed on the graphic log either as numbers or arrows with appropriate orientations. (d) Columns for stratigraphic information: ‘Age’ and ‘Formation’ columns are intended to be placed on the left side of the log, with boundaries between stratigraphic units entered at the appropriate bed and names displayed with text aligned vertically. (e) Three further user-defined columns are available for entering either text or numerical data. These may be used to record features such as colour, the positions of samples or photographs or data that result from geochemical or other analyses. Any of the columns can be renamed via a layout menu (Fig. 4) and this menu can also be used to modify a number of other aspects of the appearance of the graphic log. Several different scales are available, from 1:10 to 1:1000; there are also options on the intervals for display of the numbers on the scale and the scale can either measure from bottom to top for outcrop, or downward for depth in borehole core. The size of the symbols, the magnification of the lithology patterns and the font sizes can be adjusted to suit different log scales. The order of the positions of the columns from left to right can be changed as Author's personal copy ARTICLE IN PRESS D. Zervas et al. / Computers & Geosciences 35 (2009) 2151–2159 2155 Fig. 3. Customised layout, including columns for stratigraphic information on the left, facies columns, bioturbation and palaeocurrent data. required, and the name of the column customised. The default title at the top of the grain-size scale is a dual clastic and carbonate scale, but either can be used on its own. The title of the log is also inserted via this menu. An important consideration in the design of SedLog was the desire to allow the user as much flexibility as possible in the appearance of the output, although there are some limitations: for example, the total number of columns available is fixed and symbols can be inserted only into some columns. The width of columns can be modified on-screen by click-and-drag of the column boundaries. Once a layout has been created it can be saved as a template for multiple data sets. A set of patterns for the most common lithologies are available, divided into four groups on the input menu: basic, carbonate, volcanic and special. New lithologies and patterns can be added, or the existing names and patterns modified (see Section 3.3). The lithology column may be divided to show up to three different lithologies by proportion within a bed: if only one lithology is entered it is assumed to be 100%. 3.3. Further customising of the graphic log The program is provided with a number of different sets of patterns and symbols. Patterns for the most common lithologies are divided into four groups on the input menu: basic, carbonate, volcanic and special. Symbols are also grouped into sedimentary structures, fossils, trace fossils and ‘other’. Any of the patterns and symbols can be reassigned by changing the name associated with it. Furthermore, new patterns and symbols can be added by importing a graphic drawn in another software package and naming it. Graphics must be imported in SVG or Compressed Scalable Vector Graphics (SVGZ) format, and some trial and error is usually required to achieve an appropriate scale of the image prior to importing the graphic. A separate menu screen facilitates the import of user-created patterns and symbols (Fig. 5). This makes it possible for a user to design and import a complete set of their own patterns and symbols, also in colour for use in SedLog. 3.4. Graphic output from SedLog 3.4.1. Screen images The graphic log is generated by entering data for each bed via the input screen. This can be done systematically bed-by-bed starting from the bottom, but beds can be inserted at any point in the succession. Individual beds can also be copied or cut and pasted to change their position in the succession. The graphical interface of the log display means that beds can be selected by a mouse click and cut, copied or the input menu opened to modify Author's personal copy ARTICLE IN PRESS 2156 D. Zervas et al. / Computers & Geosciences 35 (2009) 2151–2159 Fig. 4. Layout menu is used to customise appearance of graphic log. 3.4.2. Printing and export The graphic log can be directly output to a printer and by varying the scale of the log and the paper size used, a log can be printed onto one sheet or over several sheets. By developing templates it is possible to standardise the appearance of graphic logs, including using a number of different templates for different scales or output. Export in other formats is also possible, either as a JPEG image or as an editable PDF file: in the latter format the log image can be imported into a drawing package and manipulated. This option provides additional flexibility in appearance of the log for publication or presentation purposes. 3.4.3. The log key Each lithology pattern and symbol used in the construction of a log is stored in a separate file containing the matches of names and patterns/symbols used in that log. This can either be printed as a simple key (Fig. 6), or exported as a graphics file for reformatting. 3.5. Data export and import from/to SedLog Fig. 5. New patterns and symbols can be added to selections available in main input screen by importing SVG image files created in other graphics packages. the definition and characteristics of the bed. The magnification of the screen display can be varied using a zoom function. The same data can be displayed in different log formats, with more or fewer columns of information shown, as required. 3.5.1. Data export into other programs All the information that is entered via the input menu can be exported in a CSV format file which can be opened in a spreadsheet program. The data for each bed are presented as a row, with columns for each of the parameters entered for that bed (grain size, lithology, symbols and so on). Analysis of the data can then be carried out to determine patterns and trends in bed thickness, grain size, facies, bioturbation intensity, etc. Palaeocurrent Author's personal copy ARTICLE IN PRESS 2157 D. Zervas et al. / Computers & Geosciences 35 (2009) 2151–2159 Fig. 6. As a log is generated all lithology patterns and symbols used are stored and can be output as a log key. Table 1 Example of a CSV input file’s contents. Thickness Base boundary Lithology Lithology (%) Grain size base Grain size top 100 45 45 135 65 50 60 35 65 onone4 Sharp Erosion Gradational onone4 onone4 Sharp onone4 Sharp Limestone Shale Conglomerate Sandstone Sandstone Sandstone Siltstone Coal Siltstone 100 100 100 100 100 100 100 100 100 Vf Clay Pebble Vc M F Silt onone4 Clay/silt Vf Clay Granule M M F Silt onone4 clay/silt data are stored as comma-delimited strings that can be exported into rose diagram plotting programs. When data are stored as descriptive text, macros can be used to convert the information into numerical values for the analysis of the proportions of lithologies, occurrence of sedimentary structures, fossils and so on. Geochemical or other analytical data may be incorporated with lithological information from the log. Data exported from SedLog can be imported into any program that uses ASCII format: in a pilot study data from SedLog files has been used in ‘Petrel’ by Schlumberger7 and successfully incorporated with other stratigraphic information. 3.5.2. Data import into SedLog SedLog includes a ‘wizard’ which can be used to take data from a CSV spreadsheet and use it to draw a graphic sedimentary log. For an example of a file’s contents see Table 1. The file can have additional columns such as more than one lithology for each bed, notes, facies, symbols, etc. If the data have been arranged in the column order used in the current SedLog layout, import is automatic, otherwise the column 7 http://www.slb.com/content/services/software/geo/petrel/index.asp. names in the data can be matched to those in the layout. All the information to create a graphic log could be entered into a spreadsheet, and there may be circumstances where this approach is quicker or more convenient than using the SedLog input menu, for example when using a Portable Digital Assistant (PDA) in the field (a PDA version of SedLog with a graphical interface was considered but this was beyond the scope of the current project). There can be advantages to editing a log using the data in spreadsheet format, particularly where the same information needs to be added to a number of beds as this can be more quickly achieved by pasting into a spreadsheet instead of using the input menu for each bed. 4. Application During the development of the program it was used in a number of research projects that involved the recording of data from succession of strata in different settings. Output from SedLog was subsequently used for the presentation of results in reports and research theses. From a user’s perspective, the following aspects of the program were found to provide significant benefits Author's personal copy ARTICLE IN PRESS 2158 D. Zervas et al. / Computers & Geosciences 35 (2009) 2151–2159 and the number of columns and their definitions at any point provides important flexibility during the development of a project. (b) Additional patterns and symbols can easily be added, a facility that allows the user to customise the appearance of the log to suit the needs of a particular project or the preferences of the user. In the example shown (Fig. 7) new patterns to represent volcaniclastic beds were required and the level of detail in the beds examined necessitated logging at a suitably large scale. (c) For presentation of the data from a succession in a research thesis large-scale logs showing the full detail of all the beds were required, but for illustrating the nature of a succession in reports smaller-scale summary logs were more suitable. By changing the scale, selecting only certain columns for output, and carrying out some minor editing of the data set it was possible to draw the graphic log at a new scale, avoiding the need for redrafting. (d) Exporting the graphics output from SedLog has proved useful when it is desirable to incorporate the log with other graphic materials or embed in another document. Some variation in the ease with which the SedLog graphics could be edited with different graphics packages was noted; the best compatibility was found to be with CorelDraw. 5. Conclusions and availability SedLog is easy to use yet efficient software and because it is written in Java, is available for any platform that supports Java (version 1.6 currently used). It is free and independent of all other applications. The latest version of SedLog can be downloaded from www.sedlog.com, a site hosted by Royal Holloway University of London. In order to run the application the user first must download the Java Runtime Environment (JRE, Version 6 Update 3 currently used), also known as the Java Virtual Machine (JVM, VM and Java VM) from http://www.java.com/. Each operating system requires its own JRE (see http://www.java.com for details). For Windows users, an installer for SedLog is provided. This will create shortcuts on the desktop and in the menu. A zip file containing all the required binaries is also provided. Simply unzip the file and then copy its contents to the desired directory. To run it on a Windows machine, simply double click on the SedLog.jar file. To run it with any other operating system, go into the SedLog directory using a console window and type java -jar SedLog.jar. Any contemporary computer will be able to run SedLog without problems. The only conditions on the use of this software are that the program may not be sold by any user to a third party, either in its present form or as part of any package of software or other tools. When output from SedLog is used in publications, authors are requested to cite this paper, or the website address of the program, as the source. Fig. 7. A log through Miocene Kerek Formation at Ngawi (Java Indonesia) showing volcaniclastic sediments reworked onto a marine slope (from PhD thesis of Helen Smyth). compared to other means of creating and presenting graphic sedimentary logs. Acknowledgements The development of this program was financed by the SE Asia Research Group, Royal Holloway, University of London. References (a) Data input is straightforward and does not require a template to be set up at the outset; the facility to change the layout, Collinson, J., Mountney, N., Thompson, D., 2006. Sedimentary Structures. Terra Publishing, England 292pp. Author's personal copy ARTICLE IN PRESS D. Zervas et al. / Computers & Geosciences 35 (2009) 2151–2159 Droser, M.L., Bottjer, D.J., 1986. A semiquantitative field classification of ichnofabric. Journal of Sedimentary Research 56, 558–559. Hoelzel, M., 2004. StratDraw: automatic generation of stratigraphic sections from tabulated field data. Computers & Geosciences 30, 785–789. Krumbein, W.C., 1934. Size frequency distributions of sediments. Journal of Sedimentary Petrology 4, 65–77. 2159 Lønne, I., Nemec, W., 2004. High-arctic fan delta recording deglaciation and environment disequilibrium. Sedimentology 51, 553–589. Stow, D.A.V., 2005. Sedimentary Rocks in the Field. Manson Publishing, England 320pp. Tucker, M.E., 2003. Sedimentary Rocks in the Field. Wiley, England 244pp.