Skip to content
forked from mdolab/adflow

ADflow is a finite volume RANS solver tailored for gradient-based aerodynamic design optimization.

License

Notifications You must be signed in to change notification settings

LeeElvis/adflow

 
 

Repository files navigation

ADflow

Build Status Documentation Status

ADflow is a flow solver developed by the MDO Lab at the University of Michigan. It solves the compressible Euler, laminar Navier–Stokes and Reynolds-averaged Navier–Stokes equations using structured multi-block and overset meshes. ADflow's features include the following:

  • Discrete adjoint implementation
  • "Complexified" code for complex-step derivative verification
  • Massively parallel (both CPU and memory scalable) implementation using MPI

ADflow has been used in aerodynamic, aerostructural, and aeropropulsive design optimization of aircraft configurations. Furthermore, we used ADflow to perform design optimization of hydrofoils and wind turbines.

Documentation

Please see the documentation for installation details and API documentation.

To locally build the documentation, enter the doc folder and enter make html in terminal. You can then view the built documentation in the _build folder.

Citation

Please cite ADflow in any publication for which you find it useful. The major developments in ADflow are published in the following articles:

Python API

The Python API for ADflow and its advantages are detailed in this paper.

Charles A. Mader, Gaetan K. W. Kenway, Anil Yildirim, and Joaquim R. R. A. Martins, “ADflow: An Open-Source Computational Fluid Dynamics Solver for Aerodynamic and Multidisciplinary Optimization”, Journal of Aerospace Information Systems, 2020. doi: 10.2514/1.I010796

Approximate Newton–Kyrlov Solver

The theory and implementation of the approximate Newton–Krylov (ANK) solver in ADflow is detailed in this paper.

Anil Yildirim, Gaetan K. W. Kenway, Charles A. Mader, and Joaquim R. R. A. Martins, “A Jacobian-free approximate Newton–Krylov startup strategy for RANS simulations”, Journal of Computational Physics, 397:108741, November 2019. doi: 10.1016/j.jcp.2019.06.018

Adjoint Implementation

The adjoint implementation in ADflow, along with a general approach towards adjoint methods for CFD solvers is detailed in this paper.

Gaetan K. W. Kenway, Charles A. Mader, Ping He, and Joaquim R. R. A. Martins, “Effective Adjoint Approaches for Computational Fluid Dynamics”, Progress in Aerospace Sciences, 110:100542, October 2019. doi: 10.1016/j.paerosci.2019.05.002

License

Copyright 2019 MDO Lab

Distributed using the GNU Lesser General Public License (LGPL), verstion 2.1; see the LICENSE file for details.

About

ADflow is a finite volume RANS solver tailored for gradient-based aerodynamic design optimization.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Fortran 86.0%
  • C 6.3%
  • Python 5.1%
  • Makefile 2.6%
  • C++ 0.0%
  • NASL 0.0%