Skip to content

Commit 20baa8f

Browse files
committed
Merge branch 'main' into perf/cut-alloc
2 parents aaca68f + 23ebc3a commit 20baa8f

File tree

14 files changed

+508
-135
lines changed

14 files changed

+508
-135
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
Manifest.toml
22
.vscode/settings.json
33
venv
4+
results/TUDELFT_V3_LEI_KITE/polars/$C_L$ vs $C_D$.pdf
5+
*.bin
46
results/TUDELFT_V3_LEI_KITE/polars/tutorial_testing_stall_model_n_panels_54_distribution_split_provided.pdf
57
docs/build/
6-
*.bin

Project.toml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,26 @@
11
name = "VortexStepMethod"
22
uuid = "ed3cd733-9f0f-46a9-93e0-89b8d4998dd9"
33
authors = ["1-Bart-1 <[email protected]>"]
4-
version = "0.1.0"
4+
version = "0.1.2"
55

66
[deps]
77
BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
88
Colors = "5ae59095-9a9b-59fe-a467-6f913c188581"
99
ControlPlots = "23c2ee80-7a9e-4350-b264-8e670f12517c"
1010
DelimitedFiles = "8bb1440f-4735-579b-a4ab-409b98df4dab"
11+
Distributed = "8ba89e20-285c-5b6f-9357-94700520ee1b"
1112
Interpolations = "a98d9a8b-a2ab-59e6-89dd-64a1c18fca59"
1213
LaTeXStrings = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f"
1314
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1415
Logging = "56ddb016-857b-54e1-b83d-db4d58db5568"
1516
Measures = "442fdcdd-2543-5da2-b0f3-8c86c306513e"
1617
NonlinearSolve = "8913a72c-1f9b-4ce2-8d82-65094dcecaec"
18+
Serialization = "9e88b42a-f829-5b0c-bbe9-9e923198166b"
19+
SharedArrays = "1a1011a3-84de-559e-8e89-a11a2f7dc383"
1720
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
1821
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
22+
Timers = "21f18d07-b854-4dab-86f0-c15a3821819a"
23+
Xfoil = "19641d66-a62d-11e8-2441-8f57a969a9c4"
1924

