Particle Tracing Algorithms for 3D Curvilinear Grids. I. Ari Sadarjoen Theo van Walsum Andrea J.S. Hin. Frits H. Post. Delft University of Technology,

Size: px
Start display at page:

Download "Particle Tracing Algorithms for 3D Curvilinear Grids. I. Ari Sadarjoen Theo van Walsum Andrea J.S. Hin. Frits H. Post. Delft University of Technology,"

Transcription

1 Particle Tracing Algorithms for 3D Curvilinear Grids I. Ari Sadarjoen Theo van Walsum Andrea J.S. Hin Frits H. Post Delft University of Technology, Faculty of Technical Mathematics and Informatics, Julianalaan 132, 2628 BL Delft, The Netherlands This paper presents a comparison of several particle tracing algorithms on curvilinear grids. The fundamentals of particle tracing algorithms are described and used to split tracing algorithms into basic components. Based on this decomposition, two dierent strategies for particle tracing are described in greater detail: tracing in computational space and tracing in physical space. Accuracy and speed tests are performed for both types of algorithms. From these tests it is concluded that particle tracing algorithms in physical space generally perform better than algorithms in computational space. Keywords: scientic visualization, vector eld visualization, particle tracing, interpolation, grid transformation 1 Introduction Computational Fluid Dynamics (CFD) is concerned with modelling uid ows. Increasingly sophisticated software is being developed to simulate interesting ow phenomena. Scientists can gain insight in the resulting data by visualization. One method of visualizing a velocity eld is particle tracing, which involves releasing particles into a ow and calculating their positions at specic times. In general, CFD simulations provide a velocity eld dened on a discrete grid. The simplest grids are block-shaped with cubical cells. Particle tracing algorithms for such Cartesian grids are investigated in [Yeung & Pope, 1988; Kontomaris & Hanratty, 1992]. In CFD practice, the grids are often boundary-tted and therefore curvilinear, with the purpose of solving ows in complex geometries. Particle tracing algorithms for CFD grids were presented in [Buning, 1989; Buning, 1988]. Some algorithms transform a curvilinear grid to a Cartesian grid and perform particle tracing in the Cartesian space [Strid et al., 1989]. A more detailed description of this method was recently given in [Shirayama, 1993]. In most papers on particle tracing, the scope is limited to a single method. If alternatives are given at all, they are not closely examined. Often, not all details of the particle tracing process are given, suggesting that some operations are straightforward. In commercial visualization packages, background information concerning the applied algorithms is seldom given. The present paper addresses the above issues. Detailed descriptions are given of the particle tracing process, which is split into distinct components. The strengths and weaknesses of dierent implementations of these components are studied and visualized. The main aspects considered are accuracy and performance. After covering the fundamentals of particle tracing in section 2, the details of two dierent classes of particle tracing algorithms will be described in section 3 and 4. Considerations for the implementation of several algorithms, as well as an overview of test cases are given in section 5. The test results and a discussion are presented in section 6. Finally, section 7 derives some 1

2 conclusions. 2 Fundamentals of particle tracing Although many terms are in use for grid types, we will reserve the term Cartesian grids for grids with straight grid lines and unit cubes as cells, and curvilinear grids for grids with curved (or more precisely: piecewise straight) grid lines and a regular topology. We will start by explaining the principles of particle tracing in Cartesian grids. 2.1 Cartesian grids The computation of a particle path is based on a numerical integration of the ordinary dierential equation dx = v(x) (1) dt where t denotes time, x the position of the particle and v(x) the velocity eld. The starting position x 0 of the particle provides the initial condition: x(t 0 ) = x 0 (2) The solution is a sequence of particle positions (x(t 0 ); x(t 1 ); : : :). A particle tracing algorithm must perform the following steps. First, a search is performed for the cell which contains the initial position of the particle. To determine the velocity at this position, the velocities at the cell corners are interpolated. Then, an integration step calculates the next position of the particle. Again, a search is performed, this time for the cell containing the new position. The process of interpolation, integration and point location is repeated until the particle leaves the grid. This process can be translated into pseudo-code representing the general structure of a particle tracing algorithm: find cell containing initial position while particle in grid determine velocity at current position calculate new position find cell containing new position endwhile (point location) (interpolation) (integration) (point location) Note that the above pseudo-code is merely intended to show the main algorithm components; in real implementations many renements and optimizations could be made. Point location Determining which cell contains a specied point is called point location. The coordinates of a point can be divided into their integer and fractional parts: x = (x; y; z) = [i; j; k] + (; ; ), where i; j; k are integers and ; ; 2 [0; 1]. In paper, we will refer to [i; j; k] as the indices and (; ; ) as the osets. Point location in a Cartesian grid is as simple as truncating the coordinates to their integer parts. Here, determining the osets is also considered to be part of the point location operation, but sometimes we will strictly distinguish between point location and oset determination. Interpolation To obtain a value of the velocity eld at other points than the grid nodes, it is necessary to determine an interpolated value from the nodes surrounding the point. The standard way to do this in cubical cells is trilinear interpolation. This requires the cell indices and the osets 2

3 obtained through point location. Let I; J; K 2 f0; 1g and let the basis functions be dened as 0 () = 1? and 1 () =. Then, for a point x in a cell [i,j,k] with osets (; ; ), the function T determines the interpolated value from the corner velocities v i;j;k : : :v i+1;j+1;k+1. Integration v = T (v; ; ; ) = 1X I;J;K=0 v i+i;j+j;k+k I () J () K () (3) Many integration methods are known in the literature, ranging from the simple rst-order Euler scheme to the fourth-order Runge-Kutta scheme or even higher-order methods, applied with xed or variable time steps. A well-known second-order method is Heun's scheme, also known as a second-order Runge-Kutta scheme. Starting from position x n at time t = t n, the position x n+1 at time t = t n+1 is calculated in two steps: x n+1 = x n + t v(x n ) (4) x n+1 = x n + t 1 2 v(xn ) + v(x n+1) (5) 2.2 Curvilinear grids In practice, the grids used in many CFD applications are not Cartesian. To handle complex geometries, curvilinear, boundary-tted grids are used. These grids are also referred to as structured grids, because they have a regular topological structure, as opposed to unstructured grids as used in Finite Element Methods. While this allows for a large variety of geometries, numerical procedures are more dicult in curved grids. This is the reason why in CFD ow solvers, the curvilinear grid in the physical domain is often internally transformed to a Cartesian grid in a new domain. The physical domain will be called P-space (P) and the new domain will be called computational space or C-space (C). Many calculations are performed more eciently in the simple Cartesian grid in C-space. In particle tracing in a curvilinear grid similar problems arise. Especially point location and interpolation become more complex. This suggests the use of a similar procedure in determining particle paths for visualization purposes as for ow solving. A transformation is dened from physical space to computational space such that the curvilinear grid becomes a Cartesian grid (see gure 1). z ζ x y physical space (x,y,z) (i, j, k) ξ (i, j, k) computational space (ξ,η,ζ) η Figure 1: Transformation between P and C In a Cartesian grid, point location and interpolation can be carried out as described in the previous subsection. We must transform the positions of the complete path back to the physical domain to be able to visualize it, but the use of the convenient computational domain may increase the eciency of the algorithm. The details will be discussed in section 3. 3

4 An alternative is to calculate the particle path directly in P-space (P). This would involve more complex point location and interpolation, but would avoid grid transformation. This alternative will be covered in section Restrictions We will restrict our attention to stepwise integration methods. Also, we will only use the secondorder Runge-Kutta method with xed time steps. For reasons of simplicity, we consider the ow eld to be time-independent. A paper that discusses visualization of time-dependent ow elds is [Lane, 1993]. 3 C-space algorithms Particle tracing in computational space proceeds in almost the same way as described in section 2.1, except that the physical velocities v must be transformed to u in C and instead of equation (1), the following dierential equation is solved: d dt = u() (6) where denotes a position in C. The solution is now a sequence of positions ((t 0 ); (t 1 ); : : :) in computational coordinates. As a consequence, the particle path calculated in C must be transformed to physical space for visualization purposes. The general form of the algorithm then becomes: find cell containing initial position while particle in grid transform corner velocities from P to C determine C-velocity at current position calculate new position in C-space transform C-position to P find cell containing new C-position endwhile (point location) (transform velocities) (interpolation) (integration) (transform position) (point location) The point location and interpolation parts in this algorithm are straightforward, because the computational grid is Cartesian. However, from the pseudo-code it can be seen that two transformation operations are introduced. First, the physical velocities must be transformed to C-space. Second, the calculated particle positions must be transformed back to P-space. The former operation is not necessary if it is possible to use the velocities in computational space that are used during the ow solving process. However, we also assume that the results from the ow solver are physical velocities. It should be emphasized, that in the above algorithm the velocity eld is not transformed and stored in its entirety, but only the velocities in the current cell are transformed on-the-y. In other words, they are local transformations, since in most of the cases no single, global grid transformation from P to C exists. 3.1 Transformation of positions from C to P The transformation of a position from C to P is relatively straightforward. What is necessary, is a transformation which maps the corner nodes of a cubic cell in computational space to the corner nodes of a cell in physical space. The edges between nodes are assumed to be straight in either space. This leads to a transformation which is equivalent to a trilinear interpolation between the cell corner P-space positions, as in equation (3). The function T transforms a C-space position = (; ; ) consisting of integer parts [i; j; k] and fractional parts (; ; ) to a P-space position x as x = T (x; ; ; ) (7) 4

