LALBurst 2.0.7.1-eeff03c
lalburst.snglcoinc.TimeSlideGraphNode Class Reference

Detailed Description

Definition at line 815 of file snglcoinc.py.

Inherits object.

Public Member Functions

def __init__ (self, coincgen_doubles_type, offset_vector, coinc_windows, min_instruments, time_slide_id=None)
 
def age (self)
 The earliest of the component nodes' .age. More...
 
def t_coinc_complete (self)
 The earliest of the component nodes' .t_coinc_complete. More...
 
def push (self, instrument, events, t_complete)
 Push new events from some instrument into the internal queues. More...
 
def pull (self, t)
 Using the events contained in the internal queues construct and return all coincidences they participate in. More...
 

Static Public Member Functions

def component_offsetvectors (offset_vector, n)
 Equivalent to offsetvector.component_offsetvectors() except only one input offsetvector is considered, not a sequence of them, and the output offsetvector objects preserve the absolute offsets of each instrument, not only the relative offsets between instruments. More...
 

Data Fields

 time_slide_id
 
 offset_vector
 
 is_zero_lag
 
 keep_partial
 
 components
 
 index
 
 previous_t
 
 event_time
 

Constructor & Destructor Documentation

◆ __init__()

def lalburst.snglcoinc.TimeSlideGraphNode.__init__ (   self,
  coincgen_doubles_type,
  offset_vector,
  coinc_windows,
  min_instruments,
  time_slide_id = None 
)

Definition at line 816 of file snglcoinc.py.

Member Function Documentation

◆ component_offsetvectors()

def lalburst.snglcoinc.TimeSlideGraphNode.component_offsetvectors (   offset_vector,
  n 
)
static

Equivalent to offsetvector.component_offsetvectors() except only one input offsetvector is considered, not a sequence of them, and the output offsetvector objects preserve the absolute offsets of each instrument, not only the relative offsets between instruments.

Definition at line 875 of file snglcoinc.py.

◆ age()

def lalburst.snglcoinc.TimeSlideGraphNode.age (   self)

The earliest of the component nodes' .age.

Definition at line 884 of file snglcoinc.py.

◆ t_coinc_complete()

def lalburst.snglcoinc.TimeSlideGraphNode.t_coinc_complete (   self)

The earliest of the component nodes' .t_coinc_complete.

Definition at line 891 of file snglcoinc.py.

◆ push()

def lalburst.snglcoinc.TimeSlideGraphNode.push (   self,
  instrument,
  events,
  t_complete 
)

Push new events from some instrument into the internal queues.

The iterable of events need not be time-ordered. With self.singlesqueue.event_time() defining the time of events, t_complete sets the time up-to which the collection of events is known to be complete. That is, in the future no new events will be pushed whose times are earlier than t_complete.

Definition at line 903 of file snglcoinc.py.

◆ pull()

def lalburst.snglcoinc.TimeSlideGraphNode.pull (   self,
  t 
)

Using the events contained in the internal queues construct and return all coincidences they participate in.

It is assumed calling code is in the process of constructing n-tuple candidates such that each candidate contains at least one event preceding t, and so we construct and return all candidates required to decide that set, which might include candidates all of whose events come after t.

Two objects are returned: a tuple of the (n=N)-way coincidences, where N is the number of instruments in this node's offset vector, and a set of the (min_instruments<=n<N)-way coincidences, which will be empty if N < min_instruments.

Since the (min_instruments<=n<N)-tuple coincidences cannot go on to form (n>N)-tuple coincidences, any that fail to contain at least one event preceding t could, at this stage, be discarded, however testing for that would require paying the price of the ID-->event look-up on all events in all candidates, which we will have to perform at each level of the graph, including the final stage before reporting candidates, so it is more efficient to leave the invalid candidates in the stream at this stage and cull them in a single pass at the end.

The coincidences are reported as tuples of the Python IDs of the events that form coincidences. The .index look-up table can be used to map these IDs back to the original events. To do that, however, a copy of the contents of the .index mapping must be made before calling this method because this method will result in some of the events in question being removed from the queues, and thus also from the .index mapping.

Definition at line 948 of file snglcoinc.py.

Field Documentation

◆ time_slide_id

lalburst.snglcoinc.TimeSlideGraphNode.time_slide_id

Definition at line 822 of file snglcoinc.py.

◆ offset_vector

lalburst.snglcoinc.TimeSlideGraphNode.offset_vector

Definition at line 823 of file snglcoinc.py.

◆ is_zero_lag

lalburst.snglcoinc.TimeSlideGraphNode.is_zero_lag

Definition at line 826 of file snglcoinc.py.

◆ keep_partial

lalburst.snglcoinc.TimeSlideGraphNode.keep_partial

Definition at line 829 of file snglcoinc.py.

◆ components

lalburst.snglcoinc.TimeSlideGraphNode.components

Definition at line 832 of file snglcoinc.py.

◆ index

lalburst.snglcoinc.TimeSlideGraphNode.index

Definition at line 841 of file snglcoinc.py.

◆ previous_t

lalburst.snglcoinc.TimeSlideGraphNode.previous_t

Definition at line 862 of file snglcoinc.py.

◆ event_time

lalburst.snglcoinc.TimeSlideGraphNode.event_time

Definition at line 865 of file snglcoinc.py.