From 8337a1b7ff751ae8916ff75d6ec382d908edab47 Mon Sep 17 00:00:00 2001 From: Brian G Date: Wed, 14 Feb 2018 14:30:50 -0600 Subject: [PATCH] Manual updates, added images --- doc/images/mainwindow.png | Bin 0 -> 19177 bytes doc/images/sparseToSIT.png | Bin 0 -> 54311 bytes doc/images/spliceMeasurementData.png | Bin 0 -> 48057 bytes doc/manual.html | 82 ++++++------ doc/manual.markdown | 181 +++++++++++++++------------ 5 files changed, 146 insertions(+), 117 deletions(-) create mode 100644 doc/images/mainwindow.png create mode 100644 doc/images/sparseToSIT.png create mode 100644 doc/images/spliceMeasurementData.png diff --git a/doc/images/mainwindow.png b/doc/images/mainwindow.png new file mode 100644 index 0000000000000000000000000000000000000000..3c07188191c967d547793a35c81c92a6263d625e GIT binary patch literal 19177 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 literal 0 HcmV?d00001 diff --git a/doc/images/sparseToSIT.png b/doc/images/sparseToSIT.png new file mode 100644 index 0000000000000000000000000000000000000000..11638984c60c793cbc39659037d98a267f2dec4a GIT binary patch literal 54311 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 literal 0 HcmV?d00001 diff --git a/doc/images/spliceMeasurementData.png b/doc/images/spliceMeasurementData.png new file mode 100644 index 0000000000000000000000000000000000000000..ba670e6834898a6e2693bcd6c5fa964ef86eb396 GIT binary patch literal 48057 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 literal 0 HcmV?d00001 diff --git a/doc/manual.html b/doc/manual.html index 483cba3..ec0aa06 100644 --- a/doc/manual.html +++ b/doc/manual.html @@ -1,35 +1,15 @@

Feldman User's Guide

-

February 9, 2018 version 0.0.2

+

February 14, 2018 version 0.0.3

Introduction

Feldman is a software utility developed by LacCore/CSDCO to simplify the process of aligning and splicing core sections, and exporting measurement data based on a splice.

-

Convert Sparse Splice to SIT

-

Given a section summary and sparse splice, Feldman will generate an affine table and splice interval table (SIT).

-

The generated affine and SIT are written to the same directory as the input sparse splice file. They use the sparse splice's filename plus "-affine" or "-SIT". For example, for a sparse splice file named MySparseSplice.csv, the resulting affine and SIT are named MySparseSplice-affine.csv and MySparseSplice-SIT.csv, respectively.

-

Click the "..." buttons to select section summary and sparse splice files as input.

-

By default, Feldman determines the affine offset of off-splice cores by finding the nearest on-splice core in the same hole and using that offset.

-

If a manual correlation table is provided, those alignments will be used for off-splice cores rather than the default.

-

Use Scaled Depths: if checked, the section summary's scaled depths will be used to map section depth to total depth. Unscaled depths are the default.

-

Lazy Append: if checked, for an APPEND operation, the affine shift of the previous core in the splice will be used for the current core, even if they're from different holes. By default, the gap between the previous core's bottom and the current core's top will be computed in scaled depth and used for the current core's affine shift.

-

Once input data and options are selected, click Convert. Major steps of the conversion process will be noted in the Log window. If the "Include Debugging Information" checkbox is checked, a far more detailed account of the process is provided, which can be helpful in the case of errors or unexpected outputs.

-

Splice Measurement Data

-

Given an affine and splice interval table (SIT), and one or more measurement data files, Feldman will splice each measurement data file, generating a new file including only rows whose Depth is within the range of a splice interval.

-

The spliced measurement data is written to the same directory as the input measurement data file, with a "-spliced" suffix. For example, for measurement data files MyProject_XRF.csv and MyProject_MSCL.csv, MyProject_XRF-spliced.csv and MyProject_MSCL-spliced.csv will be generated.

-

Three columns are added to the generated file:

-
-
  Splice Depth: the CCSF-A depth of the measurement
-  Offset: the affine shift of the core in which the measurement was taken
-  On-Splice: TRUE or FALSE, indicating whether the measurement is on-splice
-
-

If the input file contains a "Section ID" column, these columns will be inserted to its right on output. Otherwise they'll be inserted in the leftmost position.