5 3.2 Transformation of velocities from P to C. A velocity u in C is transformed to v in P according to: and similarly, a velocity v in P can be transformed to u in C with v = J u (8) u = J?1 v (9) The matrix J is called the Jacobian and contains the partial derivatives: J = x x x 1 y y y A (10) z z z where x is short The matrix J can be thought of as consisting of the columns (j1 j j 2 j j 3 ). These are in fact the @ As we are dealing with (discrete) grids, the Jacobian must calculated with nite dierences. There are several methods for doing this. Another aspect is the number of Jacobians used for each cell. Jacobian approximations To approximate a Jacobian in a grid point, several types of dierencing are available. Given the coordinates of the grid nodes x i;j;k where [i; j; k] lie within the grid boundaries, there are at least three possibilities: forward dierences: j 1 = x = x i+1;j;k? x i;j;k backward dierences: j 1 = x = x i;j;k? x i?1;j;k central dierences : j 1 = x = (x i+1;j;k? x i?1;j;k )=2 Calculating the derivatives j 2 = x and j 3 = x proceeds in a similar way. In a 2D cell, these dierences can be combined to the cases in gure 2. In an arbitrary grid node (gure 2a) either forward dierences (gure 2b), backward dierences (gure 2c) or central dierences (gure 2d) can be calculated. Alternatively, mixed dierences, such as forward for j 1 and backward for j 2 (gure 2e), or vice versa (gure 2f) can be used. Number of Jacobians The other aspect is the number of Jacobians calculated in a cell. Basically, there are three options: one for each cell (see gure 3a) one for each node (see gure 3b) one for each node for each adjacent cell (see gure 3c) The simplest and fastest method is to calculate only one Jacobian per cell [Strid et al., 1989]. By computing forward, backward or central dierences in one node, for example in the lower left node, it is assumed that this Jacobian reasonably represents the deformation throughout the entire cell (see gure 3a). Another approach is to calculate separate Jacobians in each grid node [Shirayama, 1993]. Now, four dierent Jacobians have to be calculated in a 2D cell (see gure 3b), or eight in a 3D cell. Using mixed types of dierences leads to one Jacobian per node per adjacent cell. The Jacobian for a node is calculated according to which cell the particle is in. We shall call this forward/backward dierences (see gure 3c). 5

6 j_1 j j_1 j_2 j_2 i a b c j_1 j_1 j_2 j_2 j_1 j_2 d e f Figure 2: Several types of dierences for Jacobian calculation J_cd J_cd J_bdbd J_cd J_cd J_bdfd J_cd J_fdbd a b J_fdfd c Figure 3: Number of Jacobians in a 2D cell 6

7 This method of calculating Jacobians is mathematically correct when trilinear interpolation is used for point transformation. We give more details on this in the Appendix. The results have been conrmed by other researchers who have found similar results [Kenwright, 1994]. 4 P-space algorithms The alternative to particle tracing in a simple Cartesian grid in C-space, is particle tracing in a complex curvilinear grid in P-space. This has a considerable impact on the complexity of the algorithm presented in section 2. In particular, point location and interpolation are not straightforward. There is no longer a simple relation between a physical position in space and the grid cell that contains it. Moreover, as the cells in a curvilinear grid are not cubes, it is also not as easy to perform trilinear interpolation, because the relative position (fractional osets) of a position in a cell is hard to determine. The next two subsections will discuss alternative point location and interpolation methods, respectively. 4.1 Point location methods We can distinguish between global and incremental point location. In global point location, a given point in a grid must be found with no previous known cell. In a curvilinear grid this is not an easy task. As with all search algorithms it is possible to use a simple brute-force algorithm which searches all grid cells one-by-one. Naturally, this is expensive. Auxiliary data structures can be used to perform a smart search [Neeman, 1990; Williams, 1992]. Fortunately, particle tracing is a step-by-step process, in which, most of the time, global point location is only necessary to nd the cell containing the initial position of a particle. After this, there is always a current starting position and a current starting cell, from which the new position is to be found. This occurs at every integration step that starts from the current particle position in some known cell and calculates a new position. The following paragraphs will discuss only incremental point location. Tetrahedrization To use tetrahedrization, the curvilinear hexahedral cells are decomposed into tetrahedra. The reasons for this are: 1. Tetrahedra are convex, which facilitates testing if a specied point is inside. 2. Tetrahedra have planar faces, which facilitates intersection with a line. Incremental point location can now be performed by drawing a line from the previous known position to the next position [Garrity, 1990]. Intersections with the faces of the tetrahedron and containment tests in neighbouring cells are used to locate the new point. Tetrahedrization is only performed in the cells along the path of the line and the results do not have to be stored, nor does the tetrahedrization involve insertion of new grid points. Stencil Walk and Newton-Raphson Let P be a point given in physical space that must be found in computational space. In the so-called stencil walk method [Buning, 1989], rst an initial point in computational space is chosen. This point is transformed to physical space using the transformation x = T (x; ; ; ). The dierence between the transformed point x and the target point P is calculated as x = x?p. This dierence vector in physical space is transformed to computational space using = J?1 x and added to the previous point, resulting in a new guess. If one of the elements of is outside the range [0; 1], the centre of the corresponding neighbouring cell is the new guess. The iterative process continues until the right cell has been found. Once the correct cell has been found, one can iterate until the value of is small enough. 7

8 We can also use the well-known Newton-Raphson iteration [Gerritsen, 1988; Mooiman, 1993] that nds the root to the equation F() = 0 by the following relation: n+1 = n? F() F 0 () (11) Here, F is dened as F() = P? T (), P is again the point in P-space to be found in C-space, and T is the function that transforms a point from C-space to P-space. Then, the derivative F 0 =?T 0 is a Jacobian matrix, and the usually 1D division by F 0 turns into a matrix inversion in 3D. Experiments have shown that this method converges rapidly [Mooiman, 1993]. It can be shown that oset calculation using a Newton-Raphson process is identical to oset calculation using a stencil walk process, if the stencil walk algorithm uses interpolated forward/backward Jacobians for the transformation of x. By substituting the above denition of F into equation 11, taking into account that F 0 = J, the equivalence relation can be easily derived. 4.2 Interpolation methods Trilinear interpolation If the osets in the cell (; ; ) are available, an interpolated velocity can be determined from the data values in the cell corners, as in equation (3). One way to determine (; ; ) in a curvilinear grid is by using the Stencil Walk/Newton-Raphson iteration. The following two methods provide alternative ways of interpolation that do not require the osets. Inverse Distance Weighting Let x 0 ; : : :; x 7 be the coordinates of the eight corner nodes of a hexahedral cell, and let v 0 ; : : :; v 7 be the velocities in those nodes. Then, the interpolated value v in point X is calculated as a weighted average of the corner values [Wilhelms et al., 1990; Watson, 1992]: v = w 0 v 0 + w 1 v w 7 v 7 (12) The weight of each data point is calculated as a function of the Euclidian distance between x i and X: d i = kx i? Xk (13) w i = 7X j=0 1 (d i) 2 1 (d j ) 2 In a 2D cell consisting of four nodes, the same principle can be applied (see gure 4). Should X be close to a corner node, the distance d i would be nearly zero and the value w i would be unpredictable. This is handled in the algorithm by testing whether the distance d i is close to zero, in which case the weight of that corner is set to 1, and the weights of all other nodes are set to zero. The advantage of this method is that it does not require the fractional osets. The disadvantage is that the interpolated eld is discontinuous over cell boundaries. Volume Weighting In volume weighting, interpolation is performed within a tetrahedron, based on volume weights. Let X be a point in a tetrahedron consisting of nodes x 0 ; x 1 ; x 2 and x 3. Then, the tetrahedron can be subdivided into four tetrahedra, in all of which X is a corner node. The weight for each node of the main tetrahedron is the ratio of the volume of the subtetrahedron to the volume of the main tetrahedron [Buning, 1989]. (14) w 0 = V123X V 0123 w 1 = V023X V 0123 w 2 = V013X V 0123 w 3 = V012X V 0123 (15) 8

9 x3 x2 d3 d2 d0 X d1 x1 x0 Figure 4: Inverse Distance Weighting The volume of an arbitrary tetrahedron ABCD is calculated as V ABCD = 1 6 j ~ AB ( ~ AC ~ AD)j (16) This interpolation method can take advantage of the information created in decomposing cells into tetrahedra, if tetrahedrization is used as the point location method. The principle is demonstrated in 2D in gure 5, where the equivalent of tetrahedral volumes are triangular areas. The weight of node x 0 is the ratio of the area A 0 of the opposing subtriangle to the area of the main triangle. Volume weighting is continuous over the cell faces. x2 X A0 x0 x1 Figure 5: Area weighting Note that in 3D only four nodes of the cell are used for the interpolation, since only one of the subtetrahedra forming the hexahedral cell is used, whereas in IDW or trilinear interpolation eight nodes are used. 5 Implementation and test ows Based on the descriptions in section 3, the algorithms listed in table 1 and 2 have been implemented. Table 1 lists the C-space algorithms. In all of these, point location and interpolation are straightforward as described in section 2. Only the transformation methods vary. In C-FD1, one Jacobian is calculated per cell using forward dierences in one node. In C-FD8 and C-CD8, eight Jacobians are calculated per cell using forward and central dierences, respectively. In C-FDBD, eight Jacobians are calculated per cell using mixed dierences. Table 2 lists the P-space algorithms, each with a code of the form (P-xx-yy). Here, -xxstands for the point location method, and yy for the interpolation method used. P-T-IDW uses 9

