Product Description

1. Introduction

LcTools is a Windows based software system designed for analyzing Kepler and K2 lightcurves. The system consists of five main components:

  •  LcViewer for viewing lightcurve files and recording signals of interest.
  •  LcGenerator for generating lightcurve files in bulk for use by LcViewer.
  •  LcStacker for combining a set of phase folded lightcurve files into a stacked lightcurve file which can be inspected with LcViewer.
  •  LcStackAnalyzer for determining the contribution of each phase folded lightcurve file to a reference signal in a stacked lightcurve file.
  •  LcReporter for creating a signal report in Excel.

A detailed description of each component is provided below.

2. LcViewer

2.1 Overview

LcViewer is a combined lightcurve viewer and signal processor designed to help detect, measure, and record visible artifacts found in Kepler and K2 lightcurves. Using LcViewer, lightcurves may be generated, loaded, detrended, edited, saved, and viewed. The product provides an advanced suite of easy-to-use navigation controls for selecting, panning, and zooming a lightcurve in a fast and efficient manner using several different techniques.

The most powerful feature of the product is its ability to handle signals. Loosely defined, a signal is three or more data points in a lightcurve that represents some astrophysical phenomenon or lightcurve anomaly. Examples of the former include eclipsing binaries, planetary transits, moon transits and eclipses, ring transits, starspot crossings, and stellar flares. Examples of the latter include Kepler data processing errors and instrumentation artifacts. Using LcViewer, signals of any type may be measured, recorded, highlighted, tracked, queried, located, phase folded, and checked for periodicity.

2.2 Features

Using LcViewer, you are able to perform the following operations:

Lightcurve Generation & Loading
  • Generate local lightcurve files from time series data downloaded from MAST.
  • Open lightcurve files previously built by LcGenerator, LcViewer, or LcStacker.
  • Open user supplied lightcurve files that were produced outside the LcTools system.
  • Via a work group, open lightcurve files sequentially at the click of a button. Ideal for iterating through a large set of lightcurve files quickly and efficiently.
Lightcurve Navigation
  • Track time and flux in real-time using the cursor.
  • Select a view with the mouse.
  • Pan the view using scroll bars or by dragging the view with the mouse.
  • Zoom in or out of the lightcurve using independent horizontal and vertical controls.
  • Quickly zoom into a small area of the lightcurve by double-clicking the mouse.
  • Save and restore views.
Lightcurve Rendering
  • Scale the size of data points in the lightcurve to mitigate congestion and improve fidelity.
  • Connect data points in the lightcurve with lines to facilitate the detection of signals.
Lightcurve Modification
  • Detrend a lightcurve.
  • Remove selected data points from a lightcurve.
  • Save a modified lightcurve to a file.
Signal Recording
  • Automatically create and highlight project defined periodic signals such as KOIs and TCEs when opening a lightcurve file.
  • Manually create and highlight user defined signals in the lightcurve (periodic or non-periodic).
  • Edit and delete signals.
Signal Alignment/TTV Handling
  • Automatically align TTV shifted signals in the lightcurve based on supplied TTV libraries (public or private).
  • Manually align TTV shifted signals using the mouse.
Signal Highlighting
  • Color code signals by signal type.
  • Show signal overlaps and abutments.
Signal Navigation
  • Track signals in real-time using the cursor.
  • Sequentially navigate to each instance of a signal in the lightcurve at the click of a button.
  • Quickly zoom into a signal by double-clicking the mouse.
Signal Information & Measurement
  • Query the physical properties of a defined signal.
  • Measure the time and flux interval between two candidate signals or locations in the lightcurve.
  • Measure the dimensions of a candidate signal in the lightcurve and determine its periodicity. Estimate the size of the underlying object in REarth units.
Signal Folding & Stacking
  • Phase fold the instances of a periodic signal.
  • Stack the instances of a non-periodic signal.
Other Utilities & Services
  • Query the stellar properties for the lightcurve.
  • Draw a temporary line in the lightcurve for reference purposes or for use as a straight-edge.
  • Capture and save screen images.
  • Obtain help documentation.
  • Configure colors, hotkeys, and mouse buttons.

2.3 Sample Screen Snapshots

The following screen snapshots will help illustrate some of the key features listed above.

Snapshot 1: The “Open Lightcurve” dialog box. Enables you to specify the lightcurve directory, star ID, and lightcurve file to generate or open for a project.

Snapshot 2:
 The “Time Series Selection” dialog box. Enables you to specify the time series periods, cadence, flux type, data point quality filter, short cadence bin size, and filename of the lightcurve file to generate.

Snapshot 3: The “View Settings” dialog box. Enables you to track the current position and signal in the lightcurve, scale the size of data points, connect data points with lines, set the signal region timescale, and select the signals to be highlighted.

Snapshot 4: A lightcurve showing a highlighted KOI transit signal. KOI, K2OI, and TCE signals are obtained from the NASA Exoplanet Archive (NEA).

Snapshot 5: The Tracking Information Box showing the time, flux, and signal at the cursor. Values are updated in real-time.

Snapshot 6: Two overlapping KOI transit signals. LcViewer automatically marks the overlapping region of mutual signals in red.

