scispace - formally typeset
Search or ask a question
Journal ArticleDOI

An Object-Oriented Design for Two-Dimensional Vortex Particle Methods

TL;DR: An object-oriented design used to implement a vortex particle based flow solver in two dimensions is described and the various abstractions that arose as a result of this design are provided.
Abstract: Vortex methods offer a grid-free alternative to simulating incompressible, viscous, fluid flows. They require the use of fairly sophisticated algorithms and can be complicated to implement for general flows. This article describes an object-oriented design used to implement a vortex particle based flow solver in two dimensions. We provide an overview of the various abstractions that arose as a result of this design. Several of the algorithms have common components that may be abstracted and reused. We demonstrate how the design allowed us to derive the traditional benefits of OOD. In addition, we show how the design directly suggested elegant generalizations of existing algorithms. Finally, we show the benefits of using software testing techniques and building a powerful scripting layer for the library.
Citations
More filters
01 Jan 2019
TL;DR: The first part of this thesis describes a unit-aware matrix type based on dimensioned linear algebra that infers principle types for linear algebra expressions that is used to constructunit-aware value cycle models from the field of control and auditing.
Abstract: Support for units of measurement is the main topic of the research project described in this thesis. In this interdisciplinary project, knowledge from the fields of computing and auditing is combined to investigate the possibilities of unit-aware organization modeling. Such modeling also requires computations in proper units of measurement and thus a unit-aware programming language. The first part of this thesis describes a unit-aware matrix type based on dimensioned linear algebra that infers principle types for linear algebra expressions. In the second part the matrix type is used to construct unit-aware value cycle models from the field of control and auditing.

34 citations

Proceedings ArticleDOI
18 May 2013
TL;DR: Some of the software-engineering practices adopted in a scientific-software application for a laser-induced incandescence community model for a collaborative model that is to be extended, modified, and used by different researchers are discussed.
Abstract: The multidisciplinary requirements of current computational modeling problems preclude the development of scientific software that is maintained and used by selected scientists. The multidisciplinary nature of these efforts requires the development of large scale software projects established with a wide developer and user base in mind. This article describes some of the software-engineering practices adopted in a scientific-software application for a laser-induced incandescence community model. The project uses an Agile and Test-Driven Development approach to implement the infrastructure for the development of a collaborative model that is to be extended, modified, and used by different researchers. We discuss some of the software-engineering practices that can be exploited through the life of a project, starting with its inception when only a hand full of developers are contributing to the project and the mechanism we have put in place in order to allow the natural expansion of the model.

13 citations


Cites background from "An Object-Oriented Design for Two-D..."

  • ...Sandia is a multi-program laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the National Nuclear Security Administration under contract DE-AC04-94-AL85000....

    [...]

References
More filters
Book ChapterDOI
01 May 1993
TL;DR: A class of vortex methods which are based on the work of Chorin are considered, related by the manner in which a vorticity field in an inviscid, incompressible flow is discretized and subsequently evolved.
Abstract: Introduction Vortex methods are a type of numerical method for approximating the solution of the incompressible Euler or Navier-Stokes equations. In general, vortex methods are characterized by the following three features. 1. The underlying discretization is of the vorticity field, rather than the velocity field. Usually this discretization is Lagrangian in nature and frequently it consists of a collection of particles which carry concentrations of vorticity. 2. An approximate velocity field is recovered from the discretized vorticity field via a formula analogous to the Biot-Savart law in electromagnetism. 3. The vorticity field is then evolved in time according to this velocity field. In the past two decades a number of different numerical methods for computing the motion of an incompressible fluid have been proposed that have the above features. In this article we consider a class of such methods which are based on the work of Chorin [1973, 1978, 1980, and 1982]. Members of this class are related by the manner in which a vorticity field in an inviscid, incompressible flow is discretized and subsequently evolved. It is common practice to use the term vortex method or the vortex method to refer to a member of this class when it is used to model the incompressible Euler equations. One can modify the vortex method and use it to model the incompressible Navier-Stokes equations by adding a random walk. This is known as the random vortex method. One can also replace the random walk by some non-random technique for solving the diffusion equation. Such methods are generally referred to as deterministic vortex methods.

62 citations


"An Object-Oriented Design for Two-D..." refers background or methods in this paper

  • ...Exhaustive details on particle-based vortex methods may be had from various reviews on the subject [Leonard 1980; Puckett 1991; Cottet and Koumoutsakos 2000; Majda and Bertozzi 2001]....

    [...]

  • ...…Ramachandran, Department of Aerospace Engineering, Indian Insti­tute of Technology Bombay, Powai, Mumbai 400076, India; email: prabhu@aero.iitb.ac.in; M. Ramakrishna, Department of Aerospace Engineering, Indian Institute of Technology Madras, Chennai 600036, India; email: krishna@ae.iitm.ac.in....

    [...]

