Liquid Simulation on Lattice-Based Tetrahedral Meshes

Size: px
Start display at page:

Download "Liquid Simulation on Lattice-Based Tetrahedral Meshes"

Transcription

1 Liquid Simulation on Lattice-Based Tetrahedral Meshes Abstract This paper describes a simulation method for animating the behavior of incompressible liquids with complex free surfaces. The region occupied by the liquid is discretized with a boundary-conforming tetrahedral mesh that grades from fine resolution near the surface to coarser resolution on the interior. At each time-step, semi-lagrangian techniques are used to advect the fluid and its boundary forward, and a new conforming mesh is then constructed over the fluid-occupied region. The tetrahedral meshes are built using a variation of the body-centered cubic lattice structure that allows octree grading and deviation from the lattice-structure at boundaries. The semi-regular mesh structure can be generated rapidly and allows efficient computation and storage while still conforming well to boundaries and providing a meshquality guarantee. Pressure projection is performed using an algebraic multigrid method, and a thickening scheme is used to reduce volume loss when fluid features shrink below mesh resolution. Examples are provided to demonstrate that the resulting method can capture complex liquid motions that include fine detail on the free surfaces without suffering from excessive amounts volume loss or artificial damping. Keywords: Natural phenomena, physically based animation, computational fluid dynamics. CR Categories: I.3.5 [Computer Graphics]: Computational Geometry and Object Modeling Physically based modeling; I.3.7 [Computer Graphics]: Three-Dimensional Graphics and Realism Animation; I.6.8 [Simulation and Modeling]: Types of Simulation Animation. 1 Introduction Numerical fluid simulation has proven to be an extremely effective technique for realistically animating the complex motions of liquids and gasses. Currently, the most commonly used methods employ either regular hexahedral grids or meshless collections of points. Recently however, a number of methods have been proposed that make use of unstructured tetrahedral meshes. (See, for example, [Feldman et al., 2005; Elcott et al., 2007; Klingner et al., 2006].) As with regular grids, these tetrahedral methods can easily model large volumes of incompressible fluid. However, tetrahedral meshes offer potential advantages because they can conform to complex boundaries and mesh grading can be used to focus computational effort where it is most beneficial. Tetrahedral methods have already been successfully demonstrated for situations where a fluid, typically a gas, fills the entire simulation domain and there are no free surfaces. However, animation of most scenarios involving liquids requires realistically capturing the behavior of the liquids free-surfaces. This work has been submitted for publication. Copyright may be transferred without further notice and the accepted version may then be posted by the publisher. Unauthorized viewing, duplication, and/or distribution are prohibited. Figure 1: These images show two views of a liquid pouring down a pair of chutes into a transparent container. The lower four images are a sequence of images evenly spaced in time. In this paper, we describe a method for animating incompressible liquids with free surfaces using tetrahedral meshes. The mesh tessellates the region occupied by the fluid, and the mesh s exterior surface conforms both to the fluid s fixed and free-surface boundaries. To avoid difficulties with meshtangling or self-intersection, we do not attempt to advect the mesh structure forward with the fluid. Instead, we use semi-lagrangian contouring [Bargteil et al., 2005] to determine the fluid s new boundary surface, and then construct a new mesh that tessellates the updated region. Once the new mesh has been constructed, physical properties are transfered from the old mesh to the new using a generalization of semi-lagrangian advection. The method we use for generating our meshes does not create a completely unstructured tetrahedral mesh. Instead, it builds a tiling using the nodes of a body-centered cubic lattice structure corresponding to an octree that encompasses the fluid region. The octree is refined based on distance to the fluid surface resulting in a fine-to-coarse grading from 1

2 surface to interior. Additionally, the nodes and tetrahedra near the surface are modified so that the mesh s exterior surface conforms to the fluid s surface. The mesh generation algorithm is fast, and includes quality guarantees on the resulting semi-structured mesh. The regular structure on the interior of the mesh facilitates efficient storage and computation because the majority of elements in the mesh share a small set of geometric templates. Although semi-lagrangian contouring generally does well at tracking movement of the fluid s free surface, as with any tracking method it still loses sheets and filaments of fluid that thin below the simulation method s finest resolution. This behavior can lead to noticeable volume loss and distracting artifacts. To combat the problem we use a thickening method that attempts to prevent features from thinning to the point where they can no longer be captured by the simulation. It attempts to locate regions where the surface is about to thin below the finest mesh resolution and then slightly thickens those areas. To prevent run-away volume gain as the thickened structures continue to stretch, an artificial effect is added to break the structures apart. The result is that thinning structures tend to fragment just before they reach the point where they would have become unresolvable. Finally, we show how an algebraic multigrid solver can be used to efficiently perform the pressure projection required to ensure that the fluid behaves incompressibly. We have found that this type of solver is easy to implement even with complex boundary geometry and that it significantly out performs the commonly used alternative of preconditioned conjugate gradient solvers. Our results, such as the example shown in Figure 1, demonstrate that tetrahedral meshes can be used to animate liquids without excessive amounts of volume loss or artificial damping. Because tetrahedra can adapt their shape and furthermore as the tetrahedral mesh grades to lower resolution away from the surface we can afford to use very fine tessellation near the surface that captures small surface details that would be difficult to model otherwise. 2 Related Work There are a number of challenges in attaining the level of realism, control, and efficiency required for generating highquality fluid animations. Simulation based methods have been widely adopted by the visual effect industry and the resulting demand has motivated a significant amount of work in this area. Some of the earliest work which established the foundation for subsequent research can be found in [Foster and Metaxas, 1996], [Stam, 1999], [Foster and Fedkiw, 2001]. While those papers generated results for smoke and water, the methods have since been extended to apply to more exotic materials for example, fire, [Nguyen et al., 2002], viscoelastic materials [Goktekin et al., 2004] bubbles, [Zheng et al., 2006], and explosions [Feldman et al., 2003]. Methods for interaction of fluids with rigid, thin, and deformable bodies ( [Carlson et al., 2004], [Guendelman et al., 2005] and [Chentanez et al., 2006] respectively), have also been investigated while [Losasso et al., 2006] presents a method to allow for the interaction of multiple fluids. Recently, [Treuille et al., 2006] introduced an exciting new direction of modelreduction techniques for real-time simulation. One of the fundamental difficulties for simulation is attaining detailed fluid motion and realistic liquid surfaces while maintaining stability and efficiency. One solution is to artificially enhance the vorticity as in [Fedkiw et al., 2001] and [Selle et al., 2005], while [Threy et al., 2006] looks a methods of maintaining the detail when applying control to the simulation. While the majority of papers use regular hexahedral grids to discretize the simulation some have investigated the use of more adaptable computational structures. For example, [Losasso et al., 2004] uses an octree data structure gasses and liquids, and [Klingner et al., 2006] uses an unstructured tetrahedral mesh for gas simulation. Others approaches have moved away from Eulerian grids entirely and use meshless collections of Lagrangian particles to discretize the fluid. A few examples include [Terzopoulos et al., 1989], [Desbrun and Cani, 1996], [Cani and Desbrun, 1997], [Premože et al., 2003], and [Müller et al., 2004]. We use tetrahedral grids to discretize the evolving liquid domain and therefore require a method to economically generate tetrahedral meshes of suitable quality. Mesh generation is a widely investigated field and [Owen, 1998] and [Teng and Wong, 2000] provide good surveys. We have adapted the meshing method by [Labelle and Shewchuk ] which uses a body-centered cubical lattice structure to tetrahedralize a domain defined by an implicit function. This type of meshing algorithm also appears in [Bridson et al., 2005] and it features a number of properties that make it particularly well suited for our fluid simulator. Surface tracking is an important part of a liquid simulator both for determining the location of the liquid to simulate and for generating a surface to render. The particle level set method presented in [Enright et al., 2002] is an effective technique that enjoys widespread use. A number of alternative methods exist and in our work we use a combination of semi-lagrangian contouring from [Bargteil et al., 2005] and the particle based method of presented in [Zhu and Bridson, 2005]. Grid-based level set methods are generally very successful at creating high quality liquid surfaces. The main problem these methods face is the loss of thin features that fall below the resolution of the grid. Solutions to this problem which detect the lost mass and replace it with particles appear in a number of papers for example, [Guendelman et al., 2005] and [Kim et al., 2006]. 3 Methods The basic steps of our simulation method are conceptually simple: 1. A tetrahedral mesh is generated that conforms to the liquid volume. 2. The fluid s governing equations are discretized onto this mesh and are used to determine how the fluid will move. 3. A mesh corresponding to the new configuration is generated, the fluid s state projected onto the new mesh, and the process repeats. Unfortunately, implementing these steps in a manner that produces useful results can be somewhat difficult. Inappropriate discretization of the fluid s governing equations can lead to nonsense solutions. Flowing liquids tend to produce highly complex shapes that are difficult to mesh with reasonable quality elements. Tracking the fluid s free surface forward in time without creating highly objectionable artifacts is a notoriously difficult problem. In the following sections we discuss these issues and explain how we have addressed them. As one would expect, the solutions we use are mainly based on prior work so we focus the discussion on how we have integrated the components and the changes necessary for them to work together. 2