-

Click the "..." buttons to select input affine and SIT files.

-

Click the "Add/Remove" buttons to add/remove one or more measurement data files to the list.

-

Select the column to use as the Depth Column for each measurement data file to be spliced.

-

Off Splice: if checked, rows of data that are off-splice are included with On-Splice value FALSE.

-

Whole Section Splice: if checked, all rows of data from on-splice core sections will be included with On-Splice value TRUE. For example, consider a splice interval with top section 1 at depth 20cm and bottom section 2 at depth 90cm. If Whole Section is checked, all measurements from section 1 and 2 will be included, even those above 20cm in section 1 and those below 90cm in section 2. Measurements from section 3, however, will not be included because that section isn't part of the splice interval.

-

Once input data and options are selected, click Splice Data. Major steps of the splicing process will be noted in the Log window. If the "Include Debugging Information" checkbox is checked, a far more detailed account of the process is provided, which can be helpful in the case of errors or unexpected outputs.

-

File Formats

-

Feldman reads and writes tabular data files in comma-separated values (CSV) format.

-

Templates for all formats can be found in the templates folder alongside the Feldman application. Examples of all formats can be found in the examples folder.

+

Main Window

+

+

Output Vocabulary: determines whether the IODP term "Core Type" or the LacCore term "Tool" is used as a column name in output. IODP "Core Type" is the default. Feldman will accept "Core Type" or "Tool" as input regardless of this setting.

+

The Convert Sparse Splice to SIT and Splice Measurement Data buttons open the dialogs of the same name.

+

Tabular Data Formats

+

Feldman reads and writes tabular data files exclusively in comma-separated values (CSV) format.

+

Microsoft Excel can be used to convert tabular data in other formats (Excel, tab- or space-delimited files, etc.) to CSV using the File > Save As... function and choosing "Comma Separated Values (.csv)" as the output format.

+

Templates for all formats can be found in the templates folder alongside the Feldman application. Real-world examples of formats can be found in the examples folder.