10 Algorithm Transformation C-FD1 1 forward di. per cell C-FD8 8 forward di. per cell C-CD8 8 central di. per cell C-FDBD forward/backward di. Table 1: C-space algorithms Algorithm Interpolation P-T-IDW Inv. Dist. Weighting P-T-VOL Volume Weighting P-SW-TRI Stencil Walk + trilin. Table 2: P-space algorithms the tetrahedrization (-T-) for point location and Inverse Distance Weighting for interpolation. P-T-VOL also uses tetrahedrization for point location, but uses volume weighting for interpolation. P-SW-TRI uses a Stencil Walk for point location, and trilinear interpolation with fractional osets obtained by the point location process. All implemented algorithms employ a second-order Runge-Kutta method as described in section 2. First-order methods (such as Euler) were found to be inadequate by several researchers [Buning, 1988; Shirayama, 1993]. Others use higher-order methods as well. But since the integration method was not our main point of interest, we did not implement these. Test ows Ideally, to test the algorithms, ows should be used for which it is possible to analytically calculate the path travelled by a particle. Given a particle starting position, it should be possible to calculate the particle position x(t) for any given time t. This allows for a comparison of the particle paths computed by the algorithms to the theoretical paths. Unfortunately, in 3D ows it is seldom possible to determine the analytical solution of a particle trajectory. This make it more dicult to verify the accuracy of 3D particle paths. Therefore, we used only two-dimensional ows (although they were dened on a 3D grid). Nevertheless, there is no reason to expect that the third dimension should behave dierently from the other two. Altogether, in this study we used seven test ows: two 2D theoretical ows, two 2D CFD simulated ows and three 3D simulated ows [Sadarjoen, 1994]. In this paper we will present only two typical 2D examples, one theoretical and one simulated ow. Uniform ow in straight pipe with curved grid One kind of ow where the theoretical particle paths are known, is a uniform ow. This test ow is dened on a 21 x 41 x 2 curvilinear grid, which originates from a practical CFD application (see gure 6). The grid represents a vertical pipe with an inlet located at the bottom and an outlet at the top. Flow in L-shaped pipe The second test ow uses an L-shaped pipe, in which the ow has been calculated using the ISNaS CFD-simulation package [Mynett et al., 1991]. The grid shown in gure 7 consists of 7 x 23 x 2 nodes and contains a sharp discontinuity. The inlet of the pipe is at the right (x = 2:5). 6 Test results 6.1 Transformation eect The two test cases described above were used to test the eect of the transformation component in a C-space particle tracing algorithm. All C-space algorithms (C-FD1, C-FD8, C-CD8 and C-FDBD) were applied to these two problems. As a reference, a P-space algorithm (P-T-IDW) was used. 10

11 Figure 6: Curved grid y x Figure 7: L-pipe grid 11

12 Uniform ow in straight pipe with curved grid As the ow eld is uniform, the particle paths should be straight vertical lines. All P-space algorithms produce this exact solution. Figure 8 shows the resulting particle paths calculated by the P-T-IDW algorithm. Since the velocity eld in P-space is constant, the P-space algorithms all give the same solution, so any other P-space algorithm could be used instead of P-T-IDW. The particle paths produced by C-FD1 are shown in gure 9; they are not straight. The other C-space algorithms produce similar inaccurate results. Figure 8: Flow in straight pipe with curved grid. Straight particle paths P-T-IDW A closer comparison is possible when particle paths calculated by dierent algorithms are combined in one gure. In gure 10 the particle paths produced by ve algorithms are combined and magnied to highlight the dierences. The straight solid line was produced by the P-space algorithm. The other solid line, closest to the other one, but with a few oscillations, was produced by the C-FDBD-algorithm. The other C-space algorithms show greater deviations, in particular C-FD1 and C-FD8. C-CD8 appears to be signicantly more accurate, but C-FDBD still gives the best results. From these results the conclusion could be drawn that a simple transformation as described in [Strid et al., 1989] (C-FD1) or [Shirayama, 1993] (C-FD8) gives inadequate results. Flow in L-shaped pipe In the previous test, two C-space algorithms were found to be signicantly better than the others: the C-CD8 algorithm which uses central dierences and the C-FDBD algorithm, which uses forward/backward dierences. These two algorithms were applied to the test ow in the L-shaped pipe. The integration timestep was set to 0.01, with up to 1000 time steps calculated. Figure 11 shows the result of the C-CD8 algorithm, gure 12 shows the result of the C-FDBD algorithm. Again, we observe that the results of C-FDBD are better than those of C-CD8, in spite of the fact that C-CD8 is a second-order method and C-FDBD a rst-order method. However, the dierence between the two methods is that C-CD8 transforms the physical velocity eld into a continuous velocity eld in C-space, while C-FDBD transforms it into a discontinuous velocity eld. Since the 12

13 Figure 9: Flow in straight pipe with curved grid. Curved particle paths C-FD P-4-IDW C-FD1 C-FD8 C-FDBD C-CD Figure 10: particle path produced by dierent algorithms 13

14 Figure 11: Particle paths in L-shaped pipe; Algorithm C-CD8 Figure 12: Particle paths in L-shaped pipe; Algorithm C-FDBD 14

15 grid lines are not dierentiable at the grid nodes, the transformed velocity eld in C-space must be discontinuous. We will return to this subject in the discussion (section 6.4). 6.2 Interpolation eect To investigate the eect of the interpolation method on the accuracy of the particle paths, the P-space algorithms (P-T-IDW, P-T-VOL, P-SW-TRI) were examined. These algorithms dier only in their interpolation components. Again, the ow in the L-pipe was used. The same particles as in the previous test were released and their paths traced. Figure 13 shows the results for the P-T-VOL algorithm. The results for the other P-space algorithms cannot be visually distinguished and are therefore not included. Figure 13: Particle paths in L-shaped pipe; Algorithm P-T-VOL 6.3 Speed comparison All algorithms were applied to the ow in the L-shaped pipe and total execution times were measured with timing routines. Table 3 lists the results in seconds. The platform used was a SiliconGraphics Iris 4D/310-VGX workstation. Algorithm P-T-IDW P-T-VOL P-SW-TRI Execution time Algorithm C-FD1 C-FD8 C-CD8 C-FDBD Execution time Table 3: Timing results 15

16 6.4 Discussion Accuracy: interpolation In general, the dierences in accuracy between the P-space algorithms caused by various interpolation methods are marginal. Both the 2D and 3D test cases that we have used have shown this. Accuracy: velocity eld transformation The accuracy of C-space algorithms is largely determined by the transformation. C-FDBD is the most accurate algorithm. This can be explained from an analysis of the transformation based on a simple test case. Consider the uniform vector eld in the four curvilinear cells in gure 14. When transforming this vector eld to computational space, the vectors at the left and right borders (x = 0 and x = 3) are not a problem because the grid lines are dierentiable there. The problem lies in the vectors in the middle of the grid, especially the vector in (2, 1). Now, assume that particles are released from (1; 0) and (2; 0). In P-space this would result in straight the particle paths in x = 1 and x = 2 (see gure 15). When these particle paths are transformed to C-space, we obtain the curved paths shown in gure 16. Note that here, not vectors are transformed, but positions on the paths, using the Newton-Raphson iteration described earlier. Consider the rightmost path, with a sharp transition at (1, 1). At the cell boundary, the direction of the path changes abruptly. Since the path contains grid node (1,1) and the velocity in a grid node is dened entirely by the velocity in that node, this means that the velocity vector in (1, 1) must also change in the same way. In other words: the velocity eld must be discontinuous over cell boundaries. Consequently, the velocity in the corresponding point in P-space (2, 1) must map to dierent vectors in C-space, depending on which cell the node belongs to. The transformation that has this property is FDBD, because dierent Jacobians are used in a node, depending on the cell it belongs to. In other words: the continuous velocity eld in P-space must be transformed to a discontinuous eld in C-space. The reason for this, is that the grid lines are also discontinuous, since they are assumed to be straight lines connecting the grid nodes. This example also shows that the transformations which use either one Jacobian per cell or one Jacobian per node give less accurate results, even if they are second-order, such as the central dierencing in the C-CD8 algorithm. It can also be veried analytically that the tangent vectors of the particle paths are correctly calculated, if all the vectors are transformed with FDBD. Speed C-FD1, which uses one Jacobian per cell, is the fastest algorithm. The other C-space algorithms are roughly six times as slow. This can be explained from the fact that eight Jacobians per cell are calculated rather than one. The P-space algorithms are in general faster than the C-space algorithms that use eight Jacobians, although the eciency of the C-space algorithms could probably be improved upon by applying some optimizations. Among the P-space algorithms, P-T-VOL is the fastest. Although the calculation of the weights is more complex in volume weighting than in inverse distance weighting, this disadvantage seems to be outweighed by the fact that only four weights in each cell need to be calculated, rather than eight. 7 Conclusions Particle tracing algorithms have been decomposed into their characteristic components. Various alternatives for these components have been implemented and compared. A distinction has been made between computational space (C-space) and physical space (P-space) algorithms. 16