Snapshot 7: A TTV shifted KOI transit signal. Signals can be automatically aligned using public TTV libraries available on Google Drive or manually aligned using the mouse.

Snapshot 8a: Measuring the time interval between two candidate signals in the lightcurve.

Snapshot 8b: Measuring the depth and estimating the object size in REarth units for a candidate signal in the lightcurve.

Snapshot 9a: A SAP_FLUX lightcurve to be detrended.

Snapshot 9b: Same lightcurve with a fitted trend line plus the "Detrend Lightcurve" dialog box for controlling the operation.

Via the dialog box, you can:
  • Remove single point outliers prior to fitting a trend line. High and low outliers can be removed separately.
  • Select a trend line fitting method (Spline or Moving Median).
  • Adjust the trend line fitting level. The higher the level, the flatter the lightcurve will be after detrending.

Snapshot 9c: The detrended lightcurve after the Detrend button is clicked.

You can click the Redo button to retry the detrending operation using different settings. The Redo button can also be used to quickly compare the before and after images to see what changed.

Snapshot 10: Determining the dimensions and periodicity of a candidate signal in the lightcurve.

Detected period(s) for the candidate signal are listed in the dialog box in rank order. Via the dialog box you can:
  • Select a period for inspection.
  • Navigate to each instance of the signal at the selected period to check the fit.
  • Phase fold the instances.
  • Create a user defined periodic signal in the lightcurve.

Snapshot 11a: Preparing to phase fold the instances of the candidate signal.

Via the dialog box, you can:
  • Set the timescale for the signals.
  • Remove single point outliers and overlapping signals from the lightcurve prior to detrending the signals.
  • Set the trend line fitting method (Polynomial or Spline) and the flattening level for detrending the signals.
  • Show the detrending stages to visually check the results.
  • Set the initial bin size in minutes for the phase folded data.

Snapshot 11b: The phase folded lightcurve.

The small grey dots represent the phase folded unbinned data points. The large green dots represent the binned data points. Via the dialog box, you can:
  • Adjust the timescale for the signals.
  • Adjust the trend line fitting method (Polynomial or Spline) and the flattening level for detrending the signals.
  • Mirror fold the left side of the lightcurve over the right side to check for symmetry.
  • Change the method used for averaging the flux value in each bin.
  • Change the bin size in minutes.
  • Control which data points are displayed.
  • Fit a smooth curve through the binned data points. Adjust the smoothing level if desired.
  • Connect the binned data points with straight lines as an alternative to a fitted curve.
  • Show horizontal and vertical reference lines to serve as context.
A phase folded lightcurve can be saved to a file and then opened at a later time just like a regular lightcurve. You can also measure and create user defined signals in the lightcurve.

Snapshot 12a: Creating a periodic planetary transit signal.

Snapshot 12b: The created planetary transit signal (partial view).

Snapshot 13: The “Stellar Properties” dialog box. Properties are obtained from NEA.

3. LcGenerator

LcGenerator is a batch application designed to pre-generate lightcurve files for LcViewer in order to save processing time. The tool is particularly useful for performing large-scale builds involving hundreds or perhaps thousands of lightcurves. For example, LcGenerator can be used to build lightcurve files for all the stars in a K2 campaign. 

LcGenerator is invoked through a command line interface. Parameters which can be specified include a star list file, target lightcurve directory, time series periods and cadence, flux type, short cadence bin size, and data point quality filter. A sample execution transcript is shown below:

4. LcStacker

LcStacker combines a set of phase folded lightcurve files into a stacked lightcurve file for subsequent use with LcViewer. By combining many individual files together, a stacked lightcurve file achieves a very high signal-to-noise ratio thereby permitting small artifacts to be detected in the combined lightcurve that might otherwise be hidden in the noise of individual lightcurves.

LcStacker is invoked through a command line interface. Parameters include the list of files to stack, the target lightcurve directory, and the ensemble number for the stack. You may also specify various clipping options for removing unwanted data points from the stacked lightcurve. A sample execution transcript is shown below:

5. LcStackAnalyzer

If a signal of interest is found and recorded in a stacked lightcurve file, LcStackAnalyzer can be executed to determine the contribution of each phase folded lightcurve file to the signal. The contribution is expressed as a sigma value indicating the significance of the signal where a value of 4 and above is generally considered to be statistically significant.

LcStackAnalyzer is invoked through a command line interface. Parameters include the stacked lightcurve file and the signal number in the file to analyze. An analysis report file is created as shown in the example below. Sigma contributions are listed from highest to lowest.

6. LcReporter

LcReporter creates an Excel report listing the user defined signals found in a specified lightcurve directory. A partial sample report is shown below:

7. Run-Time Requirements (Minimum)
  • Windows OS (XP, Vista, 7, 8, 10). 
  • 2.7 GHz CPU. 
  • 5 GB memory. 
  • 100 GB free disk space. 
  • 1024 x 800 screen resolution. 
  • 2-Button mouse or equivalent. 
  • High-speed Internet connection. 
  • Microsoft Word.
  • Microsoft Excel.

8. Contact Information

To obtain this product for use or to learn more about it, please contact the author at