8. A method for analyzing ballistic trajectories comprising: determining, using a preprocessor, invariants for known ballistic objects; defining, using the preprocessor, a reference graph having nodes corresponding to the invariants for the known ballistic objects; defining, using the preprocessor, a query graph having nodes connected to nodes of the reference graph corresponding to anticipated invariant queries to be made using the query graph; inputting into the reference graph, using a runtime processor, one or more sets of invariants corresponding to trajectories of one or more observed objects, each of the one or more sets of invariants traversing through the nodes of the reference graph corresponding to the each of the one or more sets of invariants and leaving a record in the nodes traversed; selecting, using an interface, a query for the query graph corresponding to one or more range of invariants, said query generating a query result identifying the nodes of the reference graph that satisfy the query; and identifying, using the runtime processor, each of the one or more observed objects identified by a record in the identified nodes, thereby determining which of the one or more observed objects satisfy the query.
12. The method of claim 8 , wherein the one or more range of invariants are defined in the defining of the query graph and comprises a combination of a range defining a particular search volume and a range defining a particular timespan, and wherein at least some of the anticipated invariant queries include combinations of the particular search volume and the particular timespan.