# Panel_Methods
This repository contains all the code related to panel methods. This includes scripts and functions, in both MATLAB and Python. It will be updated continuously as I finish the video series with the final Source Panel Method (SPM) and Vortex Panel Method (VPM) code. Explanations of the different files can be found in the sections below, which are pretty much the same as you'll find on my [website launching page](http://www.joshtheengineer.com/panel-methods/). Links to my YouTube videos and blog posts on my website are included. Note that functions are always named in all caps.
## UIUC Airfoil Database File Download
This section is for downloading all the airfoil coordinates from the [UIUC Airfoil Database](https://m-selig.ae.illinois.edu/ads/coord_database.html). The files are all of type *.dat*, which can be opened in any text editor. This code is run in Python, since it's free to download. There are two scripts: one that downloads the files in the default coordinate format (which varies quite a bit), and one that downloads the files in Selig format (which is easier to load into your program of choice). If I were you, I would download them in Selig format.
* [Get_Save_Airfoils.py](./Get_Save_Airfoils.py)
* [Get_Save_Airfoils_Selig.py](./Get_Save_Airfoils_Selig.py)
* [YouTube Video](https://www.youtube.com/watch?v=nILo18DlqAo)
* [Blog Post](http://www.joshtheengineer.com/2019/01/30/uiuc-airfoil-database-file-download/)
## Load Airfoil Coordinates in MATLAB and Python
With the airfoils download from the UIUC database in the previous section, we now need to read them into our MATLAB/Python code in order to use them in the panel code. Note that if you're planning on using Python, you need to download the files into Selig format from the previous section, since that's all I coded for the loading function in Python.
* [Test_Load_Airfoil_Function.m](./Test_Load_Airfoil_Function.m)
* [LOAD_AIRFOIL.m](./LOAD_AIRFOIL.m)
* [LOAD_AIRFOIL_SELIG.m](./LOAD_AIRFOIL_SELIG.m)
* [LOAD_AIRFOIL_SELIG.py](./LOAD_AIRFOIL_SELIG.py)
* [YouTube Video](https://www.youtube.com/watch?v=xJYxMfGFrk8)
* [Blog Post](http://www.joshtheengineer.com/2019/03/30/load-airfoil-data-into-matlab/)
## Running XFOIL from MATLAB and Python
This section is for running XFOIL from a script in MATLAB/Python. This is convenient if you want to be able to quickly change a parameter (or multiple parameters) and output the results, but you don't want to go into the command line of XFOIL every time. This is useful for getting airfoil data in a MATLAB GUI for instance. If you have an edit text box for changing the angle of attack, then every time it's changed by the user, the MATLAB program will call XFOIL using the updated AoA value and return the airfoil coordinates and pressure coefficient data (for example).
* [MATLAB_XFOIL.m](./MATLAB_XFOIL.m)
* [Python_XFoil.py](./Python_XFoil.py)
* [YouTube Video](https://www.youtube.com/watch?v=bWjo3N9COz4)
* [Blog Post - MATLAB](http://www.joshtheengineer.com/2019/01/30/running-xfoil-from-matlab/)
* [Blog Post - Python](http://www.joshtheengineer.com/2019/02/06/running-xfoil-from-python/)
## Compute Circulation
Circulation is a fundamental concept in aerodynamics (and more generally, in multivariable calculus). In order to find the lift of an airfoil using the vortex panel method, the circulation around the airfoil needs to be computed. For pretty much all of the remaining codes, you'll need to have either the MATLAB or Python *COMPUTE_CIRCULATION* function in the run directory. The script *Circulation* is an example file showing how to use the *COMPUTE_CIRCULATION* function, and is not needed for future codes.
* [Circulation.m](./Circulation.m)
* [COMPUTE_CIRCULATION.m](./COMPUTE_CIRCULATION.m)
* [Circulation.py](./Circulation.py)
* [COMPUTE_CIRCULATION.py](./COMPUTE_CIRCULATION.py)
* [YouTube Video](https://www.youtube.com/watch?v=b8EnhiSjL3o)
* [Blog Post](http://www.joshtheengineer.com/2019/04/01/compute-circulation-of-a-vector-field-in-matlab-and-python/)
## Incompressible Potential Flow
When assuming that the flow is both irrotational and incompressible, we can simplify down some complicated equations into a simpler equation (Laplace's equation), and the resulting flow is called incompressible potential flow. There is no code here, but links to my explanation YouTube video and blog post can be found below.
* [YouTube Video](https://www.youtube.com/watch?v=Zo5XIcX8s2Q)
* [Blog Post](http://www.joshtheengineer.com/2019/05/05/introduction-to-incompressible-potential-flow/)
## Elementary Potential Flows
In order to build more complex flows, we need to understand the simplest types of potential flows. Here, we go through three elementary flows (uniform, source/sink, and vortex), along with two combinations of these flows (uniform + source/sink, uniform + vortex).
* Uniform Flow
* [Uniform_Flow.m](./Uniform_Flow.m)
* [Uniform_Flow.py](./Uniform_Flow.py)
* [YouTube Video](https://www.youtube.com/watch?v=jCTTDclJZEk)
* [Blog Post](www.joshtheengineer.com/2019/08/25/elementary-flow-uniform-flow/)
* Source/Sink Flow
* [Source_Sink_Flow.m](./Source_Sink_Flow.m)
* [Source_Sink_Flow.py](./Source_Sink_Flow.py)
* [YouTube Video](https://www.youtube.com/watch?v=eLDI_jV3yo0)
* [Blog Post](http://www.joshtheengineer.com/2019/08/25/elementary-flow-source-sink-flow/)
* Vortex Flow
* [Vortex_Flow.m](./Vortex_Flow.m)
* [Vortex_Flow.py](./Vortex_Flow.py)
* [YouTube Video](https://www.youtube.com/watch?v=61jvr3rtmLE)
* [Blog Post](http://www.joshtheengineer.com/2019/08/25/elementary-flow-vortex-flow/)
* Uniform + Source/Sink Flow
* [Uniform_Source_Sink_Flow.m](./Uniform_Source_Sink_Flow.m)
* [Uniform_Source_Sink_Flow.py](./Uniform_Source_Sink_Flow.py)
* [YouTube Video](https://www.youtube.com/watch?v=zIvpN9f9dAA)
* [Blog Post](http://www.joshtheengineer.com/2019/08/25/combined-flow-uniform-and-source-flow/)
* Uniform + Vortex Flow
* [Uniform_Vortex_Flow.m](./Uniform_Vortex_Flow.m)
* [Uniform_Vortex_Flow.py](./Uniform_Votex_Flow.py)
* [YouTube Video](https://www.youtube.com/watch?v=SoMuRp5v16w)
* [Blog Post](http://www.joshtheengineer.com/2019/08/25/combined-flow-uniform-and-vortex-flow/)
## Panel Method Geometry
The first step in writing your own panel method code is to understand the geometry and its associated variables. Here, we go through this in detail for an arbitrary shape (circle approximated by eight panels). In the MATLAB and Python codes, we also show how this works for an airfoil. Note that for these codes to work, you will need to have the appropriate *[LOAD_AIRFOIL_SELIG](./LOAD_AIRFOIL_SELIG.m)* function downloaded in the directory (unless you want to comment out the airfoil loading section).
* [Panel_Method_Geometry.m](./Panel_Method_Geometry.m)
* [Panel_Method_Geometry.py](./Panel_Method_Geometry.py)
* [YouTube Video](https://www.youtube.com/watch?v=kIqxbd937PI)
* [Blog Post](http://www.joshtheengineer.com/2019/10/09/panel-method-geometry/)
## Building More Complex Potential Flows
In the *Elementary Potential Flows* section, we went over all the relevant elementary incompressible potential flows. We can now use these to build up a more complex flow step-by-step. The end result of this section is to obtain an expression for the velocity potential induced at an arbitrary point P in the flow due to uniform flow and N source panels (that approximate the airfoil geometry).
* [YouTube Video](https://www.youtube.com/watch?v=EKzbwJvKcmw)
## Flow Around an Airfoil
How do we use the velocity potential equation derived in the previous section to compute the flow around an airfoil? This section explains the necessary conditions that we can use to compute the unknown source panel strengths. We use the boundary condition for an impermeable (solid) object to stipulate that the normal velocity at each panel control point should be zero. In the video, we also simplify down
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
浙江大学航空航天学院空气动力学大作业-Fundamentals-of-Aerodynamics-Homework数据库课程设计 (536个子文件)
osm.0220 51KB
osm.0230 51KB
osm.0240 97KB
osm.0250 124KB
osm.0260 151KB
osm.0270 167KB
osm.0280 167KB
ai.03 972B
osm.0300 206KB
osm.0320 206KB
osm.0350 206KB
osm_gu.04 90KB
ai.04 972B
osm.0400 209KB
osm_gu.05 90KB
ai.05 972B
osm_ns.0500 185KB
osm_gu.06 90KB
ai.06 972B
osm_ns.0600 185KB
osm_gu.07 90KB
osm_gu.08 90KB
ai.08 972B
osm_ns.0800 185KB
osm_gu.10 90KB
e387_11.100 7KB
e387_09.100 6KB
osm_ns.1000 185KB
osm_gu.12 23KB
ai.12 972B
osm_ns.1200 185KB
osm_gu.15 90KB
osm_ns.1500 185KB
osm_gu.20 90KB
ai.20 972B
osm_ns.2000 185KB
cp_250_040.203 669B
osm_gu.25 90KB
osm_gu.30 90KB
ai.35 972B
cp_060_050.387 844B
cp_100_040.387 806B
osm_gu.50 90KB
SPVP_Method.7z 397KB
Readme.absoft 2KB
Makefile.alpha 6KB
W32win_pthread.c 48KB
W32win.c 46KB
Xwin2.c 30KB
Xwin.c 28KB
Xwin1.c 28KB
rgb.c 17KB
rgbtest.c 1KB
Readme.colors 3KB
osmap_orig.dat 806KB
m-selig.ae.illinois.edu_ads_coord_naca23021.dat 11KB
la203t.dat 3KB
test.dat 3KB
la203.dat 2KB
dae31.dat 2KB
dae21.dat 2KB
dae11.dat 2KB
lnv109a.dat 2KB
dae51.dat 2KB
e387.dat 1KB
NACA23021.dat 657B
NACA23021.dat 646B
NACA23021.dat 646B
la203t.dat~ 3KB
Doc 34KB
Airfoil_caculate.doc 9KB
《关于NACA23021翼型的初步研究》.docx 2.97MB
《关于NACA23021翼型的初步研究》 ----刘.docx 1.23MB
NACA23021大作业.docx 597KB
网格无关性.docx 92KB
2.docx 21KB
4.docx 20KB
5.docx 18KB
公式.docx 18KB
1、3.docx 13KB
latex公式.docx 13KB
latex公式_总N、A.docx 11KB
latex公式_dN、DA.docx 6KB
latex公式_Φ的计算.docx 6KB
latex公式_伯努利方程.docx 6KB
latex公式_ΔΦ的计算.docx 6KB
latex公式_Vn诱导速度.docx 6KB
latex公式_LD与NA关系.docx 6KB
latex公式_茹科夫斯基求CL.docx 6KB
latex公式_V_inf+Vn.docx 6KB
latex公式_Vn诱导速度_VPM.docx 6KB
latex公式_Cp计算.docx 6KB
latex公式_E.docx 6KB
latex公式_茹科夫斯基Γ.docx 6KB
latex公式_Γ求解.docx 6KB
参考.docx 0B
config.make.DP 550B
.DS_Store 15KB
.DS_Store 6KB
.DS_Store 6KB
共 536 条
- 1
- 2
- 3
- 4
- 5
- 6
资源评论
好家伙VCC
- 粉丝: 2108
- 资源: 9145
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功