12 research outputs found

    A dimension-reduced pressure solver for liquid simulations

    Get PDF
    This work presents a method for efficiently simplifying the pressure projection step in a liquid simulation. We first devise a straightforward dimension reduction technique that dramatically reduces the cost of solving the pressure projection. Next, we introduce a novel change of basis that satisfies free-surface boundary conditions exactly, regardless of the accuracy of the pressure solve. When combined, these ideas greatly reduce the computational complexity of the pressure solve without compromising free surface boundary conditions at the highest level of detail. Our techniques are easy to parallelize, and they effectively eliminate the computational bottleneck for large liquid simulations

    ACM Transactions on Graphics

    Get PDF
    This paper presents a liquid simulation technique that enforces the incompressibility condition using a stream function solve instead of a pressure projection. Previous methods have used stream function techniques for the simulation of detailed single-phase flows, but a formulation for liquid simulation has proved elusive in part due to the free surface boundary conditions. In this paper, we introduce a stream function approach to liquid simulations with novel boundary conditions for free surfaces, solid obstacles, and solid-fluid coupling. Although our approach increases the dimension of the linear system necessary to enforce incompressibility, it provides interesting and surprising benefits. First, the resulting flow is guaranteed to be divergence-free regardless of the accuracy of the solve. Second, our free-surface boundary conditions guarantee divergence-free motion even in the un-simulated air phase, which enables two-phase flow simulation by only computing a single phase. We implemented this method using a variant of FLIP simulation which only samples particles within a narrow band of the liquid surface, and we illustrate the effectiveness of our method for detailed two-phase flow simulations with complex boundaries, detailed bubble interactions, and two-way solid-fluid coupling

    Simulating liquids on dynamically warping grids

    Get PDF
    We introduce dynamically warping grids for adaptive liquid simulation. Our primary contributions are a strategy for dynamically deforming regular grids over the course of a simulation and a method for efficiently utilizing these deforming grids for liquid simulation. Prior work has shown that unstructured grids are very effective for adaptive fluid simulations. However, unstructured grids often lead to complicated implementations and a poor cache hit rate due to inconsistent memory access. Regular grids, on the other hand, provide a fast, fixed memory access pattern and straightforward implementation. Our method combines the advantages of both: we leverage the simplicity of regular grids while still achieving practical and controllable spatial adaptivity. We demonstrate that our method enables adaptive simulations that are fast, flexible, and robust to null-space issues. At the same time, our method is simple to implement and takes advantage of existing highly-tuned algorithms

    AMM: Adaptive Multilinear Meshes

    Full text link
    We present Adaptive Multilinear Meshes (AMM), a new framework that significantly reduces the memory footprint compared to existing data structures. AMM uses a hierarchy of cuboidal cells to create continuous, piecewise multilinear representation of uniformly sampled data. Furthermore, AMM can selectively relax or enforce constraints on conformity, continuity, and coverage, creating a highly adaptive and flexible representation to support a wide range of use cases. AMM supports incremental updates in both spatial resolution and numerical precision establishing the first practical data structure that can seamlessly explore the tradeoff between resolution and precision. We use tensor products of linear B-spline wavelets to create an adaptive representation and illustrate the advantages of our framework. AMM provides a simple interface for evaluating the function defined on the adaptive mesh, efficiently traversing the mesh, and manipulating the mesh, including incremental, partial updates. Our framework is easy to adopt for standard visualization and analysis tasks. As an example, we provide a VTK interface, through efficient on-demand conversion, which can be used directly by corresponding tools, such as VisIt, disseminating the advantages of faster processing and a smaller memory footprint to a wider audience. We demonstrate the advantages of our approach for simplifying scalar-valued data for commonly used visualization and analysis tasks using incremental construction, according to mixed resolution and precision data streams

    Fast and Scalable Solvers for the Fluid Pressure Equations with Separating Solid Boundary Conditions

    Get PDF
    This is the peer reviewed version of the following article: Lai, J., Chen, Y., Gu, Y., Batty, C. and Wan, J.W. (2020), Fast and Scalable Solvers for the Fluid Pressure Equations with Separating Solid Boundary Conditions. Computer Graphics Forum, 39: 23-33., which has been published in final form at https://doi.org/10.1111/cgf.13909. This article may be used for non-commercial purposes in accordance with Wiley Terms and Conditions for Use of Self-Archived Versions.In this paper, we propose and evaluate fast, scalable approaches for solving the linear complementarity problems (LCP) arising from the fluid pressure equations with separating solid boundary conditions. Specifically, we present a policy iteration method, a penalty method, and a modified multigrid method, and demonstrate that each is able to properly handle the desired boundary conditions. Moreover, we compare our proposed methods against existing approaches and show that our solvers are more efficient and exhibit better scaling behavior; that is, the number of iterations required for convergence is essentially independent of grid resolution, and thus they are faster at larger grid resolutions. For example, on a 2563 grid our multigrid method was 30 times faster than the prior multigrid method in the literature

    An Efficient Geometric Multigrid Solver for Viscous Liquids

    Get PDF
    We present an efficient geometric Multigrid solver for simulating viscous liquids based on the variational approach of Batty and Bridson [2008]. Although the governing equations for viscosity are elliptic, the strong coupling between different velocity components in the discrete stencils mandates the use of more exotic smoothing techniques to achieve textbook Multigrid efficiency. Our key contribution is the design of a novel box smoother involving small and sparse systems (at most 9 x 9 in 2D and 15 x 15 in 3D), which yields excellent convergence rates and performance improvements of 3.5x - 13.8x over a naïve Multigrid approach. We employ a hybrid approach by using a direct solver only inside the box smoother and keeping the remaining pipeline assembly-free, allowing our solver to efficiently accommodate more than 194 million degrees of freedom, while occupying a memory footprint of less than 16 GB. To reduce the computational overhead of using the box smoother, we precompute the Cholesky factorization of the subdomain system matrix for all interior degrees of freedom. We describe how the variational formulation, which requires volume weights computed at the centers of cells, edges, and faces, can be naturally accommodated in the Multigrid hierarchy to properly enforce boundary conditions. Our proposed Multigrid solver serves as an excellent preconditioner for Conjugate Gradients, outperforming existing state-of-the-art alternatives. We demonstrate the efficacy of our method on several high resolution examples of viscous liquid motion including two-way coupled interactions with rigid bodies.This work was supported in part by the Rutgers University start-up grant, the Ralph E. Powe Junior Faculty Enhancement Award, and the Natural Sciences and Engineering Research Council of Canada (RGPIN-04360-2014, CRDPJ-499952-2016)

    Sparse Surface Constraints for Combining Physics-based Elasticity Simulation and Correspondence-Free Object Reconstruction

    Full text link
    We address the problem to infer physical material parameters and boundary conditions from the observed motion of a homogeneous deformable object via the solution of an inverse problem. Parameters are estimated from potentially unreliable real-world data sources such as sparse observations without correspondences. We introduce a novel Lagrangian-Eulerian optimization formulation, including a cost function that penalizes differences to observations during an optimization run. This formulation matches correspondence-free, sparse observations from a single-view depth sequence with a finite element simulation of deformable bodies. In conjunction with an efficient hexahedral discretization and a stable, implicit formulation of collisions, our method can be used in demanding situation to recover a variety of material parameters, ranging from Young's modulus and Poisson ratio to gravity and stiffness damping, and even external boundaries. In a number of tests using synthetic datasets and real-world measurements, we analyse the robustness of our approach and the convergence behavior of the numerical optimization scheme

    An adaptive variational finite difference framework for efficient symmetric octree viscosity

    Get PDF
    While pressure forces are often the bottleneck in (near-)inviscid fluid simulations, viscosity can impose orders of magnitude greater computational costs at lower Reynolds numbers. We propose an implicit octree finite difference discretization that significantly accelerates the solution of the free surface viscosity equations using adaptive staggered grids, while supporting viscous buckling and rotation effects, variable viscosity, and interaction with scripted moving solids. In experimental comparisons against regular grids, our method reduced the number of active velocity degrees of freedom by as much as a factor of 7.7 and reduced linear system solution times by factors between 3.8 and 9.4. We achieve this by developing a novel adaptive variational finite difference methodology for octrees and applying it to the optimization form of the viscosity problem. This yields a linear system that is symmetric positive definite by construction, unlike naive finite difference/volume methods, and much sparser than a hypothetical finite element alternative. Grid refinement studies show spatial convergence at first order in L∞ and second order in L1, while the significantly smaller size of the octree linear systems allows for the solution of viscous forces at higher effective resolutions than with regular grids. We demonstrate the practical benefits of our adaptive scheme by replacing the regular grid viscosity step of a commercial liquid simulator (Houdini) to yield large speed-ups, and by incorporating it into an existing inviscid octree simulator to add support for viscous flows. Animations of viscous liquids pouring, bending, stirring, buckling, and melting illustrate that our octree method offers significant computational gains and excellent visual consistency with its regular grid counterpart.This work was supported in part by the Natural Sciences and Engineering Research Council of Canada (RGPIN-04360-2014, CRDPJ-499952-2016) and the Rutgers University start-up grant

    Mandoline: robust cut-cell generation for arbitrary triangle meshes

    Get PDF
    Although geometry arising "in the wild" most often comes in the form of a surface representation, a plethora of geometrical and physical applications require the construction of volumetric embeddings either of the geometry itself or the domain surrounding it. Cartesian cut-cell-based mesh generation provides an attractive solution in which volumetric elements are constructed from the intersection of the input surface geometry with a uniform or adaptive hexahedral grid. This choice, especially common in computational fluid dynamics, has the potential to efficiently generate accurate, surface-conforming cells; unfortunately, current solutions are often slow, fragile, or cannot handle many common topological situations. We therefore propose a novel, robust cut-cell construction technique for triangle surface meshes that explicitly computes the precise geometry of the intersection cells, even on meshes that are open or non-manifold. Its fundamental geometric primitive is the intersection of an arbitrary segment with an axis-aligned plane. Beginning from the set of intersection points between triangle mesh edges and grid planes, our bottom-up approach robustly determines cut-edges, cut-faces, and finally cut-cells, in a manner designed to guarantee topological correctness. We demonstrate its effectiveness and speed on a wide range of input meshes and grid resolutions, and make the code available as open source.This work is graciously supported by NSERC Discovery Grants (RGPIN-04360-2014 & RGPIN-2017-05524), NSERC Accelerator Grant (RGPAS-2017-507909), Connaught Fund (503114), and the Canada Research Chairs Program
    corecore