I'll tell you my design idea, if I understand the first problem we will tackle correctly
We have a wing. And this wing has airfoil shape definitions (the transversal sections). One or more at different locations within 0 (the root==Required) and 1 (the tip)
[ie we could use additional specifications like lets say, introduce one airfoil shape at 0.3, so it knows where to define the airfoil shape (30% from the root towards the tip]. And we could add as many as wanted.
The task of the program is to take these shape definitions in, then output segments desired, assuming lineal extrapolates of the forms through any specified segment. We could say, do something like
Code: Select all
airfoil.segment(0,0.25,0.5,0.75,1);
Such that the output of the segment function will then create the extrapolates at every quarter of the wing length.
I think that is doable.
Your concern of different points on the wing airfoil spec is valid. This is how I would propose to solve it
- Redefine airfoils by splitting the airfoil data on upper and lower boundaries of the shapes. Such that each of these frontiers is a riemann integrable function
- Using a spline function to smooth the data introduced on each lower and upper (which should be doable as (1) above is true
- Define a series of common points across (0->1), and using the spline determine the location on the airfoil boundaries
- for each cartesian obtained above, assuming lineal decay, determine the location of the point on the following requested segment using the following defined airfoil. (if not defined) then assume it's the same as current
- output all boundaries determined