3 Online Submission ID: papers 0509 a. c. b. d. To interpolate velocity within the tetrahedral mesh, we first compute the full velocity vector at each tetrahedra center using its four face normal velocities as described in [Elcott et al., 2007]. Then to interpolate at an arbitrary point we use generalized barycentric interpolation of [Warren et al., 2004] to interpolate over the meshes dual cells. In steps where a small amount of additional smoothing will not produce objectionable artifacts, such as advecting marker particles or the trace-back steps in a semi-lagrangian method, we can optimize interpolating velocity to the primal mesh nodes and then using the barycentric interpolation of those values. This optimization should not be used for computing the values carried forward by the semi-lagrangian advection because the cumulative smoothing would produce excessive damping. We differ from [Klingner et al., 2006] in that we store quantities at the barycenters of tetrahedra and faces instead of at circumcenters. We prefer barycenters as their locations are better behaved. For example, in the interior of our mesh adjacent tetrahedra may have collocated circumcenters which would create difficulties for the gradient operator. While the gradient and interpolation operators were designed with the geometric properties of circumcenters in mind, we find that storing quantities at the barycenters works well in practice. Figure 2: The upper-left image shows a wave of liquid flowing over a hemispherical obstacle. The upper-right image corresponds to the area outlined in green, and it shows a cutaway view of the underlying tetrahedral simulation mesh. The two lower images correspond the small area outlined in yellow. The lower-left shows the surface triangulation used by the surface tracker and the lower-right shows the surface of the simulation mesh Governing Equation and Discretization The incompressible liquids we wish to model are governed by the standard Navier-Stokes equations: u f p = (u ) u + t ρ ρ (1) subject to the volume conserving constraint that: u = 0. (2) In these equations u is the fluid velocity, t time, p pressure, ρ density, and f external forces. The symbol denotes the vector of differential operators = [ / x, / y, / z]t. The basic simulation method follows that of [Stam, 1999]. The fluid state is evolved in time using operator splitting: integrating the state forward by each term of Equation (1) separately. The advection term is solved using the semilagrangian technique. Mass conservation is enforced by integrating the pressure term last, where the pressure is determined by solving a linear system that ensures the final integrated velocity field obeys Equation (2). We use the derivative operators and the velocity interpolation method for tetrahedra as described in [Klingner et al., 2006]. The interested reader should refer to this work for details but we will describe them briefly. Pressures are located at the centers of each tetrahedral cell and velocity is stored at each face center with the component of the velocity field that is normal to that face. To compute the gradient of pressure p at face f in the normal direction, Nf, one take the difference between adjacent pressures divided by the perpendicular distance Df between them. The divergence within a tetrahedra is the sum of the face-normal velocity components zi for each face of the cell weighted by the face area, Ai, multiplied by a ±1 value, s, that orients the face normals outward. ( p) Nf = 1 Df (p2 p1 ) u= 1 Vt P4 i=1 Meshing As show in Figure 2, the tetrahedral meshes we use for simulation conform to the volume occupied by the fluid. This approach has two main advantages. First, the computational cost is only dependent on the region occupied by fluid. Second, it greatly simplifies the handling of boundary conditions as the fluid s boundaries correspond to element boundaries. An additional benefit is that because the mesh is constructed at each frame to match the fluid s current configuration we are able to grade the mesh resolution so that it is fine near the surface where we want detail but coarse on the interior. We assume that the surface is specified by an implicit function that is positive outside the fluid region and negative inside. Initially this function can be specified using conventional modeling tools, and once the simulation has begun it will be updated using the semi-lagrangian contouring method from [Bargteil et al., 2005]. Given the implicit functions that define the interior of the liquid, and the obstacle geometry, the meshing algorithm returns tetrahedra which fill the liquid region, while conforming well to the liquid surface and the obstacles the liquid is in contact with. The meshing strategy that we employ is based on the provably robust algorithm presented by [Labelle and Shewchuk ]. It builds a semi-regular tetrahedral mesh according to body-centered cubical lattice structure that is defined by a balanced octree. Cells of the octree that lie within the liquid surface are filled with tetrahedra that have nodes at the corners and center of the cell. If a neighboring cell is of a finer level then nodes will appear at the face and edge centers of the larger cell. The tetrahedra are built from templates for the various relative refinement level of the cells neighbors. Tetrahedra in cells that are sliced by the liquid surface are modified to conform to the liquid surface. First, the locations are found where the surface intersects the edges of these tetrahedra as defined by the implicit function. If the distance between a lattice node and the edge crossing is a small fraction of the edge length, the node is moved to its closest crossing. Otherwise new nodes are added at the edge crossing location and the portion of the sliced tetrahedra zi Ai si 3

4 Figure 3: This figure illustrates the two-dimensional version of the meshing scheme. Yellow points are the nodes of the octree lattice and the green line shows the location of the fluid s surface. Blue points represent the warped locations of lattice nodes that were near the surface. Red points are nodes created where the surface cut the lattice with no nearby nodes. that is inside the surface is filled with smaller tetrahedra. These tetrahedra can also be built from templates that depend on the number of nodes of the base tetrahedra that have been warped to the surface and how many edge crossings there are. Space does not permit the description each of the possible templates here and we instead refer the reader to [Labelle and Shewchuk ]. Figure 3 shows an example of how this approach can be applied to a two-dimensional triangulation. We also refer the reader to [Labelle and Shewchuk ] for detailed discussion on how this meshing algorithm is guaranteed to produce good-quality tetrahedra and how the edge fraction threshold for node warping should be selected. Very briefly, the strategy generates good quality tetrahedra because in the interior it uses high quality tetrahedra generated by the lattice. Near the boundary it only moves the lattice nodes if the distance is sufficiently small to prevent creating bad tetrahedra or inversion, otherwise it adds a node to an edge that is far enough away from existing nodes to avoid creating new thin tetrahedra Obstacle Conformance In general, the zero-contour of the implicit function that defines the liquid body does not conform perfectly to the obstacle boundary due to small errors in its advection and because of finite resolution. To avoid cumulative error that could lead to meshing inside the obstacle or artificial gaps between the obstacle and fluid, we build a negative signed distanced function for the obstacle then intersect this with the signed distance function for the liquid and use the result as the input of the meshing algorithm. After the mesh is built, nodes that are within some small tolerance (we use 1/8 the edge length of the finest octree level) of an obstacle are moved along their normal direction to snap to the obstacle. We have found that moving by this small distance does not introduce bad quality tetrahedra. A boundary face is classified as liquid-obstacle interface if all of its nodes lie on the obstacle. All other boundary faces are classified as liquid-air interface. Liquid-obstacle faces are treated as closed, non-slip, and liquid-air faces are open Extrapolation Both the semi-lagrangian advection of fluid properties and semi-lagrangian contouring to determine the new fluid sur- Figure 5: Points approximately on the medial axis are generated by comparing cord-lengths to the distance between the cord-center and the nearest point on the surface. In this example, m 1 will be used but m 2 rejected. face will require velocity values outside the simulation domain. The mesher s octree structure provides an excellent structure for this task. The corner nodes of the interior cells are also nodes of the tetrahedral mesh and hence their velocities have already been computed. For the nodes outside the mesh whose velocities are not known, we use the efficient extrapolation technique in [Losasso et al., 2004]. 3.3 Surface The surface tracking algorithm determines liquid s location as it is advected each time step. It takes the current implicit function defining the liquid domain, L t 1 and the current velocity field, v t 1 and determines the liquid s new implicit function, L t, for the next time step. To track our surfaces we use the semi-lagrangian contouring method of [Strain, 2001] and [Bargteil et al., 2005]. This contouring method maintains an explicit polygonal surface representation and near the surface, function values are the exact signed distance to this surface. Away from the surface, function values are interpolated from distance values stored on an octree grid. The new surface is built by contouring the function defined by the composition of backward tracing with the current distance function. We refer the reader to [Bargteil et al., 2005] for more details and access to a publicly available, opensource implementation. As with other surface tracking methods, semi-lagrangian contouring will be unable to resolve fluid regions that thin below the finest resolution of the octree it uses for constructing the new surface. The visual result of this phenomena can include large holes opening up in thin sheets, large sections of spray spontaneously vanishing, and noticeable loss of overall fluid volume. Other researchers have observed that Lagrangian particles can be useful for correcting these problems. In [Enright et al., 2002], for example, the particles play a similar role as the triangle mesh in the semi-lagrangian contouring, namely to correct interpolation values within grid cells near the surface. In our thickening approach we place particles only on the medial axis of thin regions that are in danger of falling below resolution. These particles are then used to explicitly thicken the region so that it can be resolved. This thickening will lead to run-away volume gain so our algorithm also forces the thickened sheets or filaments to break apart. This method is inspired by surface tension effects where thin regions break apart and the liquid is forced away from the break. The scale of the actual surface tension effects are substantially smaller than we can feasibly simulate, but the method s approximation of this behavior captures a roughly similar effect. Or simulations still exhibit some volume loss, but as shown in Figure 4 thickening greatly reduces volume- 4