Book
01 Nov 1997
TL;DR: The goal for the third edition of this book has remained unchanged from the first, and it is still my hope to impart to students, and by extension to my readers, an understanding of object-oriented programming based on general principles, and not speciic to any particular language.
Abstract: Preface I started writing my rst book, on Smalltalk, in 1983. I can distinctly remember thinking that I needed to write quickly, so as to not miss the crest of the Object-Oriented programming wave. Who would have thought that two decades later object-oriented programming would still be going strong. What a long strange trip its been. In the two decades that object-oriented programming has been studied, it has become the dominant programming paradigm. In the process it has changed almost every facet of computer science. And yet I nd that my goal for the third edition of this book has remained unchanged from the rst. It is still my hope to impart to my students, and by extension to my readers, an understanding of object-oriented programming based on general principles, and not speciic to any particular language. Languages come and go in this eld with dizzying rapidity. In the rst edition I discussed Objective-C and Apple's version of Object Pascal, both at that time widely used. Although both languages still exist, neither can at present be considered a dominant language. However, I continue to talk about Objective-C in the third edition, because from a language point of view it has many i n teresting and unique features. Between the rst edition and the third many languages seem to have disappeared such as Actor and Turing, others have come into existence such a s J a va, Eiiel and Self, many existing languages have acquired object extensions such as Common Lisp and Object Perl, and many h a ve burst on to the scene for a short while, then disappeared for example, Sather and Dylan. Then there is Beta, a language that hints at wonderful ideas behind an incomprehensible syntax. Prediction is diicult, particularly about the future. Will languages that are just now appearing, such a s R u b y, h a ve staying power or will they go the way o f Dylan? What about C? It is diicult to imagine that any language with Microsoft behind it will fail to be successful, but stranger things have happened. Personally, I think that C will last because it presents a route for Visual Basic programmers to nally progress to a better language, but that few Java or C++ programmers will migrate to the new language. Time will tell if my p o wers of foresight are better than those of …

35 citations

Journal ArticleDOI
TL;DR: This paper modified the two-dimensional panel technique to improve computational efficiency by adapting the fast multipole algorithm for the panel method, and achieves significant improvement in computational efficiency while ensuring that the edge effects are eliminated.
Abstract: A new two-dimensional panel technique has been developed to solve Laplacian flows, which eliminates the edge effect present in traditional panel methods. Such a method is very useful for applications where the velocity induced by the panels is required at arbitrary locations. Particle based flow solvers are a prime example. The method, however, requires considerably more computational effort. In this paper the method is modified to improve computational efficiency by adapting the fast multipole algorithm for the panel method. Significant improvement in computational efficiency is obtained while ensuring that the edge effects are eliminated.

15 citations


"An Object-Oriented Design for Two-D..." refers background or methods in this paper

  • ...(4) All particle interactions may be abstracted as the in.uence of cause elements on effect elements [Ramachandran et al. 2003, 2007; Ramachandran 2004a]....

    [...]

  • ...…to acceler­ ate an O(N2) computation to an O(N)one; two different .avors of the AFMM to handle ef.ciently the no-penetration boundary condition [Ramachandran et al. 2003; 2005] using a panel method; ACM Transactions on Mathematical Software, Vol. 36, No. 4, Article 18, Pub. date: August…...

    [...]

  • ...One using linear panels and described in [Ramachandran et al. 2003], the second using cubic panels as described in [Ramachandran et al. 2005] and the third using Anderson s scheme [Anderson 1992]....

    [...]

Book ChapterDOI
01 Nov 2001
TL;DR: In this paper, the Euler and the Navier-Stokes equations for incompressible high Reynolds numbers and inviscid flows are studied and a particle-trajectory map is presented.
Abstract: In this book we study incompressible high Reynolds numbers and incompressible inviscid flows. An important aspect of such fluids is that of vortex dynamics , which in lay terms refers to the interaction of local swirls or eddies in the fluid. Mathematically we analyze this behavior by studying the rotation or curl of the velocity field, called the vorticity . In this chapter we introduce the Euler and the Navier–Stokes equations for incompressible fluids and present elementary properties of the equations. We also introduce some elementary examples that both illustrate the kind of phenomena observed in hydrodynamics and function as building blocks for more complicated solutions studied in later chapters of this book. This chapter is organized as follows. In Section 1.1 we introduce the equations, relevant physical quantities, and notation. Section 1.2 presents basic symmetry groups of the Euler and the Navier–Stokes equations. In Section 1.3 we discuss the motion of a particle that is carried with the fluid. We show that the particle-trajectory map leads to a natural formulation of how quantities evolve with the fluid. Section 1.4 shows how locally an incompressible field can be approximately decomposed into translation, rotation, and deformation components. By means of exact solutions, we show how these simple motions interact in solutions to the Euler or the Navier–Stokes equations. Continuing in this fashion, Section 1.5 examines exact solutions with shear, vorticity, convection, and diffusion. We show that although deformation can increase vorticity, diffusion can balance this effect.

14 citations


"An Object-Oriented Design for Two-D..." refers methods in this paper

  • ...Exhaustive details on particle-based vortex methods may be had from various reviews on the subject [Leonard 1980; Puckett 1991; Cottet and Koumoutsakos 2000; Majda and Bertozzi 2001]....

    [...]

Journal ArticleDOI
TL;DR: A fast multipole algorithm to compute velocity fields due to higher order, two-dimensional vortex panels to solve the Laplace equation in the presence of complex geometries is developed.
Abstract: Higher order panel methods are used to solve the Laplace equation in the presence of complex geometries. These methods are useful when globally accurate velocity or potential fields are desired as in the case of vortex based fluid flow solvers. This paper develops a fast multipole algorithm to compute velocity fields due to higher order, two-dimensional vortex panels. The technique is applied to panels having a cubic geometry and a linear distribution of vorticity. The results of the present method are compared with other available techniques.

9 citations