Patent ID: 7412371

Claim:
A method for time synchronizing playback of dissimilar data files, comprising: logging a first data set at a first local site, wherein logging includes recording a time of each event in the first data set; logging a second data set at a second local site, wherein logging includes recording a time of each event in the second data set; logging a nth data set at a nth local site, wherein logging includes recording a time of each event in the nth data set, and wherein the first data set, second data set and nth data set relate to a simulation; establishing a first master time stamp at a master site and a corresponding first local time stamp at the first local site, the first master time stamp related to a computer system clock at the master site and to a computer system clock at the first local site, wherein the first master time stamp of the master site corresponds to a time when the first local time stamp of the first local site was established; establishing a second master time stamp at the master site and a corresponding second local time stamp at the second local site, the second master time stamp related to the computer system clock at the master site and to a computer system clock at the second local site, wherein the second master time stamp of the master site corresponds to a time when the second local time stamp of the second local site was established; establishing a nth master time stamp at the master site and a corresponding nth local time stamp at the nth local site, the nth master time stamp related to the computer system clock at the master site and to a computer system clock at the nth site, wherein the nth master time stamp of the master site corresponds to a time when the nth local time stamp of the nth local site was produced; recording the first, the second and the nth master and local time stamps; issuing a play command to commence a replay of the simulation; correcting for differences and errors in among all the local site's computer system clocks, wherein corrections are produced by comparison of a master time stamp and a local site's local time stamp, wherein the correction is used to correct that local site's system time; normalizing the local site's corrected system time referenced to the time when the play command is issued, wherein the normalization creates a time differential dtSystem; normalizing the recorded time of each event in the data sets relative to a time of a first event in the data set, wherein the normalization creates time differentials, dtEvent; normalizing for differences in logging start times among all local sites, wherein all local sites corrected logging start times are compared to determine the first local site to start logging; comparing when all other local sites started logging and determining a correction to each local site's dtEvent based on the logging start time differences; advancing dtSystem as play time advances; pausing dtSystem when play is paused; and injecting logged event data, wherein the logged event data are injected when dtEvent equals dtSystem.