5 Online Submission ID: papers 0509 Figure 4: These image sequences compare results generated with and without our thickening scheme. The top row uses thickening while the bottom does not. The example with no thickening suffers from visible holes and other artifacts where thin structures have been lost. The volume loss for the non-thickened example is also noticeable in the last frame were the container has failed to fill properly. loss artifacts. We approximate sample locations of medial axis using the following simple strategy that is illustrated by Figure 5. At a vertex pi of the contouring method s polygonal surface, we shoot a ray in the negative normal direction ni and check if the ray hits another surface within distance γslc. If so, we compute the point mi, the midway between pi and the first ray intersection. The location mi is a potential estimate sample position of the medial axis of the thin region. We then compute the minimal distance to the surface, di, using the contouring method s distance function and throw away the sample points where di disagree substantially with the distance from pi to mi. The particles are tagged with their local thickness radius and are advected forward using the velocity vi 1. Referencing the contouring method s advected distance function, we test for particles that fall in grid cells of all positive values. These particles represent mass that will not be contoured by ˆ t, the implicit function before our thickening extension is L added. We refer to these particles as outside particles while those that are in cells with at least one negative value are called inside particles as they are either in or very near the ˆt. location of a surface that would be contoured by L We make an approximate redistribution of the lost mass of the outside particles to their neighboring inside particles. For each outside particle we use its thickness radius to increment the thickness of the inside particles within a small neighborhood radius r1. Currently, we simply distribute the thickness evenly to its neighboring inside particles. While more sophisticated procedures can be developed, we find that this simple procedure suffices. With the updated radii, ˆ t and an implicit the final liquid domain, Lt is the union of L function obtained from the inside particles which we obtain using the method described in [Zhu and Bridson, 2005]. Because thin regions that contain inside particles that neighbor outside particles are thickened a bit they are less likely to be lost in subsequent frames. Optionally, inside particles that are in regions thinner than a threshold can be artificially incremented to be thicker. While this corresponds to a slight increase in mass, often this is preferable to risking losing the thin feature. It is very difficult to perceive a slight increase in the thickness of a thin sheet while the perception of a thin sheet vanishing can be quite jarring. Excessive artificial thickening can, however, create problems in certain situations. For example, if liquid is allowed to spread under gravity, incrementing the thickness too aggressively will allow the liquid to expand outwards without limit. The thickening parameter used in this situation does not correspond to a physical quantity and should be picked to suit aesthetic preferences. Outside particles that have no inside neighbors correspond to larger regions that have thinned within a single time-step. We increment their thickness by a small amount such that the they can contribute directly to Lt. They could also be rendered as particle spray as in [Guendelman et al., 2005] Mesh Thickening The resolution we use for generating the simulation mesh is typically a factor of two coarser than the resolution used for surface tracking. This sampling strategy helps to ensure that we do not smooth surface features during advection, but it can potentially create a situation were no tetrahedra are created in some thin part of the volume returned by the contouring method. To avoid having unstimulated regions of fluid hanging outside the mesh, we perform a second thickening process that only effects the meshing generator, not the surface tracking. We attach an offset function to the particles that were used for the previous surface thickening. The function passed to the mesh generator is the sum of the implicit function defined by the contouring method and the particle offsets. The offsets are computed as: P offset(x) = i W (x pi, h)(γmesh di ) P W (x pi, h) i (3) where γmesh is the size of the mesh generator s finest octree level multiplied by a constant a little greater than one. Our 5

