wing.add_section([0, 1, 0], [-1, 1, 0], "inviscid")
# arguments are: (leading edge position [x,y,z], trailing edge position [x,y,z], airfoil data)
# airfoil data can be:
# ['inviscid']
# ['lei_airfoil_breukels', [tube_diameter, chamber_height]]
Implementation Ideas
Option 1: through arrays
Compute the chord and non-dimensionalize the tube_diameter and chamber_height
Define the data_airff array, that contains cl,cd,cm coefficients for a specify alpha range over a specified number of steps, using the old functions LEI_airf_coeff.
Retrieve the 'right' cl,cd,cm values from this coefficient database at runtime using the airfoil_coeffs function, that parses the desired alpha
Option 2: Input through polynomial functions
Compute the chord and non-dimensionalize the tube_diameter and chamber_height
Define the constants that make up the cl,cd,cm polynomials as far as possible
At runtime call a function that takes as input the defined constants and the desired angle of attack (maybe through an update class function?) and uses the polynomial functions to calculate the corresponding cl,cd,cm values. Be wary to include the if statement for when angle_of_attack is < or > than 20deg.
Implementation Ideas
Option 1: through arrays
data_airff
array, that contains cl,cd,cm coefficients for a specify alpha range over a specified number of steps, using the old functionsLEI_airf_coeff
.airfoil_coeffs
function, that parses the desired alphaOption 2: Input through polynomial functions