Skip to content

Commit 5e56cc3

Browse files
committed
#185 #155 created ram_air_kite folder, all tests passing
1 parent af11c40 commit 5e56cc3

18 files changed

+195
-292
lines changed

data/pyramid_model/geometry.yaml

Lines changed: 58 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,68 @@
1+
# Kite system geometry for simulation based on provided Julia code
2+
13
wing_sections:
24
# ---------------------------------------------------------------
3-
# headers:
4-
# - airfoil_id: integer, unique identifier for the airfoil (matches wing_airfoils)
5-
# - LE_x: x-coordinate of leading edge
6-
# - LE_y: y-coordinate of leading edge
7-
# - LE_z: z-coordinate of leading edge
8-
# - TE_x: x-coordinate of trailing edge
9-
# - TE_y: y-coordinate of trailing edge
10-
# - TE_z: z-coordinate of trailing edge
5+
# headers: [airfoil_id, LE_x, LE_y, LE_z, TE_x, TE_y, TE_z]
6+
# airfoil_id: 1 (since only one polar/interpolator is used)
7+
# The kite is represented by 4 chordwise points at y = width/2, -width/2 and at y = 0.
8+
# Chord positions from get_kite_points(s): P2 (center right), P3 (center left)
9+
# Bridle/other points are omitted for simplicity.
10+
# Units: meters
1111
# ---------------------------------------------------------------
1212
headers: [airfoil_id, LE_x, LE_y, LE_z, TE_x, TE_y, TE_z]
1313
data:
14-
- [1, 0, 10, 0, 1, 10, 0]
15-
- [2, 0, -10, 0, 1, -10, 0]
14+
- [1, 0.0, 8.16/2, 3.15+4.9, 2.0, 8.16/2, 3.15+4.9] # Right tip chord (P2)
15+
- [1, 0.0, -8.16/2, 3.15+4.9, 2.0, -8.16/2, 3.15+4.9] # Left tip chord (P3)
16+
- [1, 0.0, 0.0, 4.9, 2.0, 0.0, 4.9] # Bridle attachment (P4/P5 merged, approx.)
1617

1718
wing_airfoils:
1819
# ---------------------------------------------------------------
19-
# headers:
20-
# - airfoil_id: integer, unique identifier for the airfoil
21-
# - type: one of [neuralfoil, breukels_regression, masure_regression, polars]
22-
# - info_dict: dictionary with parameters depending on 'type'
23-
#
24-
# info_dict fields by type:
25-
# - breukels_regression:
26-
# t: Tube diameter non-dimensionalized by chord (required)
27-
# kappa: Maximum camber height/magnitude, non-dimensionalized by chord (required)
28-
# - neuralfoil:
29-
# dat_file_path: Path to airfoil .dat file (x, y columns)
30-
# model_size: NeuralFoil model size (e.g., "xxxlarge")
31-
# xtr_lower: Lower transition location (0=forced, 1=free)
32-
# xtr_upper: Upper transition location
33-
# n_crit: Critical amplification factor (see guidelines below)
34-
# n_crit guidelines:
35-
# Sailplane: 12–14
36-
# Motorglider: 11–13
37-
# Clean wind tunnel: 10–12
38-
# Average wind tunnel: 9 (standard "e^9 method")
39-
# Dirty wind tunnel: 4–8
40-
# - polars:
41-
# csv_file_path: Path to polar CSV file (columns: alpha [rad], cl, cd, cm)
42-
# - masure_regression:
43-
# t, eta, kappa, delta, lamba, phi: Regression parameters
44-
# - inviscid:
45-
# no further data is required
46-
# ---------------------------------------------------------------
47-
alpha_range: [-10, 31, 0.5] # [deg], in this range the polars are calculated
48-
reynolds: !!float 1e6 # Reynolds number
20+
# Only one polar, which is interpolated in code; you may later link to a CSV file.
21+
# ---------------------------------------------------------------
22+
alpha_range: [-180, 180, 1] # deg
23+
reynolds: 1e6
4924
headers: [airfoil_id, type, info_dict]
5025
data:
51-
- [1, polars, {csv_file_path: "polars/1.csv"}]
52-
- [2, polars, {csv_file_path: "polars/2.csv"}]
26+
- [1, polars, {csv_file_path: "cl_cd_polar.csv"}]
27+
28+
bridle_nodes:
29+
# ---------------------------------------------------------------
30+
# Use the points from get_kite_points(s), assuming:
31+
# - P1: Bridle point
32+
# - P2: right tip
33+
# - P3: left tip
34+
# - P4/P5: at width/2, -width/2, z = bridle height
35+
# ---------------------------------------------------------------
36+
headers: [id, x, y, z, type]
37+
data:
38+
- [1, 0.0, 0.0, 0.0, knot] # Bridle origin
39+
- [2, 0.0, 8.16/2, 3.15+4.9, knot] # Right tip
40+
- [3, 0.0, -8.16/2, 3.15+4.9, knot] # Left tip
41+
- [4, 0.0, 8.16/2, 4.9, knot] # Bridle top right
42+
- [5, 0.0, -8.16/2, 4.9, knot] # Bridle top left
43+
44+
bridle_lines:
45+
# ---------------------------------------------------------------
46+
headers: [name, rest_length, diameter, material, density]
47+
data:
48+
- [bridle_main, 33.4, 0.0025, dyneema, 970]
49+
50+
bridle_connections:
51+
# ---------------------------------------------------------------
52+
# Very simplified; you can expand as needed. Connects bridle origin to tips and bridle tops.
53+
# headers: [name, ci, cj, ck]
54+
data:
55+
- [bridle_main, 1, 2, 0]
56+
- [bridle_main, 1, 3, 0]
57+
- [bridle_main, 1, 4, 0]
58+
- [bridle_main, 1, 5, 0]
59+
- [bridle_top, 4, 2, 0]
60+
- [bridle_top, 5, 3, 0]
61+
62+
tether:
63+
# Tether from bridle origin (node 1) extending for l_tether meters
64+
length: 50.0
65+
diameter: 0.004
66+
material: dyneema
67+
density: 724.0
68+
segments: 14

