This repository contains a MATLAB implementation of the 3D Vortex Lattice Method (VLM) for calculating the aerodynamic characteristics of a finite, swept, and tapered wing at a given angle of attack. The code computes lift, induced drag, and spanwise circulation using a panel-based approach with cosine spacing.
- Handles swept and tapered wing geometries
- Cosine spacing for improved panel resolution
- User-defined control point and bound vortex placement
- Computes:
- Circulation distribution (Γ)
- Spanwise lift distribution
- Total lift and induced drag
- Lift and drag coefficients (CL, CD)
- CL correction using Prandtl’s lifting line theory
- Plots:
- Γ vs. ideal elliptical distribution
- Spanwise lift distribution
Key adjustable parameters in the script:
N
: Number of spanwise panels (e.g., 50)Span
,c_r
,c_t
,Lambda
: Geometry (sweep, root/tip chords)alpha
: Angle of attack (degrees)BVP
,CPP
: Chordwise positions of the bound vortex and control point
With:
- Span = 10 m, Taper ratio = 0.5, Sweep = 5°, AoA = 5°, V = 50 m/s, N = 50
The results are:
CL
: 0.8829Corrected CL
: 0.4382 (Prandtl’s theory)CD
: 0.04275- Matrix Condition Number: ~1724 (well-conditioned)
VLM_Cosine.mlx
: Main script (geometry, solver, plots)README.md
: Project overview
- Clone the repo:
git clone https://github.com/your-username/vlm-swept-wing.git cd vlm-swept-wing
- Open VLM_Cosine.m in MATLAB and run.
- Edit the geometry or flow conditions in the script header to customize.
Inviscid, incompressible, and steady flow assumed
Thin wing theory: camber and thickness effects are not modeled
No viscous drag or compressibility modeled
Results are reliable for moderate angles of attack (≤ 10°)
for any change in parameters, a validation is needed
Katz, J., & Plotkin, A. (2001). Low-Speed Aerodynamics
Anderson, J.D. (2011). Fundamentals of Aerodynamics
Bertin, J.J. & Smith, M.L. (1998). Aerodynamics for Engineers
Developed by Mohammad Hossein Mosalmani, Aerospace Engineering graduate from Sharif University of Technology. If you use or build upon this code, feel free to mention or credit.
This project is licensed under the MIT License — see the LICENSE file for details.