17 Figure 14: Uniform vector eld in four cells Figure 15: Straight particle paths in P- space Figure 16: Curved particle paths in C-space 17

18 The most important component in C-space algorithms is the transformation. Varying this component has a large impact on the accuracy of the results. Varying the interpolation component in P-space algorithms has much less eect on the results. The accuracy of C-space algorithms depends highly on the deformation of the grid. In Cartesian grids, C-space algorithms are identical to P-space algorithms. If the transformation is not calculated correctly, the accuracy of C-space algorithms decreases rapidly in deformed grids. Among the C-space algorithms, C-FDBD has turned out to be the best, both theoretically (see also the appendix) and experimentally. The reason for considering particle tracing in C-space was eciency. However, tests have shown that most C-space algorithms are computationally more expensive than P-space algorithms, at least when the data is provided in P-space. In general, P-space algorithms are more accurate and ecient than C-space algorithms. The eect of varying the interpolation method is small compared to the transformation eect. Therefore, the use of C-space is less useful for particle tracing, but if a C-space algorithm must be used, the C-FDBD-algorithm is the best choice. Acknowledgements We wish to thank Arthur Mynett of Delft Hydraulics for his help and support and for his comments on earlier versions of this paper. We thank Jan Mooiman of Delft Hydraulics, for providing interesting data sets and for many useful discussions on uid dynamics. This work was supported by Delft Hydraulics. 18