6 choice of W is a W poly6 kernel, { W poly6 (r, h) = 315 (h 2 r 2 ) 3 0 r h 64πh 9 0 otherwise as in [Müller et al., 2003]. We choose h to be 4 times the size of the smallest grid of the simulation mesh s octree. The reason we use different thickening approaches for the contoured surface and the simulation mesh is because they are used for different purposes. For surface tracking, we prefer to get smooth surface and potential lose a bit volume than to get bumpy surface. For meshing, we prefer to not to have any of the rendered surface left hanging outside the simulation mesh and bumps in mesh surface do not impact the rendered appearance. 3.4 Multigrid Solver Enforcing incompressibility for the fluid requires solving Poisson s equation for a pressure field that causes the resulting velocity field to be divergence free. For our discretized system, this amounts to solving a large, sparse, symmetric linear system. We do this efficiently using an algebraic multigrid method. A detailed description of the multigrid method is beyond the scope of this paper but we briefly describe the relevant high level concepts and refer the interested reader to [Mc- Cormick, 1987] and [Trottenberg et al., 2001] for more details. Multigrid is an iterative method that performs some number of steps of a local iterative method, for example Gauss-Seidel, on the original system, Ax = b, and then corrects the solution estimate using estimates from coarser versions of the problem, A k x k = b k, where k is the level of coarseness of the problem. Correction by a coarser system is applied recursively such that the original problem is corrected by an estimate from a coarsened version of the original system, which is obtained with a correction from an even coarser version of the system and so on until the system is small enough to be solved easily with a direct, exact method. The idea is similar to multiresolution methods which start from a solution on a very coarse system and then repeatedly use coarse systems to initialize solutions on refined levels until ultimately solving the problem on the original resolution. When solving a large linear system, it is more effective to make several cycles through all levels of resolution. The particular scheduling for levels of corrections we use is called the full multigrid method and we refer the interested reader to [McCormick, 1987] and [Trottenberg et al., 2001] for details. Often there is no obvious way to construct a coarse version of the problem by geometrically coarsening the mesh, then applying the discrete differential operators to the coarsened mesh. In our case, this is because grouping together tetrahedra will generally not create larger tetrahedra. A similar problem occurs for regular hexahedral grids in the common case when the simulation domain can not be represented using only cells of the largest size (the coarsest level). We therefore use algebraic multigrid, an extension of the multigrid method which is called so because it uses only the matrices to construct coarser versions of the problem instead of geometrically coarsening the problem. Algebraic multigrid works by considering variables i and j to be neighbors (similar to the geometric sense of the meaning) if entry A ij is non-zero. This neighbor information is used to form the prolongation, P, and restriction, R, operators which allow the transfer of values from one level of the problem to another. P interpolates variables from one system to the (4) Sim Mesh SLC Tets(M) Tris(M) Chutes Spray(T) Spray(NT) Angel Dam Break Volcano Table 1: This table shows a break down of simulation times for our examples. Sim denotes the time used for numerical integration and pressure correction. Mesh is the time required for mesh generation. SLC is the time used by the surface tracker. All times are number of second for one frame of animation. The last two columns are the average numbers, in millions, of tetrahedra in the simulation mesh and of triangles in the mesh used by the surface tracker. The (T) and (NT) annotations indicate the spray example with thickening and with no-thickening. next finer level and R downsamples variables to the next coarsest level. With these operators a coarse (k + 1) solution estimate can correct the finer (k) solution estimate by ˆx k = P k x k+1 and the coarser version of the problem is found by A k+1 = R k A k P k and b k+1 = R k b k. We use the popular Galerkin projection method which sets R = P T. To form P first we classify variables of level k as either coarse or fine where coarse variables are those that will exist in the k + 1 th level (the coarser system). Then P is a matrix that interpolates variables on the k th level by taking an average of its coarse labeled neighbors. Therefore, each variable need have at least one coarse labeled neighbor (including itself). The optimal labeling will classify as few coarse variables as possible so that the coarser system is as small as possible. This is the NP complete minimum dominating set or ice cream stands problem from graph theory where the variables are nodes of the graph and edges are determined by non-zero entries in A. We find that the following non-optimal greedy algorithm for variable labeling achieves a good balance between simplicity and effectiveness. 1. Pick a variable at random, label it as coarse. 2. Label the neighbors of the new coarse variable as fine. 3. For all unlabeled neighbors of the new fine variables increment a counter of their total number of fine neighbors. 4. Select the unlabeled neighbor of the new fine variables with the largest number of fine neighbors as the next coarse variable. 5. Repeat steps 2 4 until all variables have been labeled Although the multigrid scheme we are using is not novel, we are not aware of it s prior use for fluid animations. The simulations we used contained between 0.8 million and 1.3 million tetrahedra. For these systems our algebraic multigrid solver was between 1.8 and 2.1 faster than a preconditioned conjugate gradient solver. We also tested on a larger 5 million tetrahedra mesh, that was not used for one of our fluid simulations, and observed a 3 speed up over preconditioned conjugate gradient. We expect that this multigrid solver would also be useful for fluid simulations on other discretizations and that the performance benefit will grow for larger systems. 6

7 Online Submission ID: papers 0509 Figure 6: This sequence shows an initial fluid configuration in the shape of an angle on a square base. Once the simulation begins the structure collapses creating a complex splash pattern. Figure 7: In this sequence a block of liquid is released at one side of a closed container. The resulting wave of water flows over an obstacle and crashes against the far side of the container. 4 Results and Discussion We have tested this simulation method by using it to animate several example scenarios. These example animations appear in the supplemental material for this paper. Our implementation was done in C++, and the examples were run single-threaded on Intel-based workstations running at between 2.8 and 3.2 GHz with 3 or 4 GB of memory. All renderings were done using the open source render, pixie1. Table 1 summarizes timing results. In general, the cost of pressure projection and integration was roughly equal to the cost of mesh generation. In all cases surface tracking dominated the overall cost. The images in Figure 1 show liquid flowing from two suspended sources down a pair of chutes and into a transparent basin. Flow from the left source begins after the right source has already run for a short time. The basin has a bulging bottom that disrupts the liquid s motion. In Figure 4 we compare results generated with and without our thickening scheme. A jet of liquid is sprayed against the side of a container. As the spray hits the wall it forms a thin sheet that rises up against the wall and folds over onto itself. Without thickening, large parts of this sheet vanish. Thickening corrects this problem creating a more plausible result. Figures 6 and 7 both show initial fluid configurations that when released collapse downward creating complex splashes. Some volume loss can be observed in the angel sequence when fluid is ejected upward from the center of the tank. This is an example where our thickening scheme is not completely successful. For that example, increasing thickening to the point were no visible volume loss occurs results in an implausible animation where small ejected structures spontaneously grow and form strange-looking fluid sheets. Our final example, shown in Figure 8, shows fluid flowing down a rough surface and accumulating in a small depression. The fluid wells up from a recessed source and creates flow patterns typical of real fluids. Figure 8: This example shows liquid rising from a recessed source, flowing down over an irregular surface, and the collecting in a depression. The image on the right shows a rotated closeup view of the pool of liquid forming in the depression. In general our simulations exhibit a high degree of fine surface detail. This detail is made possible by the relatively fine resolution used for both surface tracking and for simulation near the fluid s surface. The ability of tetrahedral meshes to focus detail where desired in one of their strong points and a strong motivation for using them over regular grids. In our current implementation we only vary the mesh resolution based on distance from the fluid s surface. However as pointed out in both [Losasso et al., 2004] and [Klingner et al., 2006] there are other useful refinement strategies that could be employed. Previous work in [Klingner et al., 2006] and [Chentanez et al., 2006] looked at how tetrahedral based gas simulations could be simultaneously coupled to simulations of solid bodies. We believe that these techniques should also work with this method. Although some of our examples still exhibit a small amount of volume loss, we are not aware of a liquid simulation method for animation that does not exhibit some type of related artifact. Our thickening scheme provides an adjustable compensation mechanism that allows the user to adjust a simulation s behavior

8 References Bargteil, A. W., Goktekin, T. G., O Brien, J. F., and Strain, J. A A semi-lagrangian contouring method for fluid simulation. ACM Transactions on Graphics. Bridson, R., Teran, J., Molino, N., and Fedkiw, R Adaptive physics based tetrahedral mesh generation using level sets. Engineering with Computers, 21. Cani, M.-P., and Desbrun, M Animation of deformable models using implicit surfaces. IEEE Transactions on Visualization and Computer Graphics 3, 1 (Jan.), Carlson, M., Mucha, P. J., and Turk, G Rigid fluid: animating the interplay between rigid bodies and fluid. In the Proceedings of ACM SIGGRAPH 2004, Chentanez, N., Goktekin, T. G., Feldman, B. E., and O Brien, J. F Simultaneous coupling of fluids and deformable bodies. In the ACM SIGGRAPH 2006 Symposium on Computer Animation, Desbrun, M., and Cani, M.-P Smoothed particles: A new paradigm for animating highly deformable bodies. In Computer Animation and Simulation 1996, Elcott, S., Tong, Y., Kanso, E., Schröder, P., and Desbrun, M Stable, circulation-preserving, simplicial fluids. AMC Transactions on Graphics 26, 1 (Jan.). Enright, D. P., Marschner, S. R., and Fedkiw, R. P Animation and rendering of complex water surfaces. In the Proceedings of ACM SIGGRAPH 2002, Fedkiw, R., Stam, J., and Jensen, H. W Visual simulation of smoke. In the Proceedings of ACM SIGGRAPH 2001, Feldman, B. E., O Brien, J. F., and Arikan, O Animating suspended particle explosions. In the Proceedings of ACM SIGGRAPH 2003, Feldman, B. E., O Brien, J. F., and Klingner, B. M Animating gases with hybrid meshes. In Proceedings of ACM SIGGRAPH 2005, Foster, N., and Fedkiw, R Practical animation of liquids. In the Proceedings of ACM SIGGRAPH 2001, Foster, N., and Metaxas, D Realistic animation of liquids. In Graphics Interface 1996, Goktekin, T. G., Bargteil, A. W., and O Brien, J. F A method for animating viscoelastic fluids. In the Proceedings of ACM SIGGRAPH 2004, Guendelman, E., Selle, A., Losasso, F., and Fedkiw, R Coupling water and smoke to thin deformable and rigid shells. In the Proceedings of ACM SIGGRAPH 2005, Kim, J., Cha, D., Chang, B., Koo, B., and Ihm, I Practical animation of turbulent splashing water. In the ACM SIG- GRAPH 2006 Symposium on Computer Animation, Klingner, B. M., Feldman, B. E., Chentanez, N., and O Brien, J. F Fluid animation with dynamic meshes. In Proceedings of ACM SIGGRAPH 2006, Labelle, F., and Shewchuk, J. R. Isosurface stuffing: Fast tetrahedral meshes with good dihedral angles. In press. Losasso, F., Gibou, F., and Fedkiw, R Simulating water and smoke with an octree data structure. In the Proceedings of ACM SIGGRAPH 2004, Losasso, F., Shinar, T., Selle, A., and Fedkiw, R Multiple interacting liquids. In the Proceedings of ACM SIG- GRAPH 2006, McCormick, S. F Multigrid Methods. Siam, Philidelphia. Müller, M., Charypar, D., and Gross, M Particlebased fluid simulation for interactive applications. In the ACM SIGGRAPH 2003 Symposium on Computer Animation, Müller, M., Keiser, R., Nealen, A., Pauly, M., Gross, M., and Alexa, M Point based animation of elastic, plastic and melting objects. In the ACM SIGGRAPH 2004 Symposium on Computer Animation, Nguyen, D., Fedkiw, R., and Jensen, H Physically based modeling and animation of fire. In the Proceedings of ACM SIGGRAPH 2002, Owen, S. J A survey of unstructured mesh generation technology. In the 7th International Meshing Roundtable, Premože, S., Tasdizen, T., Bigler, J., Lefohn, A., and Whitaker, R Particle-based simulation of fluids. Computer Graphics Forum 22, 3 (Sept.), Selle, A., Rasmussen, N., and Fedkiw, R A vortex particle method for smoke, water, and explosions. In the Proceedings of ACM SIGGRAPH 2005, Stam, J Stable fluids. In the Proceedings of ACM SIG- GRAPH 99, Strain, J. A A fast semi-lagrangian contouring method for moving interfaces. Journal of Computational Physics 169, 1 (May), Teng, S.-H., and Wong, C. W Unstructured mesh generation: Theory, practice, and perspectives. International journal of computational geometry applications 10, 3, Terzopoulos, D., Platt, J., and Fleischer, K Heating and melting deformable models (from goop to glop). In Graphics Interface 1989, Threy, N., Keiser, R., Rde, U., and Pauly, M Detailpreserving fluid control. In the ACM SIGGRAPH 2006 Symposium on Computer Animation, Treuille, A., Lewis, A., and Popovic, Z Model reduction for real-time fluids. In the Proceedings of ACM SIG- GRAPH 2006, Trottenberg, U., Oosterlee, C., and Schuller, A Multigrid. Academic Press, London. Warren, J., Schaefer, S., Hirani, A. N., and Desbrun, M Barycentric coordinates for convex sets. To appear in Advances in Computational and Applied Mathematics. Zheng, W., Yong, J.-H., and Paul, J.-C Simulation of bubbles. In the ACM SIGGRAPH 2006 Symposium on Computer Animation, Zhu, Y., and Bridson, R Animating sand as a fluid. In the Proceedings of ACM SIGGRAPH 2005,

2.5 Physically-based Animation

2.5 Physically-based Animation 2.5 Physically-based Animation 320491: Advanced Graphics - Chapter 2 74 Physically-based animation Morphing allowed us to animate between two known states. Typically, only one state of an object is known.

More information

Lecture 16 - Free Surface Flows. Applied Computational Fluid Dynamics

Lecture 16 - Free Surface Flows. Applied Computational Fluid Dynamics Lecture 16 - Free Surface Flows Applied Computational Fluid Dynamics Instructor: André Bakker http://www.bakker.org André Bakker (2002-2006) Fluent Inc. (2002) 1 Example: spinning bowl Example: flow in

More information

Fluid Animation from Simulation on Tetrahedral Meshes

Fluid Animation from Simulation on Tetrahedral Meshes Fluid Animation from Simulation on Tetrahedral Meshes Bryan Eric Feldman Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report No. UCB/EECS-2007-153 http://www.eecs.berkeley.edu/pubs/techrpts/2007/eecs-2007-153.html

More information

Constrained Tetrahedral Mesh Generation of Human Organs on Segmented Volume *

Constrained Tetrahedral Mesh Generation of Human Organs on Segmented Volume * Constrained Tetrahedral Mesh Generation of Human Organs on Segmented Volume * Xiaosong Yang 1, Pheng Ann Heng 2, Zesheng Tang 3 1 Department of Computer Science and Technology, Tsinghua University, Beijing

More information

Graphics. Computer Animation 고려대학교 컴퓨터 그래픽스 연구실. kucg.korea.ac.kr 1

Graphics. Computer Animation 고려대학교 컴퓨터 그래픽스 연구실. kucg.korea.ac.kr 1 Graphics Computer Animation 고려대학교 컴퓨터 그래픽스 연구실 kucg.korea.ac.kr 1 Computer Animation What is Animation? Make objects change over time according to scripted actions What is Simulation? Predict how objects

More information

Multi-Block Gridding Technique for FLOW-3D Flow Science, Inc. July 2004

Multi-Block Gridding Technique for FLOW-3D Flow Science, Inc. July 2004 FSI-02-TN59-R2 Multi-Block Gridding Technique for FLOW-3D Flow Science, Inc. July 2004 1. Introduction A major new extension of the capabilities of FLOW-3D -- the multi-block grid model -- has been incorporated

More information

Adaptive Particles for Incompressible Fluid Simulation

Adaptive Particles for Incompressible Fluid Simulation Computer Graphics International manuscript No. (will be inserted by the editor) Woosuck Hong Donald H. House John Keyser Adaptive Particles for Incompressible Fluid Simulation Abstract We propose a particle-based

More information

Solving Simultaneous Equations and Matrices

Solving Simultaneous Equations and Matrices Solving Simultaneous Equations and Matrices The following represents a systematic investigation for the steps used to solve two simultaneous linear equations in two unknowns. The motivation for considering

More information

Overset Grids Technology in STAR-CCM+: Methodology and Applications

Overset Grids Technology in STAR-CCM+: Methodology and Applications Overset Grids Technology in STAR-CCM+: Methodology and Applications Eberhard Schreck, Milovan Perić and Deryl Snyder eberhard.schreck@cd-adapco.com milovan.peric@cd-adapco.com deryl.snyder@cd-adapco.com

More information

An Overview of the Finite Element Analysis

An Overview of the Finite Element Analysis CHAPTER 1 An Overview of the Finite Element Analysis 1.1 Introduction Finite element analysis (FEA) involves solution of engineering problems using computers. Engineering structures that have complex geometry

More information

Dual Marching Cubes: Primal Contouring of Dual Grids

Dual Marching Cubes: Primal Contouring of Dual Grids Dual Marching Cubes: Primal Contouring of Dual Grids Scott Schaefer and Joe Warren Rice University 6100 Main St. Houston, TX 77005 sschaefe@rice.edu and jwarren@rice.edu Abstract We present a method for

More information

Lecture 7 - Meshing. Applied Computational Fluid Dynamics

Lecture 7 - Meshing. Applied Computational Fluid Dynamics Lecture 7 - Meshing Applied Computational Fluid Dynamics Instructor: André Bakker http://www.bakker.org André Bakker (2002-2006) Fluent Inc. (2002) 1 Outline Why is a grid needed? Element types. Grid types.

More information

Multiphase Flow - Appendices

Multiphase Flow - Appendices Discovery Laboratory Multiphase Flow - Appendices 1. Creating a Mesh 1.1. What is a geometry? The geometry used in a CFD simulation defines the problem domain and boundaries; it is the area (2D) or volume

More information

Algebra 2 Chapter 1 Vocabulary. identity - A statement that equates two equivalent expressions.

Algebra 2 Chapter 1 Vocabulary. identity - A statement that equates two equivalent expressions. Chapter 1 Vocabulary identity - A statement that equates two equivalent expressions. verbal model- A word equation that represents a real-life problem. algebraic expression - An expression with variables.

More information

Introduction to ANSYS

Introduction to ANSYS Lecture 3 Introduction to ANSYS Meshing 14. 5 Release Introduction to ANSYS Meshing 2012 ANSYS, Inc. March 27, 2014 1 Release 14.5 Introduction to ANSYS Meshing What you will learn from this presentation

More information

Volumetric Meshes for Real Time Medical Simulations

Volumetric Meshes for Real Time Medical Simulations Volumetric Meshes for Real Time Medical Simulations Matthias Mueller and Matthias Teschner Computer Graphics Laboratory ETH Zurich, Switzerland muellerm@inf.ethz.ch, http://graphics.ethz.ch/ Abstract.

More information

Copyright 2011 Casa Software Ltd. www.casaxps.com. Centre of Mass

Copyright 2011 Casa Software Ltd. www.casaxps.com. Centre of Mass Centre of Mass A central theme in mathematical modelling is that of reducing complex problems to simpler, and hopefully, equivalent problems for which mathematical analysis is possible. The concept of

More information

animation animation shape specification as a function of time

animation animation shape specification as a function of time animation animation shape specification as a function of time animation representation many ways to represent changes with time intent artistic motion physically-plausible motion efficiency control typically

More information

Laminar Flow in a Baffled Stirred Mixer

Laminar Flow in a Baffled Stirred Mixer Laminar Flow in a Baffled Stirred Mixer Introduction This exercise exemplifies the use of the rotating machinery feature in the CFD Module. The Rotating Machinery interface allows you to model moving rotating

More information

Introduction to Solid Modeling Using SolidWorks 2012 SolidWorks Simulation Tutorial Page 1

Introduction to Solid Modeling Using SolidWorks 2012 SolidWorks Simulation Tutorial Page 1 Introduction to Solid Modeling Using SolidWorks 2012 SolidWorks Simulation Tutorial Page 1 In this tutorial, we will use the SolidWorks Simulation finite element analysis (FEA) program to analyze the response

More information

Big Ideas in Mathematics

Big Ideas in Mathematics Big Ideas in Mathematics which are important to all mathematics learning. (Adapted from the NCTM Curriculum Focal Points, 2006) The Mathematics Big Ideas are organized using the PA Mathematics Standards

More information

Matching Fluid Simulation Elements to Surface Geometry and Topology

Matching Fluid Simulation Elements to Surface Geometry and Topology Matching Fluid Simulation Elements to Surface Geometry and Topology Tyson Brochu University of British Columbia Christopher Batty University of British Columbia Robert Bridson University of British Columbia

More information

Real-Time Eulerian Water Simulation Using a Restricted Tall Cell Grid

Real-Time Eulerian Water Simulation Using a Restricted Tall Cell Grid Real-Time Eulerian Water Simulation Using a Restricted Tall Cell Grid Nuttapong Chentanez Matthias Mu ller NVIDIA PhysX Research Figure 1: Simulation of a flood at 30 frames per second including physics

More information

Fluid Dynamics and the Navier-Stokes Equation

Fluid Dynamics and the Navier-Stokes Equation Fluid Dynamics and the Navier-Stokes Equation CMSC498A: Spring 12 Semester By: Steven Dobek 5/17/2012 Introduction I began this project through a desire to simulate smoke and fire through the use of programming

More information

Finite Element Formulation for Plates - Handout 3 -

Finite Element Formulation for Plates - Handout 3 - Finite Element Formulation for Plates - Handout 3 - Dr Fehmi Cirak (fc286@) Completed Version Definitions A plate is a three dimensional solid body with one of the plate dimensions much smaller than the

More information

Interactive simulation of an ash cloud of the volcano Grímsvötn

Interactive simulation of an ash cloud of the volcano Grímsvötn Interactive simulation of an ash cloud of the volcano Grímsvötn 1 MATHEMATICAL BACKGROUND Simulating flows in the atmosphere, being part of CFD, is on of the research areas considered in the working group

More information

THE CFD SIMULATION OF THE FLOW AROUND THE AIRCRAFT USING OPENFOAM AND ANSA

THE CFD SIMULATION OF THE FLOW AROUND THE AIRCRAFT USING OPENFOAM AND ANSA THE CFD SIMULATION OF THE FLOW AROUND THE AIRCRAFT USING OPENFOAM AND ANSA Adam Kosík Evektor s.r.o., Czech Republic KEYWORDS CFD simulation, mesh generation, OpenFOAM, ANSA ABSTRACT In this paper we describe

More information

Express Introductory Training in ANSYS Fluent Lecture 1 Introduction to the CFD Methodology

Express Introductory Training in ANSYS Fluent Lecture 1 Introduction to the CFD Methodology Express Introductory Training in ANSYS Fluent Lecture 1 Introduction to the CFD Methodology Dimitrios Sofialidis Technical Manager, SimTec Ltd. Mechanical Engineer, PhD PRACE Autumn School 2013 - Industry

More information

KINETIC MOLECULAR THEORY OF MATTER

KINETIC MOLECULAR THEORY OF MATTER KINETIC MOLECULAR THEORY OF MATTER The kinetic-molecular theory is based on the idea that particles of matter are always in motion. The theory can be used to explain the properties of solids, liquids,

More information

Volume visualization I Elvins

Volume visualization I Elvins Volume visualization I Elvins 1 surface fitting algorithms marching cubes dividing cubes direct volume rendering algorithms ray casting, integration methods voxel projection, projected tetrahedra, splatting

More information

How To Create A Surface From Points On A Computer With A Marching Cube

How To Create A Surface From Points On A Computer With A Marching Cube Surface Reconstruction from a Point Cloud with Normals Landon Boyd and Massih Khorvash Department of Computer Science University of British Columbia,2366 Main Mall Vancouver, BC, V6T1Z4, Canada {blandon,khorvash}@cs.ubc.ca

More information

Model Repair. Leif Kobbelt RWTH Aachen University )NPUT $ATA 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS !NALYSIS OF SURFACE QUALITY

