## Name

GTISEG

## Author

Craig B. Markwardt, NASA/GSFC Code 662, Greenbelt, MD 20770

craigm@lheamail.gsfc.nasa.gov

## Purpose

Convert a list of times to a set of Good Time Intervals (GTIs)

## Calling Sequence

GTI = GTISEG(TIMES, COUNT=COUNT, INDICES=INDICES, $

MAXGAP=MAXGAP, MINGTI=MINGTI)

## Description

The function GTISEG accepts an array of times and converts

adjacent data into good time intervals (GTIs).

Elements of the array are clustered into intervals based on the

gaps between times. If the gaps are small enough then the times

are grouped into a single interval. If a gap exceeds MAXGAP, then

an interruption occurs and at least two intervals are formed.

Thus, the keyword parameter MAXGAP essentially determines how many

and where the intervals will be formed.

If the time samples are regularly spaced -- aside from gaps --

then MAXGAP should be set to a number slightly larger than the

spacing to prevent roundoff errors. By default MAXGAP is set to

the difference between the first and second samples.

For GTISEG, the samples do not need to be regularly spaced, but

they *must* be given in ascending order. Arrays can be sorted

with the SORT function. The primary difference between GTISEG and

MASK2GTI is that MASK2GTI assumes the time samples are regularly

spaced while GTISEG does not. Also, MASK2GTI allows intervals to

be enlarged or shrunk.

It should be noted that this function is not constrained to

operation only on time arrays. It should work on any

one-dimensional quantity with intervals.

## Inputs

TIME - an array of times in ascending order.

## Keywords

MAXGAP - a scalar, the maximum gap between time samples before a

new interval is created. Samples with gaps smaller than

this value are grouped into a single GTI.

Default: TIME(1) - TIME(0)

MINGTI - the smallest possible GTI. Any interval smaller than

MINGTI is discarded.

Default: 0 (all intervals are accepted)

COUNT - upon return, the number of resulting intervals. A value

of zero indicates no good time intervals.

INDICES - upon return, a 2xCOUNT array of integers which give the

indices of samples which lie within each interval. The

times TIME(INDICES(0,i) : INDICES(1,i)) fall within the

ith interval.

## Returns

A new GTI array containing the enlarged or shrunken intervals.

The array is 2xCOUNT where COUNT is the number of resulting

intervals. GTI(*,i) represents the start and stop times of

interval number i. The intervals are non-overlapping and

time-ordered.

If COUNT is zero then the returned array is a scalar value of

zero, indicating no good intervals were found.

## See Also

MASK2GTI, GTITRIM, GTIMERGE, GTIWHERE

## Modification History

Written, CM, 1999-2001

Documented, CM, Apr 2001

MINGTI now works as documented, in that segments *equal* to MINGTI

are now accepted, CM, 30 Oct 2007

MINGTI now also affects INDICES, CM, 03 Mar 2008