General requirements:

  • The first row of a file must be a header row with a name for each column.
  • @@ -45,14 +25,14 @@

    Identity Columns

      Site: An integer > 0 representing the collection site  
       Hole: One or more capital letters (A, B, ..., Y, Z, AA, AB...) representing a single drilled hole  
       Core: An integer > 0 representing an interval of material collected from parent hole  
    -  Tool: A single capital letter representing the drilling tool used to collect the core  
    +  Core Type or Tool: A single capital letter representing the drilling tool used to collect the core  
       Section: An integer > 0 representing a post-extraction subdivision of a core

    Section Summary

    A section summary table contains one row for each section in a project. It is used to translate section depths to total depth, and as a "master list" of a project's core sections. Sections that may not be included in a splice, but are part of measurement data to be spliced, should be included.

    A section summary must include the following columns:

    -
      Identity Columns: Site, Hole, Core, Tool, and Section  
    +
      Identity Columns: Site, Hole, Core, Core Type/Tool, and Section  
       Top Depth: Top depth of the section, in meters (m)
       Bottom Depth: Bottom depth of the section, in meters (m)
       Top Depth Scaled: Scaled (in situ) top depth of the section, in meters (m) 
    @@ -70,7 +50,7 @@ 

    Sparse Splice

    A sparse splice table contains one row for each interval of a sparse splice. Each interval is defined only in section depths, not total depths. The term "sparse" comes from the lack of total depths.

    A sparse splice table must include the following columns:

    -
      Identity Columns: Site, Hole, Core, and Tool
    +
      Identity Columns: Site, Hole, Core, and Core Type/Tool
       Top Section: section in which the interval begins
       Top Offset: section depth at which interval beings, in centimeters (cm)
       Bottom Section: section in which the interval ends
    @@ -87,7 +67,7 @@ 

    Affine Table

    An affine table contains one row for every core in a project. Each row indicates the core's affine shift distance and associated metadata.

    An affine table must include the following columns:

    -
      Identity Columns: Site, Hole, Core, and Tool
    +
      Identity Columns: Site, Hole, Core, and Core Type/Tool
       Depth CSF-A: Depth of the top of the core, in meters (m)
       Depth CCSF-A: Shifted/composite depth of the top of the core, in meters (m)
       Offset: Distance of core shift, in meters (m). Positive values indicate a downward shift, negative upward.
    @@ -107,7 +87,7 @@ 

    Affine Table

    Splice Interval Table, or SIT

    A splice interval table contains one row for each interval of a splice. It is a superset of a sparse splice. In addition to section depths for the top and bottom of each interval, it includes the total depths in CSF-A and CCSF-A.

    -
      Identity Columns: Site, Hole, Core, and Tool
    +
      Identity Columns: Site, Hole, Core, and Core Type/Tool
       Top Section: section in which the interval begins
       Top Offset: section depth at which interval begins, in centimeters (cm)
       Top Depth CSF-A: total depth at which interval begins, in meters (m)
    @@ -142,13 +122,41 @@ 

    Manual Correlation Table

    Section2: The on-splice section SectionDepth2: Section depth of the on-splice section to be aligned with off-splice section
    +

    Note that, unlike other formats, the manual correlation table format requires the use of "Tool1" and "Tool2". "Core Type 1" and "Core Type 2" are not acceptable column names.

    Measurement Data

    A measurement data table contains one or more measurements taken at a given depth in a core section.

    A measurement data table must include the following columns:

    -
      Identity Columns: Site, Hole, Core, Tool, Section indicating the source of the measurement(s)
    +
      Identity Columns: Site, Hole, Core, Core Type/Tool, Section indicating the source of the measurement(s)
       [Depth Column]: total depth of the measurement(s) of the core section, in meters (m). Depths
       in the specified column will be used to determine whether a measurement is within a splice interval.
    -

    The Depth Column is selected in the Splice Measurement Data dialog, and can have any name. The only requirement is that the Depth Column must contain only numeric values. If any alphabetic characters are included in a column (other than its name), it cannot be selected as the Depth Column.

    -

    Any number of measurement columns and additional columns (comments etc.) may be included. They will be included unaltered in the output of Splice Measurment Data.

    +

    The Depth Column is selected in the Splice Measurement Data dialog, and can have any name in the input file. The only requirement is that the Depth Column must contain only numeric values. If any alphabetic characters are included in a column (other than its name), it cannot be selected as the Depth Column.

    +

    Any number of measurement columns and additional columns (comments etc.) may be included. They will be included, unaltered, in the output of Splice Measurment Data.

    +

    Convert Sparse Splice to SIT

    +

    Given a section summary and sparse splice, Feldman will generate an affine table and splice interval table (SIT).

    +

    +

    The generated affine and SIT are written to the same directory as the input sparse splice file. They use the sparse splice's filename plus "-affine" or "-SIT". For example, for a sparse splice file named MySparseSplice.csv, the resulting affine and SIT are named MySparseSplice-affine.csv and MySparseSplice-SIT.csv, respectively.

    +

    Click the "..." buttons to select section summary and sparse splice files as input.

    +

    By default, Feldman determines the affine offset of off-splice cores by finding the nearest on-splice core in the same hole and using that offset.

    +

    If a manual correlation table is provided, those alignments will be used for off-splice cores rather than the default.

    +

    Use Scaled Depths: if checked, the section summary's scaled depths will be used to map section depth to total depth. Unscaled depths are the default.

    +

    Lazy Append: if checked, for an APPEND operation, the affine shift of the previous core in the splice will be used for the current core, even if they're from different holes. By default, the gap between the previous core's bottom and the current core's top will be computed in scaled depth and used for the current core's affine shift.

    +

    Once input data and options are selected, click Convert. Major steps of the conversion process will be noted in the Log window. If the "Include Debugging Information" checkbox is checked, a far more detailed account of the process is provided, which can be helpful in the case of errors or unexpected outputs.

    +

    Splice Measurement Data

    +

    Given an affine and splice interval table (SIT), and one or more measurement data files, Feldman will splice each measurement data file, generating a new file including only rows whose Depth is within the range of a splice interval.

    +

    +

    The spliced measurement data is written to the same directory as the input measurement data file, with a "-spliced" suffix. For example, for measurement data files MyProject_XRF.csv and MyProject_MSCL.csv, MyProject_XRF-spliced.csv and MyProject_MSCL-spliced.csv will be generated.

    +

    Three columns are added to the generated file:

    +
    +
      Splice Depth: the CCSF-A depth of the measurement
    +  Offset: the affine shift of the core in which the measurement was taken
    +  On-Splice: TRUE or FALSE, indicating whether the measurement is on-splice
    +
    +

    If the input file contains a "Section ID" column, these columns will be inserted to its right on output. Otherwise they'll be inserted in the leftmost position.

    +

    Click the "..." buttons to select input affine and SIT files.

    +

    Click the "Add/Remove" buttons to add/remove one or more measurement data files to the list.

    +

    Select the column to use as the Depth Column for each measurement data file to be spliced.

    +

    Off Splice: if checked, rows of data that are off-splice are included with On-Splice value FALSE.

    +

    Whole Section Splice: if checked, all rows of data from on-splice core sections will be included with On-Splice value TRUE. For example, consider a splice interval with top section 1 at depth 20cm and bottom section 2 at depth 90cm. If Whole Section is checked, all measurements from section 1 and 2 will be included, even those above 20cm in section 1 and those below 90cm in section 2. Measurements from section 3, however, will not be included because that section isn't part of the splice interval.

    +

    Once input data and options are selected, click Splice Data. Major steps of the splicing process will be noted in the Log window. If the "Include Debugging Information" checkbox is checked, a far more detailed account of the process is provided, which can be helpful in the case of errors or unexpected outputs.

    diff --git a/doc/manual.markdown b/doc/manual.markdown index 875483b..d45c714 100644 --- a/doc/manual.markdown +++ b/doc/manual.markdown @@ -1,89 +1,32 @@ Feldman User's Guide -------------------- -*February 9, 2018* -*version 0.0.2* +*February 14, 2018* +*version 0.0.3* ### Introduction Feldman is a software utility developed by LacCore/CSDCO to simplify the process of aligning and splicing core sections, and exporting measurement data based on a splice. +### Main Window +![](images/mainwindow.png) -### Convert Sparse Splice to SIT - -Given a section summary and sparse splice, Feldman will generate an affine table -and splice interval table (SIT). - -The generated affine and SIT are written to the same directory as the input sparse -splice file. They use the sparse splice's filename plus "-affine" or "-SIT". For example, -for a sparse splice file named MySparseSplice.csv, the resulting affine and SIT -are named MySparseSplice-affine.csv and MySparseSplice-SIT.csv, respectively. +Output Vocabulary: determines whether the IODP term "Core Type" or the LacCore term "Tool" +is used as a column name in output. IODP "Core Type" is the default. Feldman will accept +"Core Type" or "Tool" as input regardless of this setting. -Click the "..." buttons to select section summary and sparse splice files as input. +The [Convert Sparse Splice to SIT][] and [Splice Measurement Data][] buttons open the dialogs +of the same name. -By default, Feldman determines the affine offset of off-splice cores by finding the nearest -on-splice core in the same hole and using that offset. - -If a manual correlation table is provided, those alignments will be used for off-splice -cores rather than the default. - -Use Scaled Depths: if checked, the section summary's scaled depths will be used to map -section depth to total depth. Unscaled depths are the default. +### Tabular Data Formats +Feldman reads and writes tabular data files exclusively in comma-separated values (CSV) format. -Lazy Append: if checked, for an APPEND operation, the affine shift of the previous core in the splice -will be used for the current core, even if they're from different holes. By default, the gap between -the previous core's bottom and the current core's top will be computed in scaled depth and used for -the current core's affine shift. - -Once input data and options are selected, click Convert. Major steps of the conversion process will -be noted in the Log window. If the "Include Debugging Information" checkbox is checked, a far more -detailed account of the process is provided, which can be helpful in the case of errors or unexpected outputs. - - -### Splice Measurement Data - -Given an affine and splice interval table (SIT), and one or more measurement data files, Feldman -will splice each measurement data file, generating a new file including only rows whose Depth is within -the range of a splice interval. - -The spliced measurement data is written to the same directory as the input measurement data file, -with a "-spliced" suffix. For example, for measurement data files MyProject_XRF.csv and MyProject_MSCL.csv, -MyProject_XRF-spliced.csv and MyProject_MSCL-spliced.csv will be generated. - -Three columns are added to the generated file: - -> Splice Depth: the CCSF-A depth of the measurement -> Offset: the affine shift of the core in which the measurement was taken -> On-Splice: TRUE or FALSE, indicating whether the measurement is on-splice - -If the input file contains a "Section ID" column, these columns will be inserted -to its right on output. Otherwise they'll be inserted in the leftmost position. - -Click the "..." buttons to select input affine and SIT files. - -Click the "Add/Remove" buttons to add/remove one or more measurement data files to the list. - -Select the column to use as the Depth Column for each measurement data file to be spliced. - -Off Splice: if checked, rows of data that are off-splice are included with On-Splice value FALSE. - -Whole Section Splice: if checked, all rows of data from on-splice core sections will be included -with On-Splice value TRUE. For example, consider a splice interval with -top section 1 at depth 20cm and bottom section 2 at depth 90cm. If Whole Section is checked, -*all* measurements from section 1 and 2 will be included, even those above 20cm in section 1 -and those below 90cm in section 2. Measurements from section 3, however, will *not* be included -because that section isn't part of the splice interval. - -Once input data and options are selected, click Splice Data. Major steps of the splicing process will -be noted in the Log window. If the "Include Debugging Information" checkbox is checked, a far more -detailed account of the process is provided, which can be helpful in the case of errors or unexpected outputs. - - -### File Formats -Feldman reads and writes tabular data files in comma-separated values (CSV) format. +Microsoft Excel +can be used to convert tabular data in other formats (Excel, tab- or space-delimited files, etc.) to CSV +using the File > Save As... function and choosing "Comma Separated Values (.csv)" as the output format. Templates for all formats can be found in the templates folder alongside the Feldman application. -Examples of all formats can be found in the examples folder. +Real-world examples of formats can be found in the examples folder. General requirements: @@ -102,7 +45,7 @@ All formats use some or all of the following columns to identify cores and/or se > Site: An integer > 0 representing the collection site > Hole: One or more capital letters (A, B, ..., Y, Z, AA, AB...) representing a single drilled hole > Core: An integer > 0 representing an interval of material collected from parent hole -> Tool: A single capital letter representing the drilling tool used to collect the core +> Core Type or Tool: A single capital letter representing the drilling tool used to collect the core > Section: An integer > 0 representing a post-extraction subdivision of a core @@ -114,7 +57,7 @@ of measurement data to be spliced, should be included. A section summary must include the following columns: -> Identity Columns: Site, Hole, Core, Tool, and Section +> Identity Columns: Site, Hole, Core, Core Type/Tool, and Section > Top Depth: Top depth of the section, in meters (m) > Bottom Depth: Bottom depth of the section, in meters (m) > Top Depth Scaled: Scaled (in situ) top depth of the section, in meters (m) @@ -135,7 +78,7 @@ comes from the lack of total depths. A sparse splice table must include the following columns: -> Identity Columns: Site, Hole, Core, and Tool +> Identity Columns: Site, Hole, Core, and Core Type/Tool > Top Section: section in which the interval begins > Top Offset: section depth at which interval beings, in centimeters (cm) > Bottom Section: section in which the interval ends @@ -155,7 +98,7 @@ indicates the core's affine shift distance and associated metadata. An affine table must include the following columns: -> Identity Columns: Site, Hole, Core, and Tool +> Identity Columns: Site, Hole, Core, and Core Type/Tool > Depth CSF-A: Depth of the top of the core, in meters (m) > Depth CCSF-A: Shifted/composite depth of the top of the core, in meters (m) > Offset: Distance of core shift, in meters (m). Positive values indicate a downward shift, negative upward. @@ -178,7 +121,7 @@ A splice interval table contains one row for each interval of a splice. It is a superset of a sparse splice. In addition to section depths for the top and bottom of each interval, it includes the total depths in CSF-A and CCSF-A. -> Identity Columns: Site, Hole, Core, and Tool +> Identity Columns: Site, Hole, Core, and Core Type/Tool > Top Section: section in which the interval begins > Top Offset: section depth at which interval begins, in centimeters (cm) > Top Depth CSF-A: total depth at which interval begins, in meters (m) @@ -217,19 +160,97 @@ A manual correlation table must include the following columns: > Section2: The on-splice section > SectionDepth2: Section depth of the on-splice section to be aligned with off-splice section +Note that, unlike other formats, the manual correlation table format requires the use of "Tool1" and "Tool2". +"Core Type 1" and "Core Type 2" are not acceptable column names. #### Measurement Data A measurement data table contains one or more measurements taken at a given depth in a core section. A measurement data table must include the following columns: -> Identity Columns: Site, Hole, Core, Tool, Section indicating the source of the measurement(s) +> Identity Columns: Site, Hole, Core, Core Type/Tool, Section indicating the source of the measurement(s) > [Depth Column]: total depth of the measurement(s) of the core section, in meters (m). Depths > in the specified column will be used to determine whether a measurement is within a splice interval. -The Depth Column is selected in the Splice Measurement Data dialog, and can have any name. The only +The Depth Column is selected in the Splice Measurement Data dialog, and can have any name in the input file. The only requirement is that the Depth Column must contain only numeric values. If any alphabetic characters are included in a column (other than its name), it cannot be selected as the Depth Column. Any number of measurement columns and additional columns (comments etc.) may be included. They will be -included unaltered in the output of Splice Measurment Data. \ No newline at end of file +included, unaltered, in the output of Splice Measurment Data. + + +### Convert Sparse Splice to SIT + +Given a section summary and sparse splice, Feldman will generate an affine table +and splice interval table (SIT). + +![](images/sparseToSIT.png) + +The generated affine and SIT are written to the same directory as the input sparse +splice file. They use the sparse splice's filename plus "-affine" or "-SIT". For example, +for a sparse splice file named MySparseSplice.csv, the resulting affine and SIT +are named MySparseSplice-affine.csv and MySparseSplice-SIT.csv, respectively. + +Click the "..." buttons to select section summary and sparse splice files as input. + +By default, Feldman determines the affine offset of off-splice cores by finding the nearest +on-splice core in the same hole and using that offset. + +If a manual correlation table is provided, those alignments will be used for off-splice +cores rather than the default. + +Use Scaled Depths: if checked, the section summary's scaled depths will be used to map +section depth to total depth. Unscaled depths are the default. + +Lazy Append: if checked, for an APPEND operation, the affine shift of the previous core in the splice +will be used for the current core, even if they're from different holes. By default, the gap between +the previous core's bottom and the current core's top will be computed in scaled depth and used for +the current core's affine shift. + +Once input data and options are selected, click Convert. Major steps of the conversion process will +be noted in the Log window. If the "Include Debugging Information" checkbox is checked, a far more +detailed account of the process is provided, which can be helpful in the case of errors or unexpected outputs. + + +### Splice Measurement Data + +Given an affine and splice interval table (SIT), and one or more measurement data files, Feldman +will splice each measurement data file, generating a new file including only rows whose Depth is within +the range of a splice interval. + +![](images/spliceMeasurementData.png) + +The spliced measurement data is written to the same directory as the input measurement data file, +with a "-spliced" suffix. For example, for measurement data files MyProject_XRF.csv and MyProject_MSCL.csv, +MyProject_XRF-spliced.csv and MyProject_MSCL-spliced.csv will be generated. + +Three columns are added to the generated file: + +> Splice Depth: the CCSF-A depth of the measurement +> Offset: the affine shift of the core in which the measurement was taken +> On-Splice: TRUE or FALSE, indicating whether the measurement is on-splice + +If the input file contains a "Section ID" column, these columns will be inserted +to its right on output. Otherwise they'll be inserted in the leftmost position. + +Click the "..." buttons to select input affine and SIT files. + +Click the "Add/Remove" buttons to add/remove one or more measurement data files to the list. + +Select the column to use as the Depth Column for each measurement data file to be spliced. + +Off Splice: if checked, rows of data that are off-splice are included with On-Splice value FALSE. + +Whole Section Splice: if checked, all rows of data from on-splice core sections will be included +with On-Splice value TRUE. For example, consider a splice interval with +top section 1 at depth 20cm and bottom section 2 at depth 90cm. If Whole Section is checked, +*all* measurements from section 1 and 2 will be included, even those above 20cm in section 1 +and those below 90cm in section 2. Measurements from section 3, however, will *not* be included +because that section isn't part of the splice interval. + +Once input data and options are selected, click Splice Data. Major steps of the splicing process will +be noted in the Log window. If the "Include Debugging Information" checkbox is checked, a far more +detailed account of the process is provided, which can be helpful in the case of errors or unexpected outputs. + +