Model Repair. Leif Kobbelt RWTH Aachen University )NPUT $ATA 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS !NALYSIS OF SURFACE QUALITY )NPUT $ATA 2ANGE 3CAN #!$ 4OMOGRAPHY 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS!NALYSIS OF SURFACE QUALITY 3URFACE SMOOTHING FOR NOISE REMOVAL 0ARAMETERIZATION 3IMPLIFICATION FOR COMPLEXITY REDUCTION

More information

FRIEDRICH-ALEXANDER-UNIVERSITÄT ERLANGEN-NÜRNBERG

FRIEDRICH-ALEXANDER-UNIVERSITÄT ERLANGEN-NÜRNBERG FRIEDRICH-ALEXANDER-UNIVERSITÄT ERLANGEN-NÜRNBERG INSTITUT FÜR INFORMATIK (MATHEMATISCHE MASCHINEN UND DATENVERARBEITUNG) Lehrstuhl für Informatik 10 (Systemsimulation) Massively Parallel Multilevel Finite

More information

Back to Elements - Tetrahedra vs. Hexahedra

Back to Elements - Tetrahedra vs. Hexahedra Back to Elements - Tetrahedra vs. Hexahedra Erke Wang, Thomas Nelson, Rainer Rauch CAD-FEM GmbH, Munich, Germany Abstract This paper presents some analytical results and some test results for different