data/pyramid_model/polars/1.csv

Lines changed: 17 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -1,71 +1,17 @@
1-
alpha,Cd,Cs,Cl,Cm
2-
-10.0,0.0249065318608897,-3.434761974054366e-21,-1.0732064541182402,0.0054067639622245
3-
-9.5,0.0236873271741019,-3.285535810591269e-21,-1.0370727681402363,0.0058564293781756
4-
-9.0,0.0225262393305432,-3.1355323293482928e-21,-0.9992907398617008,0.0062213900212979
5-
-8.5,0.0214269325718191,-2.984782761608788e-21,-0.9599576821061372,0.0065104482864488
6-
-8.0,0.0203930711395351,-2.833318338656105e-21,-0.9191709076970505,0.006732406568486
7-
-7.5,0.0194283192752969,-2.6811702917735944e-21,-0.8770277294579452,0.0068960672622671
8-
-7.0,0.01853634122071,-2.528369852244608e-21,-0.8336254602123256,0.0070102327626497
9-
-6.5,0.0177208012173799,-2.3749482513524935e-21,-0.7890614127836962,0.0070837054644914
10-
-6.0,0.0169853635069124,-2.2209367203806045e-21,-0.7434328999955613,0.0071252877626499
11-
-5.5,0.0163336923309129,-2.06636649061229e-21,-0.6968372346714253,0.0071437820519827
12-
-5.0,0.0157694519309871,-1.9112687933309017e-21,-0.6493717296347931,0.0071479907273476
13-
-4.5,0.0152645128216272,-1.753587209885578e-21,-0.5997295153722275,0.0070196560505497
14-
-4.0,0.01479533503566,-1.5927577702719893e-21,-0.5471734663994646,0.0066920925435352
15-
-3.5,0.0143724670921928,-1.4310503787432801e-21,-0.4926555115837663,0.0062514609913727
16-
-3.0,0.0140064575103327,-1.2707349395525959e-21,-0.4371275797923952,0.0057839221791311
17-
-2.5,0.0137078548091868,-1.1140813569530825e-21,-0.3815415998926136,0.005375636891879
18-
-2.0,0.0134872075078624,-9.63359535197884e-22,-0.326849500751684,0.0051127659146851
19-
-1.5,0.0133110016081565,-8.173276016701202e-22,-0.2729636358104737,0.0049791802562241
20-
-1.0,0.013154948085695,-6.747509165125449e-22,-0.219054658831915,0.0048810850331918
21-
-0.5,0.0130434329203279,-5.379102331177564e-22,-0.1649619491663683,0.004788142192688
22-
0.0,0.0130008420919056,-4.090863048783536e-22,-0.1105248861641936,0.0046700136818125
23-
0.5,0.0130084720389809,-2.8680744793175213e-22,-0.0553123307395135,0.0044698279268781
24-
1.0,0.0130294722244102,-1.6963327644127745e-22,0.0004648326011776,0.0042125035054924
25-
1.5,0.013061008164498,-5.989149083839288e-23,0.0560041891189628,0.0039903875916971
26-
2.0,0.0131002453755492,4.009020844543824e-23,0.1105033240749248,0.0038958273595339
27-
2.5,0.0131856144242583,1.3202243421906704e-22,0.1645080620709747,0.0039708828537188
28-
3.0,0.0133528446868354,2.1941233713727904e-22,0.2188020358375745,0.0041687564292972
29-
3.5,0.0135950498938577,3.026270235375132e-22,0.2729395428286329,0.0044485087258047
30-
4.0,0.0139053437759025,3.820335997572082e-22,0.3264748804980587,0.0047692003827766
31-
4.5,0.0142768400635472,4.579991721338029e-22,0.3789623462997606,0.0050898920397485
32-
5.0,0.014702652487369,5.308908470047359e-22,0.4299562376876474,0.005369644336256
33-
5.5,0.0151758947779452,6.010757307074465e-22,0.4790108521156277,0.0055675179118344
34-
6.0,0.0156896806658533,6.6892092957937285e-22,0.5256804870376105,0.0056425734060194
35-
6.5,0.0163419408046433,7.3156512099210305e-22,0.5727462893873533,0.0056195012255208
36-
7.0,0.0172347131714976,7.87652640520907e-22,0.621930082521374,0.0055494832763917
37-
7.5,0.0183672724824413,8.3980908180874655e-22,0.6711971785277222,0.0054313174471822
38-
8.0,0.0197388934534996,8.906600384985838e-22,0.7185128894944469,0.0052638016264423
39-
8.5,0.0213488508006975,9.428311042333809e-22,0.7618425275095976,0.005045733702722
40-
9.0,0.0231964192400604,9.989478726560997e-22,0.7991514046612234,0.0047759115645714
41-
9.5,0.0252808734876132,1.0616359374097021e-21,0.8284048330373738,0.0044531331005404
42-
10.0,0.0276014882593813,1.133520892137151e-21,0.8475681247260978,0.0040761961991793
43-
10.5,0.0309750509211813,1.2264041564916665e-21,0.8593005363065593,0.0027629989121379
44-
11.0,0.0358184780617999,1.338964707337134e-21,0.8683373609449135,6.549186061715782e-05
45-
11.5,0.0415312382317165,1.4541444741325102e-21,0.8757579656096959,-0.0033664482125074
46-
12.0,0.0475127999814107,1.5548853863367533e-21,0.8826417172694425,-0.00688294456436
47-
12.5,0.0535718016380152,1.6355125000226549e-21,0.8901844683279677,-0.0103977924929974
48-
13.0,0.0601841135567709,1.707161865298813e-21,0.8977108722659604,-0.0143417322759933
49-
13.5,0.0677500523303184,1.7779919026778908e-21,0.9034934976672676,-0.0188403046397463
50-
14.0,0.0766699345512988,1.856161032672556e-21,0.9058049131157374,-0.0240190503106557
51-
14.5,0.0886600983806959,1.954578481220623e-21,0.8829547896813587,-0.0308720072112254
52-
15.0,0.1037898454535693,2.066176426506049e-21,0.8310805080016944,-0.0393733326507776
53-
15.5,0.1199889375736733,2.1691477174107125e-21,0.7751962010119524,-0.0481187464359375
54-
16.0,0.135187136544762,2.2416852028164918e-21,0.7403160016473408,-0.0557039683733306
55-
16.5,0.1490568222149959,2.2904946311980992e-21,0.7250755717384425,-0.0620365090305877
56-
17.0,0.1626441988491108,2.333059752262545e-21,0.7123987575512702,-0.0679085904012768
57-
17.5,0.1759397648757243,2.3637404167401576e-21,0.7037319686741754,-0.0732429994309288
58-
18.0,0.1889340187234538,2.376896475361265e-21,0.7005216146955101,-0.0779625230650747
59-
18.5,0.2016174588209165,2.366887778856196e-21,0.7042141052036259,-0.0819899482492452
60-
19.0,0.21398058359673,2.3280741779552778e-21,0.7162558497868752,-0.0852480619289713
61-
19.5,0.2260138914795117,2.2548155233888405e-21,0.738093258033609,-0.087659651049784
62-
20.0,0.237707880897879,2.1414716658872106e-21,0.7711727395321798,-0.0891475025572141
63-
20.5,0.2490530502804493,1.982402456180717e-21,0.816940703870939,-0.0896344033967926
64-
21.0,0.2600398980558399,1.7719677449996867e-21,0.8768435606382389,-0.0890431405140503
65-
21.5,0.2706589226526683,1.504527383074451e-21,0.9523277194224308,-0.0872965008545183
66-
22.0,0.280900622499552,1.174441221135335e-21,1.0448395898118663,-0.0843172713637273
67-
22.5,0.2907554960251083,7.760691099126683e-22,1.1558255813948983,-0.0800282389872084
68-
23.0,0.3002140416579548,3.0377090013677857e-22,1.2867321037598782,-0.0743521906704924
69-
23.5,0.3092667578267086,-2.480935574620052e-22,1.439005566495157,-0.0672119133591102
70-
24.0,0.3179041429599872,-8.851644121533548e-22,1.6140923791890878,-0.0585301939985927
71-
24.5,0.3261166954864083,-1.6130818132069429e-21,1.813438951430021,-0.048229819534471
1+
alpha,Cl,Cd
2+
-180.0,0.0,0.5
3+
-170.0,,0.5
4+
-160.0,0.5,
5+
-140.0,,0.5
6+
-90.0,0.0,1.0
7+
-20.0,0.08,0.2
8+
-10.0,0.125,
9+
-5.0,0.15,
10+
0.0,0.2,0.1
11+
20.0,1.0,0.2
12+
40.0,1.0,
13+
90.0,0.0,1.0
14+
140.0,,0.5
15+
160.0,-0.5,
16+
170.0,,0.5
17+
180.0,0.0,0.5

data/pyramid_model/polars/2.csv

Lines changed: 0 additions & 71 deletions
This file was deleted.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)