DescriptionToday’s state of the art simulations generate high-resolution data at an ever-increasing rate. Such simulations produce data with billions of mesh points (or voxels) for each timestep and thousands of such timesteps with multiple variables. Time-varying data can easily reach peta- and exa-byte scale. Visualizing these massive data sets is still an on-going problem. Even after visualizing this data, viewing each variable at each timestep is practically impossible when there are thousands of timesteps. Simulations become too complex for the scientist to analyze manually. In such time-varying data sets, scientists want to know “where and when events happen” or “how long an event lasts”. Finding these events in thousands of timesteps is not possible with standard visualization tools. What scientists need are routines, procedures and visualizing techniques to help filter massive data and help focus on areas and events of interest automatically. The problems facing any attempt to localize complex events (activities) automatically in time-varying 3D scientific data can be summarized as: (1) provide an appropriate way for users to define an event of interest; (2) find an appropriate formalism to model this event; (3) apply the model to detect many instances of the event of interest in simulation data; and (4) present the detected events to users in an appropriate visual form. The contributions in this dissertation include introduction of the concept of activity detection for scientific visualization, the use of Petri Nets to model and detect activities in scientific visualization, an enhancement of Petri Nets to include the dynamics of scientific phenomena and demonstration of the use of activity detection on three different 3D time-varying data sets as case studies. In addition, a full 3D group-tracking model in which we extract and track groups as well as the individual features that form them is presented.