Design by dragging: an interface for creative forward and inverse design with simulation ensembles
Related Experiment Video
Updated: May 7, 2026

Interactive and Visualized Online Experimentation System for Engineering Education and Research
Published on: November 24, 2021
Dane Coffey1, Chi-Lun Lin, Arthur G Erdman
1University of Minnesota.
Abstract:
We present an interface for exploring large design spaces as encountered in simulation-based engineering, design of visual effects, and other tasks that require tuning parameters of computationally-intensive simulations and visually evaluating results. The goal is to enable a style of design with simulations that feels as-direct-as-possible so users can concentrate on creative design tasks. The approach integrates forward design via direct manipulation of simulation inputs (e.g., geometric properties, applied forces) in the same visual space with inverse design via 'tugging' and reshaping simulation outputs (e.g., scalar fields from finite element analysis (FEA) or computational fluid dynamics (CFD)). The interface includes algorithms for interpreting the intent of users' drag operations relative to parameterized models, morphing arbitrary scalar fields output from FEA and CFD simulations, and in-place interactive ensemble visualization. The inverse design strategy can be extended to use multi-touch input in combination with an as-rigid-as-possible shape manipulation to support rich visual queries. The potential of this new design approach is confirmed via two applications: medical device engineering of a vacuum-assisted biopsy device and visual effects design using a physically based flame simulation.
Related Concept Videos
Design Example: Designing Water Slide
Bernoulli's principle determines the water's velocity along the slide.
Design Example: Forces in Sluice Gate
Key variables in...
Design Example
Design Example: Creating a Hydraulic Model of a Dam Spillway
Design Example: Traverse Angle Computations
Design Example: Application of Archimedes' Principle
The volume of seawater displaced by the block is determined by first calculating the block's weight. This is done by multiplying the block's volume by...