2025
[compat]
2126
BenchmarkTools = "1"

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[![Build Status](https://github.com/Albatross-Kite-Transport/VortexStepMethod.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/Albatross-Kite-Transport/VortexStepMethod.jl/actions/workflows/CI.yml?query=branch%3Amain) [![Coverage](https://codecov.io/gh/Albatross-Kite-Transport/VortexStepMethod.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/Albatross-Kite-Transport/VortexStepMethod.jl)
1+
[![Dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://Albatross-Kite-Transport.github.io/VortexStepMethod.jl/dev) [![Build Status](https://github.com/Albatross-Kite-Transport/VortexStepMethod.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/Albatross-Kite-Transport/VortexStepMethod.jl/actions/workflows/CI.yml?query=branch%3Amain) [![Coverage](https://codecov.io/gh/Albatross-Kite-Transport/VortexStepMethod.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/Albatross-Kite-Transport/VortexStepMethod.jl)
22

33

44
# Simulation of a 3D airfoil using the Vortex Step Method

data/ram_air_kite_foil.dat

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
A
2+
1.0000000 0.0000479
3+
0.9666341 0.0017363
4+
0.9038341 0.0066154
5+
0.8342935 0.0136262
6+
0.7624304 0.0214202
7+
0.6907649 0.0299758
8+
0.6203655 0.0397261
9+
0.5500472 0.0504400
10+
0.4788028 0.0614558
11+
0.4074159 0.0732084
12+
0.3368400 0.0848204
13+
0.2692757 0.0941998
14+
0.2083741 0.0988242
15+
0.1573868 0.0983570
16+
0.1169140 0.0924067
17+
0.0828168 0.0826568
18+
0.0560463 0.0704667
19+
0.0361758 0.0577955
20+
0.0215498 0.0452424
21+
0.0115826 0.0329061
22+
0.0055625 0.0219130
23+
0.0019945 0.0124293
24+
0.0002467 0.0035649
25+
0.0004755 -0.0045913
26+
0.0027675 -0.0130849
27+
0.0077900 -0.0220373
28+
0.0162007 -0.0306320
29+
0.0285895 -0.0396469
30+
0.0466671 -0.0494062
31+
0.0728758 -0.0593274
32+
0.1094090 -0.0681156
33+
0.1556860 -0.0747603
34+
0.2093904 -0.0783204
35+
0.2712652 -0.0798598
36+
0.3359510 -0.0788043
37+
0.4038697 -0.0747532
38+
0.4742506 -0.0687364
39+
0.5453696 -0.0615892
40+
0.6158254 -0.0528273
41+
0.6875958 -0.0427482
42+
0.7594140 -0.0320344
43+
0.8304601 -0.0220930
44+
0.9008044 -0.0130373
45+
0.9663063 -0.0044401
46+
1.0000000 0.0000479

examples/ram_air_kite.jl

Lines changed: 10 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,7 @@ using DataFrames
44
using LinearAlgebra
55

66
# Create wing geometry
7-
wing = KiteWing("data/HL5_ram_air_kite_body.obj")
8-
9-
alphas = deg2rad.(-10:1:25) # Range of angles from -10 to 25 degrees
10-
polars = zeros(length(alphas), 4) # Matrix for [alpha, CD, CL, CM]
11-
for (i, alpha) in enumerate(alphas)
12-
# Simplified aerodynamic coefficients
13-
cd = 0.015 + 0.015 * abs(alpha/10)^1.5 # Drag increases with angle
14-
cl = 5.0 * alpha + 0.01 * alpha^2 * exp(-alpha/20) # Lift with stall behavior
15-
cm = -0.02 * alpha # Linear pitching moment
16-
17-
polars[i, :] .= [alpha, cd, cl, cm]
18-
end
19-
20-
for gamma in range(wing.gamma_tip - wing.gamma_tip/10, -wing.gamma_tip + wing.gamma_tip/10, 20)
21-
add_section!(wing, gamma, ("polar_data", polars))
22-
end
7+
wing = KiteWing("data/ram_air_kite_body.obj", "data/ram_air_kite_foil.dat")
238
wing_aero = WingAerodynamics([wing])
249

2510
# Create solvers
@@ -59,34 +44,32 @@ plot_geometry(
5944

6045
# Solving and plotting distributions
6146
@time results = solve(VSM, wing_aero)
62-
@time results_with_stall = solve(VSM_with_stall_correction, wing_aero)
47+
@time results = solve(VSM, wing_aero)
6348

6449
CAD_y_coordinates = [panel.aerodynamic_center[2] for panel in wing_aero.panels]
6550

6651
plot_distribution(
67-
[CAD_y_coordinates, CAD_y_coordinates],
68-
[results, results_with_stall],
69-
["VSM", "VSM with stall correction"];
52+
[CAD_y_coordinates],
53+
[results],
54+
["VSM"];
7055
title="CAD_spanwise_distributions_alpha_$(round(aoa, digits=1))_beta_$(round(side_slip, digits=1))_yaw_$(round(yaw_rate, digits=1))_v_a_$(round(v_a, digits=1))",
7156
data_type=".pdf",
7257
is_save=false,
7358
is_show=true
7459
)
7560

7661
plot_polars(
77-
[VSM, VSM_with_stall_correction],
78-
[wing_aero, wing_aero],
62+
[VSM],
63+
[wing_aero],
7964
[
80-
"VSM CAD 19ribs",
81-
"VSM CAD 19ribs , with stall correction",
65+
"VSM from Ram Air Kite OBJ and DAT file",
8266
];
83-
angle_range=range(0, 25, length=25),
67+
angle_range=range(0, 20, length=20),
8468
angle_type="angle_of_attack",
8569
angle_of_attack=0,
8670
side_slip=0,
87-
yaw_rate=0,
8871
v_a=10,
89-
title="tutorial_testing_stall_model_n_panels_$(wing.n_panels)_distribution_$(wing.spanwise_panel_distribution)",
72+
title="ram_kite_panels_$(wing.n_panels)_distribution_$(wing.spanwise_panel_distribution)",
9073
data_type=".pdf",
9174
is_save=false,
9275
is_show=true

examples/stall_model.jl

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,6 @@ plot_polars(
111111
angle_type="angle_of_attack",
112112
angle_of_attack=0,
113113
side_slip=0,
114-
yaw_rate=0,
115114
v_a=10,
116115
title="tutorial_testing_stall_model_n_panels_$(n_panels)_distribution_$(spanwise_panel_distribution)",
117116
data_type=".pdf",

0 commit comments

Comments
 (0)