More information

Pre-Algebra 2008. Academic Content Standards Grade Eight Ohio. Number, Number Sense and Operations Standard. Number and Number Systems

Pre-Algebra 2008. Academic Content Standards Grade Eight Ohio. Number, Number Sense and Operations Standard. Number and Number Systems Academic Content Standards Grade Eight Ohio Pre-Algebra 2008 STANDARDS Number, Number Sense and Operations Standard Number and Number Systems 1. Use scientific notation to express large numbers and small

More information

Feature Commercial codes In-house codes

Feature Commercial codes In-house codes A simple finite element solver for thermo-mechanical problems Keywords: Scilab, Open source software, thermo-elasticity Introduction In this paper we would like to show how it is possible to develop a

More information

AN EFFECT OF GRID QUALITY ON THE RESULTS OF NUMERICAL SIMULATIONS OF THE FLUID FLOW FIELD IN AN AGITATED VESSEL

AN EFFECT OF GRID QUALITY ON THE RESULTS OF NUMERICAL SIMULATIONS OF THE FLUID FLOW FIELD IN AN AGITATED VESSEL 14 th European Conference on Mixing Warszawa, 10-13 September 2012 AN EFFECT OF GRID QUALITY ON THE RESULTS OF NUMERICAL SIMULATIONS OF THE FLUID FLOW FIELD IN AN AGITATED VESSEL Joanna Karcz, Lukasz Kacperski

More information

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example. An Example 2 3 4 Outline Objective: Develop methods and algorithms to mathematically model shape of real world objects Categories: Wire-Frame Representation Object is represented as as a set of points

More information

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary Shape, Space, and Measurement- Primary A student shall apply concepts of shape, space, and measurement to solve problems involving two- and three-dimensional shapes by demonstrating an understanding of:

More information

Algebra 1 2008. Academic Content Standards Grade Eight and Grade Nine Ohio. Grade Eight. Number, Number Sense and Operations Standard

Algebra 1 2008. Academic Content Standards Grade Eight and Grade Nine Ohio. Grade Eight. Number, Number Sense and Operations Standard Academic Content Standards Grade Eight and Grade Nine Ohio Algebra 1 2008 Grade Eight STANDARDS Number, Number Sense and Operations Standard Number and Number Systems 1. Use scientific notation to express

More information

1. Fluids Mechanics and Fluid Properties. 1.1 Objectives of this section. 1.2 Fluids

1. Fluids Mechanics and Fluid Properties. 1.1 Objectives of this section. 1.2 Fluids 1. Fluids Mechanics and Fluid Properties What is fluid mechanics? As its name suggests it is the branch of applied mechanics concerned with the statics and dynamics of fluids - both liquids and gases.

More information

The Essentials of CAGD

The Essentials of CAGD The Essentials of CAGD Chapter 2: Lines and Planes Gerald Farin & Dianne Hansford CRC Press, Taylor & Francis Group, An A K Peters Book www.farinhansford.com/books/essentials-cagd c 2000 Farin & Hansford

More information

Introduction to COMSOL. The Navier-Stokes Equations

Introduction to COMSOL. The Navier-Stokes Equations Flow Between Parallel Plates Modified from the COMSOL ChE Library module rev 10/13/08 Modified by Robert P. Hesketh, Chemical Engineering, Rowan University Fall 2008 Introduction to COMSOL The following

More information

CONVERGE Features, Capabilities and Applications

CONVERGE Features, Capabilities and Applications CONVERGE Features, Capabilities and Applications CONVERGE CONVERGE The industry leading CFD code for complex geometries with moving boundaries. Start using CONVERGE and never make a CFD mesh again. CONVERGE

More information

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS TEST DESIGN AND FRAMEWORK September 2014 Authorized for Distribution by the New York State Education Department This test design and framework document

More information

Multiphysics Software Applications in Reverse Engineering

Multiphysics Software Applications in Reverse Engineering Multiphysics Software Applications in Reverse Engineering *W. Wang 1, K. Genc 2 1 University of Massachusetts Lowell, Lowell, MA, USA 2 Simpleware, Exeter, United Kingdom *Corresponding author: University

More information

Mesh Moving Techniques for Fluid-Structure Interactions With Large Displacements

Mesh Moving Techniques for Fluid-Structure Interactions With Large Displacements K. Stein Department of Physics, Bethel College, St. Paul, MN 55112 T. Tezduyar Mechanical Engineering, Rice University, MS 321, Houston, TX 77005 R. Benney Natick Soldier Center, Natick, MA 01760 Mesh

More information

Fluid Simulation For Computer Graphics: A Tutorial in Grid Based and Particle Based Methods

