AeroSandbox
CFDPython
Our great sponsors
AeroSandbox  CFDPython  

6  11  
608  3,147  
  0.7%  
9.7  0.0  
7 days ago  8 months ago  
Jupyter Notebook  Jupyter Notebook  
MIT License  GNU General Public License v3.0 or later 
Stars  the number of stars that a project has on GitHub. Growth  month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
AeroSandbox

I gave a presentation on the use of Python in aerospace engineering
AeroSandbox  an optimization suite that combines the easeofuse of NumPy syntax with the power of modern automatic differentiation. AeroSandbox contains dozens of endtoenddifferentiable aerospace physics models, allowing you to simultaneously optimize an aircraft's aerodynamics, structures, propulsion, mission trajectory, stability, and more. Best of all, it is designed to be run on a laptop, not a supercomputer.
CFDPython
 Which one is best for numerical simulations for fluid mechanics [mostly linear terms].

Poisson's Equation is the most powerful tool not yet in your toolbox
There are many different ways to do what you'd like. The easiest starting point would probably be this tutorial: https://github.com/barbagroup/CFDPython
But that won't handle turbulence. The real "turbulence problem" is that computing actual turbulent flows requires enormous computational resources. So instead of solving the NavierStokes equations, related equations with lower computational cost are solved. Because of how these equations are developed, they require modeling of "unclosed" terms, and this is a likely source of inaccuracy.
If you want something relatively simple, you could take the RANS approach and use the SpalartAllmaras model:
https://www.cfdonline.com/Wiki/Introduction_to_turbulence/R...

Complexity Explained
I sniff an air of condescension; what’s your goals therein? Are you posturing your ‘maths’ knowledge?
I thought I was explicit in my criticism of “notation only” explanations, but perhaps a positive example would be more explicit.
https://github.com/barbagroup/CFDPython
This repo explains computational fluid dynamics (an example of a complex system!) from “what is a python function” to “2d Navier stokes”.
It shows the work of how to discretize ‘latex beautified’ notation, shows the relationship between the computations and the notation, and even explains when their LaTex strays from “conventional use of notation” and why.
The authors even throw in traditional handwritten board lecture videos if that helps you learn better.
complexityexplained reads like it’s written by the SpiderMan points at SpiderMan meme.

AeroPython: Classical Aerodynamics with Python
See also by the same professor CFD Python: 12 Steps to NavierStokes: https://github.com/barbagroup/CFDPython
What are some alternatives?
AeroPython  Classical Aerodynamics of potential flow using Python and Jupyter Notebooks
PteraSoftware  Ptera Software is a fast, easytouse, and opensource software package for analyzing flappingwing flight.
jsbsim  An open source flight dynamics & control software library
Nalu  Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of open applications of interest built on the Sierra Toolkit and Trilinos solver Tpetra solver stack. The open source BSD, clause 3 license model has been chosen for the code base. See LICENSE for more information.
AlgorithmicTrading  This repository contains three ways to obtain arbitrage which are Dual Listing, Options and Statistical Arbitrage. These are projects in collaboration with Optiver and have been peerreviewed by staff members of Optiver.
homemademachinelearning  🤖 Python examples of popular machine learning algorithms with interactive Jupyter demos and math being explained
ZygoteMutatingArraysWorkAround.jl  A tutorial on how to work around ‘Mutating arrays is not supported’ error while performing automatic differentiation (AD) using the Julia package Zygote.
xflrpy  xflrpy is a python enabled version of xflr5 for scripting and design optimization.
poissoncanvas  Explore poisson equation with HTML canvas
Flow  Flow is a sparse gridbased fluid simulation library for realtime applications.
machinelearningandsimulation  All the handwritten notes 📝 and source code files 🖥️ used in my YouTube Videos on Machine Learning & Simulation (https://www.youtube.com/channel/UCh0P7KwJhuQ4vrzc3IRuw4Q)