Code Monkey home page Code Monkey logo

vortexlattice.jl's Introduction

VortexLattice

A Comprehensive Julia implementation of the Vortex Lattice Method

Authors: Taylor McDonnell and Andrew Ning

VortexLattice is a comprehensive pure-Julia implementation of the vortex lattice method for both steady and unsteady flow conditions. It is designed to be fast, accurate (within theoretical limitations), easy to use, and applicable to arbitrary geometries and velocity fields. Its steady analysis capabilities have been extensively verified against results generated using AVL and its unsteady analysis capabilities have been verified against unsteady vortex lattice method results generated by Katz and Plotkin.

Package Features

  • Vortex Ring Panels
    • Cambered lifting surfaces
    • Trailing vortices in user-specified direction
    • Optional finite-core model
  • Convenient geometry generation
    • From pre-existing grid
    • From lifting surface parameters
    • Symmetric geometries
    • Multiple lifting surfaces
  • Multiple discretization schemes
    • Uniform
    • Sine
    • Cosine
  • General freestream description
    • Freestream flow angles
    • Aircraft rotation components
    • Additional velocity as a function of location
  • Free/Fixed Wakes
    • Free wakes through unsteady analysis
    • Fixed wakes through steady analysis
  • Multiple analyses
    • Steady analysis
    • Unsteady (time-domain) analysis
    • Near field forces
    • Far field drag
    • Body and stability derivatives
  • Geometry and wake visualization using WriteVTK
  • Extensively verified against computational results.

Installation

Enter the package manager by typing ] and then run the following:

pkg> add VortexLattice

Performance

This code has been optimized to be highly performant, primarily by maintaining type stability and minimizing allocations. It should outperform vortex lattice method codes written in other higher level languages. However, it does not yet incorporate the fast multipole method to speed up wake computations, so its performance can still be improved.

Usage

See the documentation

References

[1] Drela, M. Flight Vehicle Aerodynamics. MIT Press, 2014.

[2] Katz, J., and Plotkin A. Low-Speed Aerodynamics. Cambridge University Press, 2001.

vortexlattice.jl's People

Contributors

taylormcd avatar andrewning avatar rymanderson avatar ry10 avatar github-actions[bot] avatar dingraha avatar jdebecdelievre avatar penify-dev[bot] avatar

Watchers

Robert Bongart (MSc MSc MA) avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.