Fluid Simulation For Computer Graphics: A Tutorial in Grid Based and Particle Based Methods Fluid Simulation For Computer Graphics: A Tutorial in Grid Based and Particle Based Methods Colin Braley Virginia Tech Adrian Sandu Virginia Tech Figure 1: Fluid Simulation Examples Abstract In this paper

More information

Position Based Dynamics

Position Based Dynamics 3 rd Workshop in Virtual Reality Interactions and Physical Simulation "VRIPHYS" (2006) C. Mendoza, I. Navazo (Editors) Position Based Dynamics Matthias Müller Bruno Heidelberger Marcus Hennix John Ratcliff

More information

Lesson #13 Congruence, Symmetry and Transformations: Translations, Reflections, and Rotations

Lesson #13 Congruence, Symmetry and Transformations: Translations, Reflections, and Rotations Math Buddies -Grade 4 13-1 Lesson #13 Congruence, Symmetry and Transformations: Translations, Reflections, and Rotations Goal: Identify congruent and noncongruent figures Recognize the congruence of plane

More information

Customer Training Material. Lecture 2. Introduction to. Methodology ANSYS FLUENT. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved.

Customer Training Material. Lecture 2. Introduction to. Methodology ANSYS FLUENT. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved. Lecture 2 Introduction to CFD Methodology Introduction to ANSYS FLUENT L2-1 What is CFD? Computational Fluid Dynamics (CFD) is the science of predicting fluid flow, heat and mass transfer, chemical reactions,

More information

TESLA Report 2003-03

TESLA Report 2003-03 TESLA Report 23-3 A multigrid based 3D space-charge routine in the tracking code GPT Gisela Pöplau, Ursula van Rienen, Marieke de Loos and Bas van der Geer Institute of General Electrical Engineering,

More information

Glencoe. correlated to SOUTH CAROLINA MATH CURRICULUM STANDARDS GRADE 6 3-3, 5-8 8-4, 8-7 1-6, 4-9

Glencoe. correlated to SOUTH CAROLINA MATH CURRICULUM STANDARDS GRADE 6 3-3, 5-8 8-4, 8-7 1-6, 4-9 Glencoe correlated to SOUTH CAROLINA MATH CURRICULUM STANDARDS GRADE 6 STANDARDS 6-8 Number and Operations (NO) Standard I. Understand numbers, ways of representing numbers, relationships among numbers,

More information

BOĞAZİÇİ UNIVERSITY COMPUTER ENGINEERING

BOĞAZİÇİ UNIVERSITY COMPUTER ENGINEERING Parallel l Tetrahedral Mesh Refinement Mehmet Balman Computer Engineering, Boğaziçi University Adaptive Mesh Refinement (AMR) A computation ti technique used to improve the efficiency i of numerical systems

More information

Hardware-Aware Analysis and. Presentation Date: Sep 15 th 2009 Chrissie C. Cui

Hardware-Aware Analysis and. Presentation Date: Sep 15 th 2009 Chrissie C. Cui Hardware-Aware Analysis and Optimization of Stable Fluids Presentation Date: Sep 15 th 2009 Chrissie C. Cui Outline Introduction Highlights Flop and Bandwidth Analysis Mehrstellen Schemes Advection Caching

More information

Triangulation by Ear Clipping

Triangulation by Ear Clipping Triangulation by Ear Clipping David Eberly Geometric Tools, LLC http://www.geometrictools.com/ Copyright c 1998-2016. All Rights Reserved. Created: November 18, 2002 Last Modified: August 16, 2015 Contents

More information

Visualization and Feature Extraction, FLOW Spring School 2016 Prof. Dr. Tino Weinkauf. Flow Visualization. Image-Based Methods (integration-based)

Visualization and Feature Extraction, FLOW Spring School 2016 Prof. Dr. Tino Weinkauf. Flow Visualization. Image-Based Methods (integration-based) Visualization and Feature Extraction, FLOW Spring School 2016 Prof. Dr. Tino Weinkauf Flow Visualization Image-Based Methods (integration-based) Spot Noise (Jarke van Wijk, Siggraph 1991) Flow Visualization:

More information

FOREWORD. Executive Secretary

FOREWORD. Executive Secretary FOREWORD The Botswana Examinations Council is pleased to authorise the publication of the revised assessment procedures for the Junior Certificate Examination programme. According to the Revised National

More information

How To Run A Cdef Simulation

How To Run A Cdef Simulation Simple CFD Simulations and Visualisation using OpenFOAM and ParaView Sachiko Arvelius, PhD Purpose of this presentation To show my competence in CFD (Computational Fluid Dynamics) simulation and visualisation

More information

Customer Training Material. Lecture 5. Solver Settings ANSYS FLUENT. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved.

Customer Training Material. Lecture 5. Solver Settings ANSYS FLUENT. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved. Lecture 5 Solver Settings Introduction to ANSYS FLUENT L5-1 Solver Settings - Introduction So far we have looked at how to setup a basic flow simulation in FLUENT. However you should not assume that just

More information

Rotation: Moment of Inertia and Torque

Rotation: Moment of Inertia and Torque Rotation: Moment of Inertia and Torque Every time we push a door open or tighten a bolt using a wrench, we apply a force that results in a rotational motion about a fixed axis. Through experience we learn

More information

Geometric Constraints

Geometric Constraints Simulation in Computer Graphics Geometric Constraints Matthias Teschner Computer Science Department University of Freiburg Outline introduction penalty method Lagrange multipliers local constraints University

More information

ME6130 An introduction to CFD 1-1

ME6130 An introduction to CFD 1-1 ME6130 An introduction to CFD 1-1 What is CFD? Computational fluid dynamics (CFD) is the science of predicting fluid flow, heat and mass transfer, chemical reactions, and related phenomena by solving numerically

More information

Structural Axial, Shear and Bending Moments

Structural Axial, Shear and Bending Moments Structural Axial, Shear and Bending Moments Positive Internal Forces Acting Recall from mechanics of materials that the internal forces P (generic axial), V (shear) and M (moment) represent resultants

More information

Animation. Persistence of vision: Visual closure:

Animation. Persistence of vision: Visual closure: Animation Persistence of vision: The visual system smoothes in time. This means that images presented to the eye are perceived by the visual system for a short time after they are presented. In turn, this

More information

Reflection and Refraction

Reflection and Refraction Equipment Reflection and Refraction Acrylic block set, plane-concave-convex universal mirror, cork board, cork board stand, pins, flashlight, protractor, ruler, mirror worksheet, rectangular block worksheet,

More information

Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials.

Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials. Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials. Attachment C1. SolidWorks-Specific FEM Tutorial 1... 2 Attachment C2. SolidWorks-Specific

More information

SOFA an Open Source Framework for Medical Simulation

SOFA an Open Source Framework for Medical Simulation SOFA an Open Source Framework for Medical Simulation J. ALLARD a P.-J. BENSOUSSAN b S. COTIN a H. DELINGETTE b C. DURIEZ b F. FAURE b L. GRISONI b and F. POYER b a CIMIT Sim Group - Harvard Medical School

More information

Geometry Notes PERIMETER AND AREA

Geometry Notes PERIMETER AND AREA Perimeter and Area Page 1 of 57 PERIMETER AND AREA Objectives: After completing this section, you should be able to do the following: Calculate the area of given geometric figures. Calculate the perimeter

More information

Classifying Manipulation Primitives from Visual Data

Classifying Manipulation Primitives from Visual Data Classifying Manipulation Primitives from Visual Data Sandy Huang and Dylan Hadfield-Menell Abstract One approach to learning from demonstrations in robotics is to make use of a classifier to predict if

More information

CastNet: Modelling platform for open source solver technology

CastNet: Modelling platform for open source solver technology CastNet: Modelling platform for open source solver technology. DHCAE Tools GmbH Address: Friedrich-Ebert-Str. 368, 47800 Krefeld, Germany / Company site: Alte Rather Str. 207 / 47802 Krefeld Phone +49

More information

POISSON AND LAPLACE EQUATIONS. Charles R. O Neill. School of Mechanical and Aerospace Engineering. Oklahoma State University. Stillwater, OK 74078

POISSON AND LAPLACE EQUATIONS. Charles R. O Neill. School of Mechanical and Aerospace Engineering. Oklahoma State University. Stillwater, OK 74078 21 ELLIPTICAL PARTIAL DIFFERENTIAL EQUATIONS: POISSON AND LAPLACE EQUATIONS Charles R. O Neill School of Mechanical and Aerospace Engineering Oklahoma State University Stillwater, OK 74078 2nd Computer

More information

INTRODUCTION TO RENDERING TECHNIQUES