19 References Buning, P Sources of Error in the Graphical Analysis of CFD Results. Journal of Scientic Computing, 3(2), 149{. Buning, P Numerical Algorithms in CFD Post-Processing. In: Computer Graphics and Flow Visualization in Computational Fluid Dynamics. Lecture Series Von Karman Institute for Fluid Dynamics, Brussels, Belgium. Garrity, M Raytracing Irregular Volume Data. Computer Graphics, 24(5), 35{40. Gerritsen, M Geometrical modelling of 3D Aerodynamic Congurations. M.Sc. thesis, Technische Universiteit Delft, Faculteit Lucht- en Ruimtevaart. Kenwright, D.N Personal Communications. Kontomaris, K., & Hanratty, T.J An Algorithm for Tracking Fluid Particles in a Spectral Simulation of Turbulent Channel Flow. Journal of Computational Physics, 103, 231{242. Lane, D.A Visualization of Time-Dependent Flow Fields. Pages 32{38 of: Nielson, G.M., & Bergeron, D. (eds), Visualization '93. IEEE Computer Society Press. Mooiman, J Personal Communications. Mynett, A.E., Wesseling, P., Segal, A., & Kassels, C.G.M The ISNaS incompressible Navier-Stokes solver: invariant discretization. Applied Scientic Research, 48, 175{191. Neeman, H A Decomposition Algorithm for Visualizing Irregular Grids. Computer Graphics, 24(5), 49{62. Sadarjoen, A Algoritmen voor particle tracing in 3D kromlijnige roosters. M.Sc. thesis, Delft University of Technology. In Dutch. Shirayama, S Processing of Computed Vector Fields for Visualization. Journal of Computational Physics, 106, 30{41. Strid, T., Rizzi, A., & Oppelstrup, J Development and Use of Some Flow Visualization Algorithms. In: Computer Graphics and Flow Visualization in Computational Fluid Dynamics. Lecture Series Von Karman Institute for Fluid Dynamics. Watson, D.F Contouring: A Guide to the Analysis and Display of Spatial Data. Computer Methods in the Geosciences, vol. 10. Pergamon Press. Wilhelms, J., Challinger, J., Alper, N., & Ramamoorthy, S Direct Volume Rendering of Curvilinear Volumes. Computer Graphics, 24(5), 41{47. Williams, P Interactive Direct Volume Rendering of Curvilinear and Unstructured Data. Ph.D. thesis, University of Illinois. Yeung, P.K., & Pope, S.B An algorithm for Tracking Fluid Particles in Numerical Simulations of Homogeneous Turbulence. Journal of Computational Physics, 79, 373{

20 Appendix Calculation of Jacobians In this appendix, we take a closer look at the transformation of vectors between physical space P and computational space C. The following is based on the common assumption that points are transformed from C to P by trilinear interpolation. In a 2D cell with corner nodes A, B, C and D (see gure 17), this transformation is dened as T (; ) = I(A; B; C; D; ; ) = (1? )(1? )A + (1? )B + (1? )C + D (17) where and are normalized coordinates in C. To transform vectors between P and C, the transformation Jacobian is used, a matrix with the partial derivatives of the transformation. These can be calculated either continuously or discretely. We will demonstrate that equivalence continuous Jacobians are equivalent the FDBD type of discrete Jacobians, when using trilinear interpolation in a cell. Continuous Jacobians In the continuous calculation of a Jacobian, the analytical derivative of the transformation is determined. This derivative is a 2x2 matrix with columns (j 1 j j 2 ) = ). denition of T as in equation (17), we can calculate the rst column as: j 1 =?(1? )A + (1? )B? C + D = (1? ) AB ~ + ~ With a similar calculation of j 2, we nd J cont (; ) = (1? ) AB ~ + CD ~ j (1? ) AC ~ + BD ~ Discrete Jacobians In the discrete Jacobian calculation, dierent Jacobians are calculated in dierent corners, using nite dierences as described in section 3.2. Next, the corner Jacobians are linearly interpolated, in order to correctly represent the cell deformation throughout the entire cell. We will describe how the three types of dierencing aect the resulting Jacobians. Forward dierences: In the case of the C-FD1-algorithm which uses 1 Jacobian per cell, we have: J A = J B = J C = J D = ( AB ~ j AC). ~ Interpolating does not have any inuence in this case, and the result is not equal to J cont (equation 18). Central dierences: In the approximation with central dierences, the Jacobians in each node consist of columns with the averages of the edges connected to that node (see g. 17). In this case, the Jacobians in the respective corners are given by: (18) J A = ( 1 2 ( ~ P A + ~ AB) j 1 2 ( ~ QA + ~ AC)) (19) J B = ( 1 2 ( ~ AB + ~ BS) j 1 2 ( ~ RB + ~ BD)) J C = ( 1 2 ( ~ T C + ~ CD) j 1 2 ( ~ AC + ~ CU)) J D = ( 1 2 ( ~ CD + ~ DW ) j 1 2 ( ~ BD + ~ DV )) After interpolation, the rst column of the resulting Jacobian is: j 1 = 1 (1? )(1? )( P~ A + AB) 2 ~ + 1 (1? )( AB ~ + BS) 2 ~ (1? )( ~ T C + ~ CD) ( ~ CD + ~ DW ) = 1 2 (1? ) ~ AB + (1? ) ~ P A + ~ BS ~ CD + (1? ) T~ C + DW ~ (20) 20

21 U V U V T C J_C J_D D W T C J_C J_D D W P A J_A J_B B S P A J_A J_B B S Q R Q R Figure 17: Jacobians with central dierences Figure 18: Jacobians with FDBD dierences This is dierent from the rst column of J cont (equation 18), so again the discrete Jacobian is not equal to the continuous one. Forward/Backward dierences: in this case the neighbouring cells are not used. However, the approximating Jacobians are better, because within the appropriate cell they form a better representation of the cell deformation (see gure 18). Now, the Jacobians are given by: J A = ( AB ~ j AC) ~ (21) J B = ( AB ~ j BD) ~ J C = ( CD ~ j AC) ~ J D = ( CD ~ j BD) ~ When these are interpolated, the resulting Jacobian is identical to J cont : J disc (; ) = I(J A ; J B ; J C ; J D ; ; ) = (1? )(1? )J A + (1? )J B + (1? )J C + J D = (1? ) AB ~ + CD ~ j (1? ) AC ~ + BD ~ (22) Hence, in contrast to forward or central dierencing, FDBD-dierencing gives a correct approximation of the transformation Jacobian within the cell; provided that trilinear interpolation is used for that transformation. 21

Visualization techniques for curvilinear grids

Visualization techniques for curvilinear grids Visualization techniques for curvilinear grids Report 95-138 I. Ari Sadarjoen Willem C. de Leeuw Frits H. Post Technische Universiteit Delft Delft University of Technology Faculteit der Technische Wiskunde

More information

The P-space algorithms using a tetrahedral decomposition of hexahedral cells have gained acceptance [4], but some problems can occur in strongly defor

The P-space algorithms using a tetrahedral decomposition of hexahedral cells have gained acceptance [4], but some problems can occur in strongly defor Particle Tracing in -Transformed Grids using Tetrahedral 6-Decomposition I. Ari Sadarjoen 1, Alex J. de Boer 1 2,Frits H. Post 1, and Arthur E. Mynett 2 1 Dept. of Computer Science, Delft University oftechnology

More information

Flow simulation. Frank Lohmeyer, Oliver Vornberger. University of Osnabruck, D Osnabruck.

Flow simulation. Frank Lohmeyer, Oliver Vornberger. University of Osnabruck, D Osnabruck. To be published in: Notes on Numerical Fluid Mechanics, Vieweg 1994 Flow simulation with FEM on massively parallel systems Frank Lohmeyer, Oliver Vornberger Department of Mathematics and Computer Science

More information

1.2 Numerical Solutions of Flow Problems

1.2 Numerical Solutions of Flow Problems 1.2 Numerical Solutions of Flow Problems DIFFERENTIAL EQUATIONS OF MOTION FOR A SIMPLIFIED FLOW PROBLEM Continuity equation for incompressible flow: 0 Momentum (Navier-Stokes) equations for a Newtonian

More information

Particle tracing in curvilinear grids. David M. Reed, Lawson Wade, Peter G. Carswell, Wayne E. Carlson

Particle tracing in curvilinear grids. David M. Reed, Lawson Wade, Peter G. Carswell, Wayne E. Carlson Particle tracing in curvilinear grids David M. Reed, Lawson Wade, Peter G. Carswell, Wayne E. Carlson Advanced Computing Center for the Arts and Design and Department of Computer and Information Science

More information

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful

More information

Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc. Abstract. Direct Volume Rendering (DVR) is a powerful technique for

Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc. Abstract. Direct Volume Rendering (DVR) is a powerful technique for Comparison of Two Image-Space Subdivision Algorithms for Direct Volume Rendering on Distributed-Memory Multicomputers Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc Dept. of Computer Eng. and

More information

S 1,3 S 3,3 S 3,2 S 1,2 S 1,1 S 3,1

S 1,3 S 3,3 S 3,2 S 1,2 S 1,1 S 3,1 New Approaches for Particle Tracing on Sparse Grids Christian Teitzel and Thomas Ertl Computer Graphics Group, University of Erlangen Am Weichselgarten 9, 91058 Erlangen, Germany fteitzel,ertlg@informatik.uni-erlangen.de

More information

A COMPARISON OF PARALLEL ALGORITHMS FOR THE NUMERICAL SIMULATION OF MULTIPHASE FLOWS. E. Wassen, Th. Frank, Q. Yu

A COMPARISON OF PARALLEL ALGORITHMS FOR THE NUMERICAL SIMULATION OF MULTIPHASE FLOWS. E. Wassen, Th. Frank, Q. Yu The 1. Euro{Conference on Parallel and Distributed Computing for Computational Mechanics. April 6 { May 1st, 1997, Lochinver, Scotland, UK. A COMPARISON OF PARALLEL ALGORITHMS FOR THE NUMERICAL SIMULATION

More information

Part I: Theoretical Background and Integration-Based Methods

Part I: Theoretical Background and Integration-Based Methods Large Vector Field Visualization: Theory and Practice Part I: Theoretical Background and Integration-Based Methods Christoph Garth Overview Foundations Time-Varying Vector Fields Numerical Integration

More information

A ow-condition-based interpolation nite element procedure for triangular grids

A ow-condition-based interpolation nite element procedure for triangular grids INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN FLUIDS Int. J. Numer. Meth. Fluids 2006; 51:673 699 Published online in Wiley InterScience (www.interscience.wiley.com).1246 A ow-condition-based interpolation

More information

Chapter 6 Visualization Techniques for Vector Fields

Chapter 6 Visualization Techniques for Vector Fields Chapter 6 Visualization Techniques for Vector Fields 6.1 Introduction 6.2 Vector Glyphs 6.3 Particle Advection 6.4 Streamlines 6.5 Line Integral Convolution 6.6 Vector Topology 6.7 References 2006 Burkhard

More information

Semi-automatic domain decomposition based on potential theory

Semi-automatic domain decomposition based on potential theory Semi-automatic domain decomposition based on potential theory S.P. Spekreijse and J.C. Kok Nationaal Lucht- en Ruimtevaartlaboratorium National Aerospace Laboratory NLR Semi-automatic domain decomposition

More information

FLUID MECHANICAL DESIGN OF THE POTENTIAL FLOW TURBINE. This paper presents the software package developed at Fluid and Power Research

FLUID MECHANICAL DESIGN OF THE POTENTIAL FLOW TURBINE. This paper presents the software package developed at Fluid and Power Research FLUID MECHANICAL DESIGN OF THE POTENTIAL FLOW TURBINE Alexander Gokhman 1 Abstract This paper presents the software package developed at Fluid and Power Research Institute (FPRI) for the uid mechanical

More information

Scalar Field Visualization. Some slices used by Prof. Mike Bailey

Scalar Field Visualization. Some slices used by Prof. Mike Bailey Scalar Field Visualization Some slices used by Prof. Mike Bailey Scalar Fields The approximation of certain scalar function in space f(x,y,z). Most of time, they come in as some scalar values defined on

More information

UNSTRUCTURED GRIDS ON NURBS SURFACES. The surface grid can be generated either in a parameter. surfaces. Generating grids in a parameter space is

UNSTRUCTURED GRIDS ON NURBS SURFACES. The surface grid can be generated either in a parameter. surfaces. Generating grids in a parameter space is UNSTRUCTURED GRIDS ON NURBS SURFACES Jamshid Samareh-Abolhassani 1 Abstract A simple and ecient computational method is presented for unstructured surface grid generation. This method is built upon an

More information

Mid-Year Report. Discontinuous Galerkin Euler Equation Solver. Friday, December 14, Andrey Andreyev. Advisor: Dr.

Mid-Year Report. Discontinuous Galerkin Euler Equation Solver. Friday, December 14, Andrey Andreyev. Advisor: Dr. Mid-Year Report Discontinuous Galerkin Euler Equation Solver Friday, December 14, 2012 Andrey Andreyev Advisor: Dr. James Baeder Abstract: The focus of this effort is to produce a two dimensional inviscid,

More information

CONFORMAL MAPPING POTENTIAL FLOW AROUND A WINGSECTION USED AS A TEST CASE FOR THE INVISCID PART OF RANS SOLVERS

CONFORMAL MAPPING POTENTIAL FLOW AROUND A WINGSECTION USED AS A TEST CASE FOR THE INVISCID PART OF RANS SOLVERS European Conference on Computational Fluid Dynamics ECCOMAS CFD 2006 P. Wesseling, E. Oñate and J. Périaux (Eds) c TU Delft, The Netherlands, 2006 CONFORMAL MAPPING POTENTIAL FLOW AROUND A WINGSECTION

More information

Introduction to C omputational F luid Dynamics. D. Murrin

Introduction to C omputational F luid Dynamics. D. Murrin Introduction to C omputational F luid Dynamics D. Murrin Computational fluid dynamics (CFD) is the science of predicting fluid flow, heat transfer, mass transfer, chemical reactions, and related phenomena

More information

An Introduction to Flow Visualization (1) Christoph Garth

An Introduction to Flow Visualization (1) Christoph Garth An Introduction to Flow Visualization (1) Christoph Garth cgarth@ucdavis.edu Motivation What will I be talking about? Classical: Physical experiments to understand flow. 2 Motivation What will I be talking

More information

N. Hitschfeld. Blanco Encalada 2120, Santiago, CHILE.

N. Hitschfeld. Blanco Encalada 2120, Santiago, CHILE. Generalization of modied octrees for geometric modeling N. Hitschfeld Dpto. Ciencias de la Computacion, Univ. de Chile Blanco Encalada 2120, Santiago, CHILE E-mail: nancy@dcc.uchile.cl Abstract. This paper

More information

CS205b/CME306. Lecture 9

CS205b/CME306. Lecture 9 CS205b/CME306 Lecture 9 1 Convection Supplementary Reading: Osher and Fedkiw, Sections 3.3 and 3.5; Leveque, Sections 6.7, 8.3, 10.2, 10.4. For a reference on Newton polynomial interpolation via divided

More information

However, m pq is just an approximation of M pq. As it was pointed out by Lin [2], more precise approximation can be obtained by exact integration of t

However, m pq is just an approximation of M pq. As it was pointed out by Lin [2], more precise approximation can be obtained by exact integration of t FAST CALCULATION OF GEOMETRIC MOMENTS OF BINARY IMAGES Jan Flusser Institute of Information Theory and Automation Academy of Sciences of the Czech Republic Pod vodarenskou vez 4, 82 08 Prague 8, Czech

More information

CHAPTER 1. Introduction

CHAPTER 1. Introduction ME 475: Computer-Aided Design of Structures 1-1 CHAPTER 1 Introduction 1.1 Analysis versus Design 1.2 Basic Steps in Analysis 1.3 What is the Finite Element Method? 1.4 Geometrical Representation, Discretization

More information

Inside hole. Inside wire. Input: and. d y. Inside vertex. Outside loop

Inside hole. Inside wire. Input: and. d y. Inside vertex. Outside loop Energy-Minimizing Approach to Meshing Curved Wire-Frame Models Atsushi Yamada Kenji Shimada Takayuki Itoh Tokyo Research Laboratory, IBM Japan, Ltd., 1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken 242,

More information

A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION OF FLOW DOMAINS

A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION OF FLOW DOMAINS 6th European Conference on Computational Mechanics (ECCM 6) 7th European Conference on Computational Fluid Dynamics (ECFD 7) 11 15 June 2018, Glasgow, UK A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION

More information

Fully-automated hex-dominant mesh generation with directionality control via packing rectangular solid cells

Fully-automated hex-dominant mesh generation with directionality control via packing rectangular solid cells INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING Int. J. Numer. Meth. Engng 2003; 57:2099 2129 (DOI: 10.1002/nme.754) Fully-automated hex-dominant mesh generation with directionality control

More information

Marching Squares Algorithm. Can you summarize the marching squares algorithm based on what we just discussed?

Marching Squares Algorithm. Can you summarize the marching squares algorithm based on what we just discussed? Marching Squares Algorithm Can you summarize the marching squares algorithm based on what we just discussed? Marching Squares Algorithm Can you summarize the marching squares algorithm based on what we

More information

Stability Analysis of the Muscl Method on General Unstructured Grids for Applications to Compressible Fluid Flow

Stability Analysis of the Muscl Method on General Unstructured Grids for Applications to Compressible Fluid Flow Stability Analysis of the Muscl Method on General Unstructured Grids for Applications to Compressible Fluid Flow F. Haider 1, B. Courbet 1, J.P. Croisille 2 1 Département de Simulation Numérique des Ecoulements

More information

AMS527: Numerical Analysis II

AMS527: Numerical Analysis II AMS527: Numerical Analysis II A Brief Overview of Finite Element Methods Xiangmin Jiao SUNY Stony Brook Xiangmin Jiao SUNY Stony Brook AMS527: Numerical Analysis II 1 / 25 Overview Basic concepts Mathematical

More information

CHAPTER 5 NUMERICAL INTEGRATION METHODS OVER N- DIMENSIONAL REGIONS USING GENERALIZED GAUSSIAN QUADRATURE

CHAPTER 5 NUMERICAL INTEGRATION METHODS OVER N- DIMENSIONAL REGIONS USING GENERALIZED GAUSSIAN QUADRATURE CHAPTER 5 NUMERICAL INTEGRATION METHODS OVER N- DIMENSIONAL REGIONS USING GENERALIZED GAUSSIAN QUADRATURE 5.1 Introduction Multidimensional integration appears in many mathematical models and can seldom

More information

On a nested refinement of anisotropic tetrahedral grids under Hessian metrics

On a nested refinement of anisotropic tetrahedral grids under Hessian metrics On a nested refinement of anisotropic tetrahedral grids under Hessian metrics Shangyou Zhang Abstract Anisotropic grids, having drastically different grid sizes in different directions, are efficient and

More information

FOURTH ORDER COMPACT FORMULATION OF STEADY NAVIER-STOKES EQUATIONS ON NON-UNIFORM GRIDS

FOURTH ORDER COMPACT FORMULATION OF STEADY NAVIER-STOKES EQUATIONS ON NON-UNIFORM GRIDS International Journal of Mechanical Engineering and Technology (IJMET Volume 9 Issue 10 October 2018 pp. 179 189 Article ID: IJMET_09_10_11 Available online at http://www.iaeme.com/ijmet/issues.asp?jtypeijmet&vtype9&itype10

More information

LAPLACIAN MESH SMOOTHING FOR TETRAHEDRA BASED VOLUME VISUALIZATION 1. INTRODUCTION

LAPLACIAN MESH SMOOTHING FOR TETRAHEDRA BASED VOLUME VISUALIZATION 1. INTRODUCTION JOURNAL OF MEDICAL INFORMATICS & TECHNOLOGIES Vol.4/2002, ISSN 642-6037 Rafał STĘGIERSKI *, Paweł MIKOŁAJCZAK * volume data,triangle mesh generation, mesh smoothing, marching tetrahedra LAPLACIAN MESH

More information

i.e. variable extrapolation along the characteristic propagation directions. This leads to a family of rst and second-order accurate schemes with an i

i.e. variable extrapolation along the characteristic propagation directions. This leads to a family of rst and second-order accurate schemes with an i Cell-centered Genuinely Multidimensional Upwind Algorithms and Structured Meshes P. Van Ransbeeck, Ch. Hirsch Department of Fluid Mechanics Vrije Universiteit Brussel Brussels, Belgium A family of cell-centered

More information

A High-Order Accurate Unstructured GMRES Solver for Poisson s Equation

A High-Order Accurate Unstructured GMRES Solver for Poisson s Equation A High-Order Accurate Unstructured GMRES Solver for Poisson s Equation Amir Nejat * and Carl Ollivier-Gooch Department of Mechanical Engineering, The University of British Columbia, BC V6T 1Z4, Canada

More information

SYSTEMS OF NONLINEAR EQUATIONS

SYSTEMS OF NONLINEAR EQUATIONS SYSTEMS OF NONLINEAR EQUATIONS Widely used in the mathematical modeling of real world phenomena. We introduce some numerical methods for their solution. For better intuition, we examine systems of two

More information

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4 Solid Modeling Solid: Boundary + Interior Volume occupied by geometry Solid representation schemes Constructive Solid Geometry (CSG) Boundary representations (B-reps) Space-partition representations Operations

More information

Indirect Volume Rendering

Indirect Volume Rendering Indirect Volume Rendering Visualization Torsten Möller Weiskopf/Machiraju/Möller Overview Contour tracing Marching cubes Marching tetrahedra Optimization octree-based range query Weiskopf/Machiraju/Möller

More information

Neuro-Remodeling via Backpropagation of Utility. ABSTRACT Backpropagation of utility is one of the many methods for neuro-control.

Neuro-Remodeling via Backpropagation of Utility. ABSTRACT Backpropagation of utility is one of the many methods for neuro-control. Neuro-Remodeling via Backpropagation of Utility K. Wendy Tang and Girish Pingle 1 Department of Electrical Engineering SUNY at Stony Brook, Stony Brook, NY 11794-2350. ABSTRACT Backpropagation of utility

More information

Using Local Trajectory Optimizers To Speed Up Global. Christopher G. Atkeson. Department of Brain and Cognitive Sciences and

Using Local Trajectory Optimizers To Speed Up Global. Christopher G. Atkeson. Department of Brain and Cognitive Sciences and Using Local Trajectory Optimizers To Speed Up Global Optimization In Dynamic Programming Christopher G. Atkeson Department of Brain and Cognitive Sciences and the Articial Intelligence Laboratory Massachusetts

More information

FAST ALGORITHMS FOR CALCULATIONS OF VISCOUS INCOMPRESSIBLE FLOWS USING THE ARTIFICIAL COMPRESSIBILITY METHOD

FAST ALGORITHMS FOR CALCULATIONS OF VISCOUS INCOMPRESSIBLE FLOWS USING THE ARTIFICIAL COMPRESSIBILITY METHOD TASK QUARTERLY 12 No 3, 273 287 FAST ALGORITHMS FOR CALCULATIONS OF VISCOUS INCOMPRESSIBLE FLOWS USING THE ARTIFICIAL COMPRESSIBILITY METHOD ZBIGNIEW KOSMA Institute of Applied Mechanics, Technical University

More information

Numerical Dynamic Programming. Jesus Fernandez-Villaverde University of Pennsylvania

Numerical Dynamic Programming. Jesus Fernandez-Villaverde University of Pennsylvania Numerical Dynamic Programming Jesus Fernandez-Villaverde University of Pennsylvania 1 Introduction In the last set of lecture notes, we reviewed some theoretical background on numerical programming. Now,

More information

Module 1 Lecture Notes 2. Optimization Problem and Model Formulation

Module 1 Lecture Notes 2. Optimization Problem and Model Formulation Optimization Methods: Introduction and Basic concepts 1 Module 1 Lecture Notes 2 Optimization Problem and Model Formulation Introduction In the previous lecture we studied the evolution of optimization

More information

Investigation of cross flow over a circular cylinder at low Re using the Immersed Boundary Method (IBM)

Investigation of cross flow over a circular cylinder at low Re using the Immersed Boundary Method (IBM) Computational Methods and Experimental Measurements XVII 235 Investigation of cross flow over a circular cylinder at low Re using the Immersed Boundary Method (IBM) K. Rehman Department of Mechanical Engineering,

More information

Free-Form Deformation and Other Deformation Techniques

Free-Form Deformation and Other Deformation Techniques Free-Form Deformation and Other Deformation Techniques Deformation Deformation Basic Definition Deformation: A transformation/mapping of the positions of every particle in the original object to those

More information

Introduction to Computational Fluid Dynamics Mech 122 D. Fabris, K. Lynch, D. Rich

Introduction to Computational Fluid Dynamics Mech 122 D. Fabris, K. Lynch, D. Rich Introduction to Computational Fluid Dynamics Mech 122 D. Fabris, K. Lynch, D. Rich 1 Computational Fluid dynamics Computational fluid dynamics (CFD) is the analysis of systems involving fluid flow, heat

More information

2) For any triangle edge not on the boundary, there is exactly one neighboring

2) For any triangle edge not on the boundary, there is exactly one neighboring Triangulating Trimmed NURBS Surfaces Chang Shu and Pierre Boulanger Abstract. This paper describes techniques for the piecewise linear approximation of trimmed NURBS surfaces. The problem, called surface

More information

An Adaptive Stencil Linear Deviation Method for Wave Equations

An Adaptive Stencil Linear Deviation Method for Wave Equations 211 An Adaptive Stencil Linear Deviation Method for Wave Equations Kelly Hasler Faculty Sponsor: Robert H. Hoar, Department of Mathematics ABSTRACT Wave Equations are partial differential equations (PDEs)

More information

u 0+u 2 new boundary vertex

u 0+u 2 new boundary vertex Combined Subdivision Schemes for the design of surfaces satisfying boundary conditions Adi Levin School of Mathematical Sciences, Tel-Aviv University, Tel-Aviv 69978, Israel. Email:fadilev@math.tau.ac.ilg

More information

Three applications of Euler s formula. Chapter 10

Three applications of Euler s formula. Chapter 10 Three applications of Euler s formula Chapter 10 A graph is planar if it can be drawn in the plane R without crossing edges (or, equivalently, on the -dimensional sphere S ). We talk of a plane graph if

More information

Geodetic Iterative Methods for Nonlinear Acoustic Sources Localization: Application to Cracks Eects Detected with Acoustic Emission

Geodetic Iterative Methods for Nonlinear Acoustic Sources Localization: Application to Cracks Eects Detected with Acoustic Emission 6th NDT in Progress 2011 International Workshop of NDT Experts, Prague, 10-12 Oct 2011 Geodetic Iterative Methods for Nonlinear Acoustic Sources Localization: Application to Cracks Eects Detected with

More information

2QQXPHULFDOHUURUVLQWKH ERXQGDU\FRQGLWLRQVRI WKH(XOHUHTXDWLRQV

2QQXPHULFDOHUURUVLQWKH ERXQGDU\FRQGLWLRQVRI WKH(XOHUHTXDWLRQV 2QQXPHULFDOHUURUVLQWKH ERXQGDU\FRQGLWLRQVRI WKH(XOHUHTXDWLRQV /DUV)HUP 3HU/ WVWHGW 7HFKQLFDOUHSRUW Department of Information Technology April 2 Uppsala University ISSN 144-323 On numerical errors in the

More information

Figure 1: An Area Voronoi Diagram of a typical GIS Scene generated from the ISPRS Working group III/3 Avenches data set. 2 ARRANGEMENTS 2.1 Voronoi Di

Figure 1: An Area Voronoi Diagram of a typical GIS Scene generated from the ISPRS Working group III/3 Avenches data set. 2 ARRANGEMENTS 2.1 Voronoi Di Qualitative Spatial Relations using Arrangements for Complex Images M. Burge and W. Burger Johannes Kepler University, Department of Systems Science Computer Vision Laboratory, A-4040 Linz, Austria burge@cast.uni-linz.ac.at

More information

Meshing of flow and heat transfer problems

Meshing of flow and heat transfer problems Meshing of flow and heat transfer problems Luyao Zou a, Zhe Li b, Qiqi Fu c and Lujie Sun d School of, Shandong University of science and technology, Shandong 266590, China. a zouluyaoxf@163.com, b 1214164853@qq.com,

More information

Lofting 3D Shapes. Abstract

Lofting 3D Shapes. Abstract Lofting 3D Shapes Robby Prescott Department of Computer Science University of Wisconsin Eau Claire Eau Claire, Wisconsin 54701 robprescott715@gmail.com Chris Johnson Department of Computer Science University

More information

ENERGY-224 Reservoir Simulation Project Report. Ala Alzayer

ENERGY-224 Reservoir Simulation Project Report. Ala Alzayer ENERGY-224 Reservoir Simulation Project Report Ala Alzayer Autumn Quarter December 3, 2014 Contents 1 Objective 2 2 Governing Equations 2 3 Methodolgy 3 3.1 BlockMesh.........................................

More information

RhinoCFD Tutorial. Flow Past a Sphere

RhinoCFD Tutorial. Flow Past a Sphere RhinoCFD Tutorial Flow Past a Sphere RhinoCFD Ocial document produced by CHAM September 26, 2017 Introduction Flow Past a Sphere This tutorial will describe a simple calculation of ow around a sphere and

More information

The Global Standard for Mobility (GSM) (see, e.g., [6], [4], [5]) yields a

The Global Standard for Mobility (GSM) (see, e.g., [6], [4], [5]) yields a Preprint 0 (2000)?{? 1 Approximation of a direction of N d in bounded coordinates Jean-Christophe Novelli a Gilles Schaeer b Florent Hivert a a Universite Paris 7 { LIAFA 2, place Jussieu - 75251 Paris

More information

Regularity Analysis of Non Uniform Data

Regularity Analysis of Non Uniform Data Regularity Analysis of Non Uniform Data Christine Potier and Christine Vercken Abstract. A particular class of wavelet, derivatives of B-splines, leads to fast and ecient algorithms for contours detection

More information

Multigrid Pattern. I. Problem. II. Driving Forces. III. Solution

Multigrid Pattern. I. Problem. II. Driving Forces. III. Solution Multigrid Pattern I. Problem Problem domain is decomposed into a set of geometric grids, where each element participates in a local computation followed by data exchanges with adjacent neighbors. The grids

More information

Non-Linear Finite Element Methods in Solid Mechanics Attilio Frangi, Politecnico di Milano, February 3, 2017, Lesson 1

Non-Linear Finite Element Methods in Solid Mechanics Attilio Frangi, Politecnico di Milano, February 3, 2017, Lesson 1 Non-Linear Finite Element Methods in Solid Mechanics Attilio Frangi, attilio.frangi@polimi.it Politecnico di Milano, February 3, 2017, Lesson 1 1 Politecnico di Milano, February 3, 2017, Lesson 1 2 Outline

More information

Matrices. Chapter Matrix A Mathematical Definition Matrix Dimensions and Notation

Matrices. Chapter Matrix A Mathematical Definition Matrix Dimensions and Notation Chapter 7 Introduction to Matrices This chapter introduces the theory and application of matrices. It is divided into two main sections. Section 7.1 discusses some of the basic properties and operations

More information

Development of a Maxwell Equation Solver for Application to Two Fluid Plasma Models. C. Aberle, A. Hakim, and U. Shumlak

Development of a Maxwell Equation Solver for Application to Two Fluid Plasma Models. C. Aberle, A. Hakim, and U. Shumlak Development of a Maxwell Equation Solver for Application to Two Fluid Plasma Models C. Aberle, A. Hakim, and U. Shumlak Aerospace and Astronautics University of Washington, Seattle American Physical Society

More information

Proposed Registration Procedure

Proposed Registration Procedure Chapter 6 Proposed Registration Procedure The proposed registration procedure is explained in this chapter. This registration is seen as if it were done on a new subject from a statistical sample of skull

More information

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a coordinate system and then the measuring of the point with

More information

UNTANGLING AND OPTIMIZATION OF UNSTRUCTURED HEXAHEDRAL MESHES

UNTANGLING AND OPTIMIZATION OF UNSTRUCTURED HEXAHEDRAL MESHES UNTANLIN AND OPTIMIZATION OF UNSTRUCTURED HEXAHEDRAL MESHES K. Kovalev (*), M. Delanaye (**), Ch. Hirsch (*) kvk@stro.vub.ac.be (*) Vrije Universiteit Brussel, Pleinlaan,, 1050 Brussels (**) NUMECA Int.,

More information

June 5, Institute of Structural Analysis Graz University of Technology Lessingstr. 25/II, 8010 Graz, Austria

June 5, Institute of Structural Analysis Graz University of Technology Lessingstr. 25/II, 8010 Graz, Austria Higher-order meshing of implicit geometries part I: Integration and interpolation in cut elements arxiv:706.00578v [cs.na] 2 Jun 207 T.P. Fries, S. Omerović, D. Schöllhammer, J. Steidl June 5, 207 Institute

More information

Telecommunication and Informatics University of North Carolina, Technical University of Gdansk Charlotte, NC 28223, USA

Telecommunication and Informatics University of North Carolina, Technical University of Gdansk Charlotte, NC 28223, USA A Decoder-based Evolutionary Algorithm for Constrained Parameter Optimization Problems S lawomir Kozie l 1 and Zbigniew Michalewicz 2 1 Department of Electronics, 2 Department of Computer Science, Telecommunication

More information

Data Representation in Visualisation

Data Representation in Visualisation Data Representation in Visualisation Visualisation Lecture 4 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Taku Komura Data Representation 1 Data Representation We have

More information

Discrete representations of geometric objects: Features, data structures and adequacy for dynamic simulation. Part I : Solid geometry

Discrete representations of geometric objects: Features, data structures and adequacy for dynamic simulation. Part I : Solid geometry Discrete representations of geometric objects: Features, data structures and adequacy for dynamic simulation. Surfaces Part I : Solid geometry hachar Fleishman Tel Aviv University David Levin Claudio T.

More information

MARCHING CUBES AND VARIANTS

MARCHING CUBES AND VARIANTS CHAPTER MARCHING CUBES AND VARIANTS In the introduction, we mentioned four different approaches to isosurface construction. In this chapter, we describe one of those approaches to isosurface construction,

More information

Computational Geometry

Computational Geometry Lecture 1: Introduction and convex hulls Geometry: points, lines,... Geometric objects Geometric relations Combinatorial complexity Computational geometry Plane (two-dimensional), R 2 Space (three-dimensional),

More information

Isosurface Rendering. CSC 7443: Scientific Information Visualization

Isosurface Rendering. CSC 7443: Scientific Information Visualization Isosurface Rendering What is Isosurfacing? An isosurface is the 3D surface representing the locations of a constant scalar value within a volume A surface with the same scalar field value Isosurfaces form

More information

Lecture 21: Shading. put your trust in my shadow. Judges 9:15

Lecture 21: Shading. put your trust in my shadow. Judges 9:15 Lecture 21: Shading put your trust in my shadow. Judges 9:15 1. Polygonal Models Polygonal models are one of the most common representations for geometry in Computer Graphics. Polygonal models are popular

More information

Lecture 2.2 Cubic Splines

Lecture 2.2 Cubic Splines Lecture. Cubic Splines Cubic Spline The equation for a single parametric cubic spline segment is given by 4 i t Bit t t t i (..) where t and t are the parameter values at the beginning and end of the segment.

More information

MESHLESS SOLUTION OF INCOMPRESSIBLE FLOW OVER BACKWARD-FACING STEP

MESHLESS SOLUTION OF INCOMPRESSIBLE FLOW OVER BACKWARD-FACING STEP Vol. 12, Issue 1/2016, 63-68 DOI: 10.1515/cee-2016-0009 MESHLESS SOLUTION OF INCOMPRESSIBLE FLOW OVER BACKWARD-FACING STEP Juraj MUŽÍK 1,* 1 Department of Geotechnics, Faculty of Civil Engineering, University

More information

A new 8-node quadrilateral spline finite element

A new 8-node quadrilateral spline finite element Journal of Computational and Applied Mathematics 195 (2006) 54 65 www.elsevier.com/locate/cam A new 8-node quadrilateral spline finite element Chong-Jun Li, Ren-Hong Wang Institute of Mathematical Sciences,

More information

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling Welcome to the lectures on computer graphics. We have

More information

Contouring and Isosurfaces. Ronald Peikert SciVis Contouring 2-1

Contouring and Isosurfaces. Ronald Peikert SciVis Contouring 2-1 Contouring and Isosurfaces Ronald Peikert SciVis 2007 - Contouring 2-1 What are contours? Set of points where the scalar field s has a given value c: Examples in 2D: height contours on maps isobars on

More information

A new method for determination of a wave-ray trace based on tsunami isochrones

A new method for determination of a wave-ray trace based on tsunami isochrones Bull. Nov. Comp. Center, Math. Model. in Geoph., 13 (2010), 93 101 c 2010 NCC Publisher A new method for determination of a wave-ray trace based on tsunami isochrones An.G. Marchuk Abstract. A new method

More information

BMVC 1996 doi: /c.10.41

BMVC 1996 doi: /c.10.41 On the use of the 1D Boolean model for the description of binary textures M Petrou, M Arrigo and J A Vons Dept. of Electronic and Electrical Engineering, University of Surrey, Guildford GU2 5XH, United

More information

Tilings of the Euclidean plane

Tilings of the Euclidean plane Tilings of the Euclidean plane Yan Der, Robin, Cécile January 9, 2017 Abstract This document gives a quick overview of a eld of mathematics which lies in the intersection of geometry and algebra : tilings.

More information

Physics Tutorial 2: Numerical Integration Methods

Physics Tutorial 2: Numerical Integration Methods Physics Tutorial 2: Numerical Integration Methods Summary The concept of numerically solving differential equations is explained, and applied to real time gaming simulation. Some objects are moved in a

More information

We consider the problem of rening quadrilateral and hexahedral element meshes. For

We consider the problem of rening quadrilateral and hexahedral element meshes. For Rening quadrilateral and hexahedral element meshes R. Schneiders RWTH Aachen Lehrstuhl fur Angewandte Mathematik, insb. Informatik Ahornstr. 55, 5056 Aachen, F.R. Germany (robert@feanor.informatik.rwth-aachen.de)

More information

APPLICATION OF ALGORITHMS FOR AUTOMATIC GENERATION OF HEXAHEDRAL FINITE ELEMENT MESHES

APPLICATION OF ALGORITHMS FOR AUTOMATIC GENERATION OF HEXAHEDRAL FINITE ELEMENT MESHES MESTRADO EM ENGENHARIA MECÂNICA November 2014 APPLICATION OF ALGORITHMS FOR AUTOMATIC GENERATION OF HEXAHEDRAL FINITE ELEMENT MESHES Luís Miguel Rodrigues Reis Abstract. The accuracy of a finite element

More information

Parameterization. Michael S. Floater. November 10, 2011

Parameterization. Michael S. Floater. November 10, 2011 Parameterization Michael S. Floater November 10, 2011 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to generate from point

More information

The 3D DSC in Fluid Simulation

The 3D DSC in Fluid Simulation The 3D DSC in Fluid Simulation Marek K. Misztal Informatics and Mathematical Modelling, Technical University of Denmark mkm@imm.dtu.dk DSC 2011 Workshop Kgs. Lyngby, 26th August 2011 Governing Equations

More information

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight Three-Dimensional Object Reconstruction from Layered Spatial Data Michael Dangl and Robert Sablatnig Vienna University of Technology, Institute of Computer Aided Automation, Pattern Recognition and Image

More information

Scalar Algorithms: Contouring

Scalar Algorithms: Contouring Scalar Algorithms: Contouring Computer Animation and Visualisation Lecture tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data Last Lecture...

More information

Module 3 Mesh Generation

Module 3 Mesh Generation Module 3 Mesh Generation 1 Lecture 3.1 Introduction 2 Mesh Generation Strategy Mesh generation is an important pre-processing step in CFD of turbomachinery, quite analogous to the development of solid

More information

Mathematics Background

Mathematics Background Measurement All measurements are approximations. In their work in this Unit, students explore ways to find measures for two and three dimensional figures. Even using exact formulas depends on how students

More information

Scientific Visualization Example exam questions with commented answers

Scientific Visualization Example exam questions with commented answers Scientific Visualization Example exam questions with commented answers The theoretical part of this course is evaluated by means of a multiple- choice exam. The questions cover the material mentioned during

More information

Finite Element Methods

Finite Element Methods Chapter 5 Finite Element Methods 5.1 Finite Element Spaces Remark 5.1 Mesh cells, faces, edges, vertices. A mesh cell is a compact polyhedron in R d, d {2,3}, whose interior is not empty. The boundary

More information

Reinforcement Control via Heuristic Dynamic Programming. K. Wendy Tang and Govardhan Srikant. and

Reinforcement Control via Heuristic Dynamic Programming. K. Wendy Tang and Govardhan Srikant. and Reinforcement Control via Heuristic Dynamic Programming K. Wendy Tang and Govardhan Srikant wtang@ee.sunysb.edu and gsrikant@ee.sunysb.edu Department of Electrical Engineering SUNY at Stony Brook, Stony

More information

Seed Point. Agglomerated Points

Seed Point. Agglomerated Points AN ASSESSMENT OF LINEAR VERSUS NON-LINEAR MULTIGRID METHODS FOR UNSTRUCTURED MESH SOLVERS DIMITRI J. MAVRIPLIS Abstract. The relative performance of a non-linear FAS multigrid algorithm and an equivalent

More information

Write an iterative real-space Poisson solver in Python/C

Write an iterative real-space Poisson solver in Python/C Write an iterative real-space Poisson solver in Python/C Ask Hjorth Larsen asklarsen@gmail.com October 10, 2018 The Poisson equation is 2 φ(r) = ρ(r). (1) This is a second-order linear dierential equation

More information

Appendix E Calculating Normal Vectors

Appendix E Calculating Normal Vectors OpenGL Programming Guide (Addison-Wesley Publishing Company) Appendix E Calculating Normal Vectors This appendix describes how to calculate normal vectors for surfaces. You need to define normals to use

More information

Tiling Three-Dimensional Space with Simplices. Shankar Krishnan AT&T Labs - Research

Tiling Three-Dimensional Space with Simplices. Shankar Krishnan AT&T Labs - Research Tiling Three-Dimensional Space with Simplices Shankar Krishnan AT&T Labs - Research What is a Tiling? Partition of an infinite space into pieces having a finite number of distinct shapes usually Euclidean

More information

A technique for adding range restrictions to. August 30, Abstract. In a generalized searching problem, a set S of n colored geometric objects

A technique for adding range restrictions to. August 30, Abstract. In a generalized searching problem, a set S of n colored geometric objects A technique for adding range restrictions to generalized searching problems Prosenjit Gupta Ravi Janardan y Michiel Smid z August 30, 1996 Abstract In a generalized searching problem, a set S of n colored

More information