771 research outputs found

    Dynamic Multilevel Graph Visualization

    Full text link
    We adapt multilevel, force-directed graph layout techniques to visualizing dynamic graphs in which vertices and edges are added and removed in an online fashion (i.e., unpredictably). We maintain multiple levels of coarseness using a dynamic, randomized coarsening algorithm. To ensure the vertices follow smooth trajectories, we employ dynamics simulation techniques, treating the vertices as point particles. We simulate fine and coarse levels of the graph simultaneously, coupling the dynamics of adjacent levels. Projection from coarser to finer levels is adaptive, with the projection determined by an affine transformation that evolves alongside the graph layouts. The result is a dynamic graph visualizer that quickly and smoothly adapts to changes in a graph.Comment: 21 page

    C++ Templates as Partial Evaluation

    Full text link
    This paper explores the relationship between C++ templates and partial evaluation. Templates were designed to support generic programming, but unintentionally provided the ability to perform compile-time computations and code generation. These features are completely accidental, and as a result their syntax is awkward. By recasting these features in terms of partial evaluation, a much simpler syntax can be achieved. C++ may be regarded as a two-level language in which types are first-class values. Template instantiation resembles an offline partial evaluator. This paper describes preliminary work toward a single mechanism based on Partial Evaluation which unifies generic programming, compile-time computation and code generation. The language Catat is introduced to illustrate these ideas.Comment: 13 page

    Streamers in air splitting into three branches

    Get PDF
    We investigate the branching of positive streamers in air and present the first systematic investigation of splitting into more than two branches. We study discharges in 100 mbar artificial air that is exposed to voltage pulses of 10 kV applied to a needle electrode 160 mm above a grounded plate. By imaging the discharge with two cameras from three angles, we establish that about every 200th branching event is a branching into three. Branching into three occurs more frequently for the relatively thicker streamers. In fact, we find that the surface of the total streamer cross-sections before and after a branching event is roughly the same.Comment: 6 pages, 7 figure
    • …
    corecore