INTRODUCTION TO RENDERING TECHNIQUES INTRODUCTION TO RENDERING TECHNIQUES 22 Mar. 212 Yanir Kleiman What is 3D Graphics? Why 3D? Draw one frame at a time Model only once X 24 frames per second Color / texture only once 15, frames for a feature

More information

ALGEBRA. sequence, term, nth term, consecutive, rule, relationship, generate, predict, continue increase, decrease finite, infinite

ALGEBRA. sequence, term, nth term, consecutive, rule, relationship, generate, predict, continue increase, decrease finite, infinite ALGEBRA Pupils should be taught to: Generate and describe sequences As outcomes, Year 7 pupils should, for example: Use, read and write, spelling correctly: sequence, term, nth term, consecutive, rule,

More information

HowTo Rhino & ICEM. 1) New file setup: choose Millimeter (automatically converts to Meters if imported to ICEM)

HowTo Rhino & ICEM. 1) New file setup: choose Millimeter (automatically converts to Meters if imported to ICEM) HowTo Rhino & ICEM Simple 2D model 1) New file setup: choose Millimeter (automatically converts to Meters if imported to ICEM) 2) Set units: File Properties Units: Model units: should already be Millimeters

More information

Turbulence Modeling in CFD Simulation of Intake Manifold for a 4 Cylinder Engine

Turbulence Modeling in CFD Simulation of Intake Manifold for a 4 Cylinder Engine HEFAT2012 9 th International Conference on Heat Transfer, Fluid Mechanics and Thermodynamics 16 18 July 2012 Malta Turbulence Modeling in CFD Simulation of Intake Manifold for a 4 Cylinder Engine Dr MK

More information

DATA ANALYSIS II. Matrix Algorithms

DATA ANALYSIS II. Matrix Algorithms DATA ANALYSIS II Matrix Algorithms Similarity Matrix Given a dataset D = {x i }, i=1,..,n consisting of n points in R d, let A denote the n n symmetric similarity matrix between the points, given as where

More information

Module 6 Case Studies

Module 6 Case Studies Module 6 Case Studies 1 Lecture 6.1 A CFD Code for Turbomachinery Flows 2 Development of a CFD Code The lecture material in the previous Modules help the student to understand the domain knowledge required

More information

Efficient Storage, Compression and Transmission

Efficient Storage, Compression and Transmission Efficient Storage, Compression and Transmission of Complex 3D Models context & problem definition general framework & classification our new algorithm applications for digital documents Mesh Decimation

More information

Computers in Film Making

Computers in Film Making Computers in Film Making Snow White (1937) Computers in Film Making Slide 1 Snow White - Disney s Folly Moral: Original Budget $250,000 Production Cost $1,488,422 Frames 127,000 Production time 3.5 years

More information

Grade 5 Math Content 1

Grade 5 Math Content 1 Grade 5 Math Content 1 Number and Operations: Whole Numbers Multiplication and Division In Grade 5, students consolidate their understanding of the computational strategies they use for multiplication.

More information

Shell Elements in ABAQUS/Explicit

Shell Elements in ABAQUS/Explicit ABAQUS/Explicit: Advanced Topics Appendix 2 Shell Elements in ABAQUS/Explicit ABAQUS/Explicit: Advanced Topics A2.2 Overview ABAQUS/Explicit: Advanced Topics ABAQUS/Explicit: Advanced Topics A2.4 Triangular

More information

Off-line Model Simplification for Interactive Rigid Body Dynamics Simulations Satyandra K. Gupta University of Maryland, College Park

Off-line Model Simplification for Interactive Rigid Body Dynamics Simulations Satyandra K. Gupta University of Maryland, College Park NSF GRANT # 0727380 NSF PROGRAM NAME: Engineering Design Off-line Model Simplification for Interactive Rigid Body Dynamics Simulations Satyandra K. Gupta University of Maryland, College Park Atul Thakur

More information

Dear Accelerated Pre-Calculus Student:

Dear Accelerated Pre-Calculus Student: Dear Accelerated Pre-Calculus Student: I am very excited that you have decided to take this course in the upcoming school year! This is a fastpaced, college-preparatory mathematics course that will also

More information

Segmentation of building models from dense 3D point-clouds

Segmentation of building models from dense 3D point-clouds Segmentation of building models from dense 3D point-clouds Joachim Bauer, Konrad Karner, Konrad Schindler, Andreas Klaus, Christopher Zach VRVis Research Center for Virtual Reality and Visualization, Institute

More information

Arrangements And Duality

Arrangements And Duality Arrangements And Duality 3.1 Introduction 3 Point configurations are tbe most basic structure we study in computational geometry. But what about configurations of more complicated shapes? For example,

More information

Plates and Shells: Theory and Computation - 4D9 - Dr Fehmi Cirak (fc286@) Office: Inglis building mezzanine level (INO 31)

Plates and Shells: Theory and Computation - 4D9 - Dr Fehmi Cirak (fc286@) Office: Inglis building mezzanine level (INO 31) Plates and Shells: Theory and Computation - 4D9 - Dr Fehmi Cirak (fc286@) Office: Inglis building mezzanine level (INO 31) Outline -1-! This part of the module consists of seven lectures and will focus

More information

Computational Geometry. Lecture 1: Introduction and Convex Hulls

Computational Geometry. Lecture 1: Introduction and Convex Hulls Lecture 1: Introduction and convex hulls 1 Geometry: points, lines,... Plane (two-dimensional), R 2 Space (three-dimensional), R 3 Space (higher-dimensional), R d A point in the plane, 3-dimensional space,

More information

Finite Element Method (ENGC 6321) Syllabus. Second Semester 2013-2014

Finite Element Method (ENGC 6321) Syllabus. Second Semester 2013-2014 Finite Element Method Finite Element Method (ENGC 6321) Syllabus Second Semester 2013-2014 Objectives Understand the basic theory of the FEM Know the behaviour and usage of each type of elements covered

More information

Prelab Exercises: Hooke's Law and the Behavior of Springs

Prelab Exercises: Hooke's Law and the Behavior of Springs 59 Prelab Exercises: Hooke's Law and the Behavior of Springs Study the description of the experiment that follows and answer the following questions.. (3 marks) Explain why a mass suspended vertically

More information

A Simple Boiling Module

A Simple Boiling Module Eurographics/ ACM SIGGRAPH Symposium on Computer Animation (2007) D. Metaxas and J. Popovic (Editors) A Simple Boiling Module Theodore Kim 1 and Mark Carlson 2 1 IBM TJ Watson Research Center 2 Walt Disney

More information

PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 4: LINEAR MODELS FOR CLASSIFICATION

PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 4: LINEAR MODELS FOR CLASSIFICATION PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 4: LINEAR MODELS FOR CLASSIFICATION Introduction In the previous chapter, we explored a class of regression models having particularly simple analytical

More information

In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data.

In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data. MATHEMATICS: THE LEVEL DESCRIPTIONS In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data. Attainment target

More information

Prentice Hall Algebra 2 2011 Correlated to: Colorado P-12 Academic Standards for High School Mathematics, Adopted 12/2009

Prentice Hall Algebra 2 2011 Correlated to: Colorado P-12 Academic Standards for High School Mathematics, Adopted 12/2009 Content Area: Mathematics Grade Level Expectations: High School Standard: Number Sense, Properties, and Operations Understand the structure and properties of our number system. At their most basic level

More information

Lecture 9: Geometric map transformations. Cartographic Transformations

Lecture 9: Geometric map transformations. Cartographic Transformations Cartographic Transformations Analytical and Computer Cartography Lecture 9: Geometric Map Transformations Attribute Data (e.g. classification) Locational properties (e.g. projection) Graphics (e.g. symbolization)

More information

Introduction to the Finite Element Method

Introduction to the Finite Element Method Introduction to the Finite Element Method 09.06.2009 Outline Motivation Partial Differential Equations (PDEs) Finite Difference Method (FDM) Finite Element Method (FEM) References Motivation Figure: cross

More information

A New Approach to Cutting Tetrahedral Meshes

A New Approach to Cutting Tetrahedral Meshes A New Approach to Cutting Tetrahedral Meshes Menion Croll August 9, 2007 1 Introduction Volumetric models provide a realistic representation of three dimensional objects above and beyond what traditional

More information

Introduction to CFD Analysis

Introduction to CFD Analysis Introduction to CFD Analysis 2-1 What is CFD? Computational Fluid Dynamics (CFD) is the science of predicting fluid flow, heat and mass transfer, chemical reactions, and related phenomena by solving numerically

More information

Introduction to CFD Basics

Introduction to CFD Basics Introduction to CFD Basics Rajesh Bhaskaran Lance Collins This is a quick-and-dirty introduction to the basic concepts underlying CFD. The concepts are illustrated by applying them to simple 1D model problems.

More information