[en] [fr] [ru]
LEPARAGLIDING 3.10
USER MANUAL
Program version 3.10 is the result of working intensively in
the source code of LEparagliding. There is a lot of invisible work in
subroutines and code improvements. Version 3.10 has an expanded data file structure with respect to the previous version 2.60. Sections 1 to 18 of version 2.60 are the same as those of version 3.10. But
new version has addicitonal sections numbered 19,20,21 ... up to 31. To
convert a file from version 2.60 to 3.10, just add the new sections at the end of the archive leparagliding.txt
Most of the data included in the new sections can be considered as "invariant parameters", sections 19,20,24,25,28,30,31. That is, they can be used as default values for any new model. The new parameters allow for greater control of the DXF results and add some new features. Extension of the DXF-2D plans to an array 4 rows x of 7 columns (28
plans). Plan 1-7 used for rods. New plan 4-7 includes general text
notes for constructor. New sections save
a lot of drawing work with CAD, and now the paraglider is almost
finished from the program. Section 31 allows skin tension with control
of up to 100 points and applicable individually to each panel.
Main features added in lep-3.10 over precedent version:
Data file leparagliding.txt:
Section 29. 3D-shaping active.
Section 20. Marks types, activated type8 which allows control of position and size of roman numerals
New plans added in file leparagliding.dxf:
Box (1,8) Intermediate and ovalized airfoils (*)
Box (-1,3) and (-1,5) extrados panels with 3D cuts
Box (0,3) and (0,5) intrados panels with 3D cuts
New graphics in lep-3d.dxf: intermetiade and ovalized airfoils are draw if desired.
New three informative sections added in lep-out.txt file:
Section 9. 3D internal calculus values, informative (**)
Section 10. The quotient between the lengths of the panel and ribs, for extrados and intrados.
Section 11. Counting of points in all profiles, informative
(*) Plan (1,8) shows median airfoils between rib i and i-1 and the
corresponding ovalized median airfoil, including marks of the points
j1,j2,j3,j4,j5,j6,j7 used in the defintion of the 3D-shaping.
(**) Section 9, with the length ot the arch of airfoil (d1) and the
arch of the ovalized airfoil (d2), the differences of longitude (d2-d1)
calculated automatically in each zone, and the amplitude value (f)
applied consistently to each cut using the values (d2-d1) of the
adjacent zones and the coefficient aof depth of the 3D effect.
According to theoretical study.
Next developments:
- Update and combine manual versions 2.60 & 3.10
- Translate manual (at least) to french and russian languages
-
DXF and STL surfaces, representing a model of the skin tensioned and
3D-shaped surface. Probably will be used to CFD analysis.
- Roman numbers, extend representation control
-
Integrate “3D” panel plans in boxes (-1,3),(0,3) and (-1,5) (0,5)
to classical panel locations (1,3) (2,3) and (1,5),(2,5)
-
Automatically panel colors division.
- DXF parts in blocs (?)
-
Use standard .dat files for airfoils?
- Add new vents types 4 and -4, type diagonal fully adjustable
The Graphical User Interface, It is also evolving, thanks a very big python programming developpment work done by Stefan from Switzerland.
But for now, you need to try to understand my drawings
and cryptic explanations, and write the parameters directly into the
text file!
The data structure of the new sections is described below, to be added below the 18th section.
6.
COMPOSITION OF THE INPUT DATA FILE leparagliding.txt
(version 3.10)
SECTION
19: DXF LAYERS NAMES
SECTION
20: MARKS TYPES
SECTION 21: JONCS DEFINITION (NYLON RODS)
SECTION 22: NOSE MYLARS DEFINITION
SECTION 23: TAB REINFORCEMENTS
SECTION 24: GENERAL 2D DXF OPTIONS
SECTION 25: GENERAL 3D DXF OPTIONS
SECTION 26: GLUE VENTS
SECTION 27: SPECIAL WINGTIP
SECTION 28: PARAMETERS FOR CALAGE SPEED AND TRIMER STUDY
SECTION 29: 3D SHAPING
SECTION 30: AIRFOIL THICKNESS MODIFICATION
SECTION 31: NEW SKIN TENSION
SECTION 32: ROMAN NUMBERS CONTROL
DOWNLOAD LEPARAGLIDING SOURCE CODE AND EXECUTABLE FILES
FIGURE
INDEX
SECTION
19: DXF LAYER NAMES
This section allows the user to choose some layers names in the DXF files. To facilitate the edition and modification of DXF files. In version 2.75 only the layers "points" "circles" and "triangles" are functional.
By lines, and regardless of the lines beginning with *
which are comments
or notes for help:
Line 1: integer
integer : max layers number, now is 10
Line 2: text1 text2
text1: general layer name (do not change this text)
text2: default layer name, to choose freely (with character and space restrictions)
Line 3: text1 text2
text1: line-external (do not change this text)
text2: layer name for external cuts, to choose freely (with character and space restrictions)
Line 4: text1 text2
text1: line-sewing (do not change this text)
text2: layer name for sewing lines, to choose freely (with character and space restrictions)
Line 4: text1 text2
text1: line-sewing (do not change this text)
text2: layer name for sewing lines, to choose freely (with character and space restrictions)
Line 5: text1 text2
text1: points (do not change this text)
text2: layer name for euclidean unidimensional points, to choose freely (with character and space restrictions)
Line 6: text1 text2
text1: circles (do not change this text)
text2: layer name for minicircle points, to choose freely (with character and space restrictions). Minicircles as alternative for points.
Line 7: text1 text2
text1: triangles (do not change this text)
text2: layer name for minitriangles, to choose freely (with character and space restrictions). Used is some special marks (tabs).
Line 8: text1 text2
text1: square (do not change this text)
text2: layer name for minisquares, to choose freely (with character and space restrictions). Used is some special marks.
Line 9: text1 text2
text1: text (do not change this text)
text2: text layer name, to choose freely (with character and space restrictions).
Line 10: text1 text2
text1: reference (do not change this text)
text2: reference layer name, to choose freely (with character and space restrictions).
Line 11: text1 text2
text1: notes (do not change this text)
text2: notes layer name, to choose freely (with character and space restrictions).
Example:
******************************************************
* 19. DXF layer names
******************************************************
10
general default
line-external cutexternal
line-sewing cutinternal
points points
circles circles
triangles triangle
square square
text text
reference refer
notes notes
SECTION 20: MARKS TYPES
This section allows the user to choose different types of marking elements in DXF files (one-dimensional points, minicircles, triangles, segments, ...). This is especially useful for laser cutting plotters, and the ability to adapt marking to manufacturer preferences. Remember that
leparagliding generates two types of plans, some for use with
conventional printer ("print" version), and others for professional use with computerized
cutting plotters ("laser" version).
By lines, and regardless of the lines beginning with *
which are comments
or notes for help:
Line 1: integer
integer : max number of different marks, now is 10
Line 2: text integer real real integer real real (OK)
text: typepoint is the point for general use
integer: 1=constructed point, 2=minicircle - print
real: radius of minicircle in mm - print
real: offset in mm - print
integer: 1=unidimensional, 2=minicircle - laser
real: radius of minicircle in mm - laser
real: offset in mm - laser
Line 3: text integer real real integer real real (still not used, set defaults)
text: typepoint2
integer: 1=unidimensional, 2=minicircle - print
real: radius of minicircle in mm - print
real: offset in mm - print
integer: 1=unidimensional, 2=minicircle - laser
real: radius of minicircle in mm - laser
real: offset in mm - laser
Line 4: text integer real real integer real real (still not used, set defaults)
text: typepoint3
integer: 1=unidimensional, 2=minicircle - print
real: radius of minicircle in mm - print
real: offset in mm - print
integer: 1=unidimensional, 2=minicircle - laser
real: radius of minicircle in mm - laser
real: offset in mm - laser
Line 5: text integer real real integer real real (OK)
text: typevent
integer: 1=two green points, 2=segment, 3=double segment - print
real: points separation or segment in mm - print
real: offset in mm - print
integer: 1=two green points, 2=segment, 3=double segment - laser
real: points separation or segment in mm - laser
real: offset in mm - laser
Line 6: text integer real real integer real real (OK)
text: typetab
integer: 1=tree orange points, 2=tree orange full control, 3=triangle - print
real: points separation or segment in mm - print
real: offset in mm - print
integer: 1=tree orange points, 2=tree orange full control, 3=triangle - laser
real: points separation or triangle height in mm - laser
real: offset in mm - laser
Line 7: text integer real real integer real real (still not used, set defaults)
text: typejonc
integer: 1=single point, 2=segment, 3=double segment - print
real: points separation or segment in mm - print
real: offset in mm - print
integer: 1=single point, 2=segment, 3=double segment - laser
real: points separation or segment in mm - laser
real: offset in mm - laser
Line 8: text integer real real integer real real (still not used, set defaults)
text: typeref
integer: 1,2,3 - print
real: dimesion in mm - print
real: offset in mm - print
integer: 1,2,3 - laser
real: dimension in mm - laser
real: offset in mm - laser
Line 9: text integer real real integer real real (OK)
text: type8 - romano numbering in panels generated using section 29
integer: 1 still
not used - print and laser
real: 0.2 spanning
from 0.0 to 1.0 means the position of the roman number (0.0 totally
to the left and 1.0 totally to the right, normal values 0.2 or 0.5 - print and laser
real: 4.0 means the
vertical offset in mm with respect to the baseline. May be
positive or negative number - print and laser
integer: 1 still
not used - print and laser
real: 0.0 still not used
real: 4.0 means the offset in mm between dots of the roman
numeral (global size of the roman numerals) - print and laser
Line 10: text integer real real integer real real (still not used, set defaults)
text: type9 (not defined yet)
integer: 1,2,3 - print
real: dimesion in mm - print
real: offset in mm - print
integer: 1,2,3 - laser
real: dimension in mm - laser
real: offset in mm - laser
Example:
******************************************************
* 20. Marks types
******************************************************
10
typepoint 1 2.5 1.2 2 0.2 1.2
typepoint2 1 2.5 1.2 2 0.2 1.2
typepoint3 1 2.5 1.2 2 0.2 1.2
typevent 1 0. 0.0 1 10. 2.0
typetab 1 0. 0.0 3 2.0 1.0
typejonc 1 0. 0.0 2 2.0 0.0
typeref 1 5. 1. 1 2.0 0.0
type8 1 0.20 4.0 1 0.0 4.0
type9 1 0.25 1.2 2 0.2 1.2
type10 1 0.25 1.2 2 0.2 1.2
Figure 1. Section 20 reference marks
SECTION 21: JONCS DEFINITION (NYLON RODS)
Section
now fully functional. Now it is possible to define type 1 rods, which
are the most used. A rod on the nose with small deflections at both
ends, which are completely controllable in position, transition, and
depth of deflection, with 8 parameters. The program calculates the rods
and shapes of the pockets, which are also fully controllable in widths,
with 4 parameters. It is possible to define different rods for each
cell, individually or by groups. If you don't need rods, leave the value to "0".
Line 1: integer
if integer = 0 rods are not considered
if integer = 1 add some others parametes to define and draw rods
Only if first integer is 1 (use joncs "type 1") then add:
Line 2: integer
integer: number of groups to define
Line 3: integer1 integer2 integer3
integer1: 1 (group number 1)
integer2: number of first rib in group 1
integer3: number of last rib in group 1
Line 5: real1 real2 real3 real4
real1: extrados init point deflection in % of chord
real2: extrados final point deflection in % of chord
real3: value of max deflection in intrados % of chord
real4: value n of exponent in curve of deflection type y=k·x^n (normaly use n=2.0, parabolic)
Line 6: real1 real2 real3 real4 real5
real1: line 1, offset (mm) defining the rod (see figure)
real2: line 2, external width of pocket (mm)
real3: line 3, width for rod between sewing lines (mm)
real4: line 4, internal width of pocket (mm)
Lines 7,8,9 repeat same definitions for the group 2, and so on until final group.
Note that it is possible to define as many groups as profiles have the wing, and thus define a different rod for each profile. But normally with a group or two it is sufficient for the whole wing.
Example 1: Do not use rods
*******************************************************
* 21. JONCS DEFINITION (NYLON RODS)
*******************************************************
0
Example 2: Joncs type "1". Use two groups from 1 to 15 ribs and from 16 to 19
*******************************************************
* 21. JONCS DEFINITION (NYLON RODS)
*******************************************************
1
2
1 1 15
5.5 10. 1.5 2.0
5. 11. 2.2 2.0
0.0 9.35 6.3 9.35
2 16 19
5. 9. 2.5 2.0
5. 12 3. 2.0
0.0 9.35 6.3 9.35
Figure 2. Section 21 joncs
SECTION 22: NOSE MYLARS DEFINITION
This section allows the user to draw nose mylars.
Line 1: integer
if integer = 0 mylars are not considered
if integer = 1 add some others parametes to define and draw mylars
Example 1:
*******************************************************
* 22. NOSE MYLARS DEFINITION
*******************************************************
0
Example 2:
*******************************************************
* 22. NOSE MYLARS DEFINITION
*******************************************************
1
1
1 1 22
2. 3.0 1.0 13.5 3. 1.
Figure 3. Section 22 nose mylars definition
SECTION 23: TAB REINFORCEMENTS
This section allows the user to draw tab reinforcements. Still not functional. Leave the value to "0".
Line 1: integer
if integer = 0 tab reinforcements are not considered
if integer = 1 add some others parametes to define and tab reinforcements
Example 1:
*******************************************************
* 23. TAB REINFORCEMENTS
*******************************************************
0
Example 2:
*******************************************************
* 23. TAB REINFORCEMENTS
*******************************************************
1
1
1 1 22
1 2 3 4
schemes
1 1 0 p1 p2 p3 p4 p5
2 3 0 p1 p2 p3 p4 p5
3 5 0 p1 p2 p3 p4 p5
3 2 1 p1 p2 p3 p4 p5
In
this data, one group of reinforcements applicable to ribs 1 to 22 is
defined. On the tabs A B C D, the "schemes" 1,2,3,4 respectively are
applied. The schemes are defined below the word "schemes":
- Scheme 1, using tab type 1 (circular sector), parameter "0" means use
units in % of chord, and 5 parameters to define the tab. In this case
only the radius r.
- Scheme 2, using tab type 2 (trapezoidal sector), parameter "0" means use units in
% of chord, and 5 parameters to define the tab. In this case r1-,r1+,r2-,r2+,h.
- Scheme 3, using tab type 5 (circular sector), parameter "0" means use units in
% of chord, and 5 parameters to define the tab. In this case only r-,r+,h,l. The shape of the triangle is calculated automatically taking into account the inclination of the line in space. The length "l" is discounted at the final length of the line.
-
Scheme 4, using tab type 2 (rectangular sector), parameter "1" means
use absolute units in cm, and 5 parameters to define the tab. In this
case only r-,r+,h.
Figure 4. Section 23 tab reinforcements
SECTION 24: GENERAL 2D DXF OPTIONS
This section allows the user to define some colorsin the 2D DXF plans.
Line 1: integer
if integer = 0 DXF options set by default
if integer = 1 add some others parameters for DXF
Only if first integer is 1 then add:
Line 2: text1 integer text2
tex1: A_lines_color (do not change this text)
integer: color number index for "A" lines
text2: color name (optional text not used)
Line 3: text1 integer text2
tex1: B_lines_color (do not change this text)
integer: color number index for "B" lines
text2: color name (optional text not used)
Line 4: text1 integer text2
tex1: C_lines_color (do not change this text)
integer: color number index for "C" lines
text2: color name (optional text not used)
Line 5: text1 integer text2
tex1: D_lines_color (do not change this text)
integer: color number index for "D" lines
text2: color name (optional text not used)
Line 6: text1 integer text2
tex1: E_lines_color (do not change this text)
integer: color number index for "E" lines
text2: color name (optional text not used)
Line 7: text1 integer text2
tex1: F_lines_color (do not change this text)
integer: color number index for "F" brake lines
text2: color name (optional text not used)
Example:
*******************************************************
* 24. GENERAL 2D DXF OPTIONS
*******************************************************
1
A_lines_color 1 red
B_lines_color 30 orange
C_lines_color 3 green
D_lines_color 4 cyan
E_lines_color 6 magenta
F_lines_color 5 blue
Note: Remember usual color index numbers for CAD systems:
1= red, 2=yellow, 3=green, 4=cyan, 5=blue, 6=magenta 7=white 8=dark grey 9= grey,... up to 255 depending on your color palette. It is preferable not to use colors with more than two digits.
SECTION 25: GENERAL 3D DXF OPTIONS
This section allows the user to define some colors in the 3D DXF plans. Allows to draw unifilar not ovalized versions of the surfaces.
Line 1: integer
if integer = 0 DXF options set by default
if integer = 1 add some others parameters for the 3D DXF
Only if first integer is 1 then add:
Line 2: text1 integer text2
tex1: A_lines_color (do not change this text)
integer: color number index for "A" lines
text2: color name (optional text not used)
Line 3: text1 integer text2
tex1: B_lines_color (do not change this text)
integer: color number index for "B" lines
text2: color name (optional text not used)
Line 4: text1 integer text2
tex1: C_lines_color (do not change this text)
integer: color number index for "C" lines
text2: color name (optional text not used)
Line 5: text1 integer text2
tex1: D_lines_color (do not change this text)
integer: color number index for "D" lines
text2: color name (optional text not used)
Line 6: text1 integer text2
tex1: E_lines_color (do not change this text)
integer: color number index for "E" lines
text2: color name (optional text not used)
Line 7: text1 integer text2
tex1: F_lines_color (do not change this text)
integer: color number index for "F" brake lines
text2: color name (optional text not used)
Line 8: text1 integer integer text2
tex1: Extrados (do not change this text)
integer: if set to "0" unifiilar extrados is not drawn, if set to "1" is drawn
integer: color index for the extrados
text 2: optional text with the color name
Line 9: text1 integer integer text2
tex1: Vents (do not change this text)
integer: if set to "0" unifiilar vents is not drawn, if set to "1" is drawn
integer: color index for the vents
text 2: optional text with the color name
Line 10: text1 integer integer text2
tex1: Intrados (do not change this text)
integer: if set to "0" unifiilar intrados is not drawn, if set to "1" is drawn
integer: color index for the intrados
text 2: optional text with the color name
Example:
*******************************************************
* 25. GENERAL 3D DXF OPTIONS
*******************************************************
1
A_lines_color 1 red
B_lines_color 8 grey
C_lines_color 8 grey
D_lines_color 8 grey
E_lines_color 8 grey
F_lines_color 30 orange
Extrados 1 5 blue
Vents 0 1 red
Intrados 1 3 green
SECTION 26. GLUE VENTS
This section allows to automatically "glue" the air inlets (vents) into the panel of extrados, intrados, or to separate them.
The vents include sewing edges. The skin tension i the vent is linear
and automatically corresponds to that defined at the points
correspondingin extrados and intrados.
The vent definition is very easy and intuitive. You have to make a list of two columns. In the first column, the profile number is indicated, and in the second column the corresponding parameter:
1 means glue the vent to the extrados (normally used in paragliders single skin type)
0 means do not glue anywhere (open air inlet). It is drawn apart to define with CAD special air intakes (circles, ellipses, ...)
-1 means glue the vent to the intrados (usually means, closed cell)
-2 means diagonal vent 100% open ant left, glued to intrados
-3 means diagonal vent 100% open alt right, glued to intrados
Line 1: integer
if integer = 0 then end the section and use old vents style (not recommended)
if integer = 1 add some others parameters for precise vents control
Only if first integer is 1 then add N lines, one for each airfoil number i:
Line i: integer1 integer2
integer1: airfoil number (cell between airfoil i and airfoil i-1)
integer2: vent parameter (available parameters 1, 0, -1,-2,-3 as explained above)
Examples 1 (use old style):
*******************************************************
* 26. GLUE VENTS
*******************************************************
0
Examples 2 (full vent control):
*******************************************************
* 26. GLUE VENTS
*******************************************************
1
1 0
2 0
3 1
4 -2
5 -3
...
20 -2
21 -1
22 -1
23 -1
Figure 5. Glue vents
Functional vents in version 3.02:
0 (=open, but print apart for design special vents)
1 (=closed and "glued" to upper surface)
-1 (=closed and "glued" to lower surface)
-2 (=diagonal vent open at left and "glued" to lower surface)
-3 (=diagonal vent open at right and "glued" to lower surface)
Figure 5+: Vents types (version >= 3.02)
SECTION 27 SPECIAL WINGTIPS
It is used for defining wingtips with special shapes:
Figure 6. Special wingtip
Line 1: integer
if integer = 0 do not add wingtip modifications(set by default)
if integer = 1 add some wingtip modifications
Only if first integer is 1 then add:
Line 2: text real
text: AngleLE (do not change this text)
real: angle in degrees between the horizontal and the leading edge in the last cell
Line 3: text real
text: AngleTE (do not change this text)
real: angle in degrees between the horizontal and the trailing edge in the last cell
Example 1:
*******************************************************
* 27. SPECIAL WING TIP
*******************************************************
1
AngleLE 45
AngleTE -7.78
"1" refers to define "type 1" wing tip modifications. It is planned to define several modifications. Type 1 is the simplest.
"AngleLE" is a
name not computed. It serves to remember that next we have to write the
new angle in degrees between the horizontal and the leading edge in the
last cell. It is usual to force the angle of the last cell, and this
section allows it to be done without modifying the geometry matrix. Set
45ŗ for example. "AngleTE" is a name not computed for the trailing edge. Set the angle as desired, -7.78ŗ for example.
Example 2:
*******************************************************
* 27. SPECIAL WING TIP
*******************************************************
0
SECTION 28 PARAMETERS FOR CALAGE VARIATION
Study
the variations in the riser lengths and calage when applying speed
system or trim system. It is interesting to experiment with new calages
in prototypes or to define the speed or trim systems.
Figure 7a. Principles of the study of the calage variations.
We
study the variations in the riser lengths when applying
accelerator (speed system) pivoting in the last riser (most common case), which remains
with constant length. For
practical purposes we define a negative alpha angle of pitch increased in N1
spaces gradually, and then we compute the variations in the line lengths and calage. We do the same study, assuming a trim system that increases the picth angle in N2 spaces gradually. In this case, the most usual is to consider the constant length A riser and the other variables in length.
The program analyzes a total of 4 cases, depending on the pivot point and if it is reduction or increase in angle:
Figure 7b. Cases a,b,c,d reported in file lep-out.txt
In output file SECTION 7: lep-out.txt we see the tables
that relate in detail the variations of angle, with the calage
variations, and increments or decrements of length in each riser. It is
interesting to experiment with new calages in prototypes or to define
the speed or trim systems. Four cases:
a) Speed system pivot in last riser
b) Speed system pivot in first riser
c) Trimer system pivot in first riser
d) Trimer system pivot in last riser
Example lep-out.txt:
a) Speed system pivot in last riser:
-------------------------------------------
i
alpha
A
B C Calage
1
.00 .00
.00 .00 25.00
2 -1.00 -2.18 -1.29 .00 21.19
3 -2.00 -4.35 -2.59 .00 17.40
4 -3.00 -6.52 -3.88 .00 13.66
Column 2 > angle alpha in degrees
Column 3 > Decrease of length A riser (amount of accelerator) in cm
Column 4 > Decrease of length B riser in cm
Column 5 > Decrease of length C riser in cm = 0 (pivot in C riser)
Column 6 > New calage %
Write data in in SECTION 28 with one or four lines:
Line 1: integer
if integer = 0 do nothing
if integer = 1 do calage study "type 1"
Only if first integer is 1 then add:
Line 2: integer
integer: number of risers to be considered (2,3,4,5 or 6)
Line 3: real1 real2 real3 real4 real5 real6
real1: % of central chord for riser A (is not necessary to match anchor position)
...
real6: % of central chord for riser E (is not necessary to match anchor position)
Line 4: real1 integer1 real2 integer2
real1: max angle (negative) in degrees set by the speed system
integer1: number of steps in angle for study purpose
real2: max angle (positive) in degrees set by the trim system
integer2: number of steps in angle for study purpose
Example:
*******************************************************
* 28. PARAMETERS FOR CALAGE VARIATION
*******************************************************
1
3
10. 30.35 60 0 0 0
-4 4 5 10
*******************************************************
Explanation:
Set to calage type "1" (first line), only type "1" available
"3" risers to be considered
A=10.% B=30.35% C=60% D= E= F= (set % to be considered)
Speed angle set to -4ŗ and compute in 4 steps
Trim angle set to 5ŗ and compute in 10 steps
Figure 7c. New graphic in plan 2-1 (.dxf output)
SECTION 29 3D SHAPING
The
model of 3-Shaping proposed by the Laboratori, consists in making one
or two transverse cuts in the upper surface, near the leading edge, and
another optional cut on the bottom surface. We will call this model as
"type 1". The edges of the transverse cuts will be modified from the
straight line into an arc of a circle. In this way, we can "add fabric"
lengthwise and we can control the ovalization and the tension in this
direction. Ovalization in transverse direction is achieved via the
module of skin tension (SECTIONS 5 or 31). In summary, we can control the amount of tissue
and tension in transverse and in longitudinal direction near the nose,
where the curvatures are greatest.
To set the parameters of the 3D-shaping in the model "type 1" is
necessary to study the profile in detail, viewing and counting the
individual points that form it, Laboratori style! :-) You need to view
your profile in CAD (or in the .txt file), identify and count points. Remember that the points in a profile is counted
starting in the trailing edge (point 1), continuing by the upper
surface, nose, vents, lower surface, and ending again in the trailing
edge. Exactly as described previously.
We could define another model "type 2" where the position of the cut
points are defined in % of the length of the panel, but in this model
1, is considered to specify exactly the points considered.
For each cut, it is necessary to define a "zone of influence". In the
zones of influence is measured the length of a section of the profile
and is compared with the corresponding length in the ovalized profile.
This question is fundamental to understand the 3D-shaping type 1. It is
necessary to view the figure below:
Figure 8. Cuts and zones of
influence. J1,j2,j3,j4,j5,j6,j7 indicate numeric values of the selected
points in the profile, starting to count from the trailing edge. J4 and
j5 are the vent points.
For the purposes of notation, we will call the different parts in which we divide the profile as:
zone 1 (between j1 and j2), extrados part 1
zone 2 (between j2 and j3), extrados part 2
zone 3 (between j3 and j4), extrados part 3 or nose
zone 4 (between j4 and j5), or vents
zone 5 (between j5 and j6), intrados part 1
zone 6 (between j6 and j7), intrados part 2
In each zone 1,2,3,4,5,6 the program computes the length ot the arch of
airfoil (d1) and the arch of the ovalized airfoil (d2). The differences
of longitude (d2-d1) are calculated automatically in each
zone,
and then applied consistently to each cut with a value (f) obtained
using the values (d2-d1) of the adjacent zones. Is provided a setting
parameter around 1.0, which serves the designer to regulate the depth
of the 3D-shaping in each cut, in relation to the automatic
calculation. Thus, using the coefficient of 1.0, the depth of 3D is
according to the theory exposed. Using a coefficient of 0.0 does not
apply the 3D effect, and using values higher or lower than 1.0
increases or
decreases the effect. The control of the depth of 3D-shaping is
continuous and individual for each cut. A more detailed description,
and the formulas used in the calculation are described in this technical note
about 3D-shaping. For each rib, a full report of the values d1, d2,
d2-d1, computed in each zone, and the final values f aplied in each cut
are printed in tabular form in section 9 of the file lep-out.txt.
Also,
for verification purposes, a new section 10 is written to the
lep-out.txt file with the counting of the points of each profile, to
verify that they are all the same for all profiles, and that they are
compatible with the defined cuts.
It should be noted, that the parameters applied in this section, will
be usually "invariant values" applied to the majority of the designs.
We just have to think about all this, a single time for each type of
profile. And the Laboratory will provide soon the recommended values in next designs. Of
course, finding the good parameters is a real art. The program
LEparagliding now provides the tools to make numerical and graphical
experiments (lep-out.txt section 9 and leparagliding.txt plan in box 1-8).
Explanation of the parameters in SECTION 29:
Line 1: integer
if integer = 0 then no not use 3D-shaping, and finish writing the section.
if integer = 1 then use 3D-shaping, and continue writing:
Line 2: integer
integer = type of 3D-shaping theory used, now we use only model "type 1" using transverse cuts, set parameter to 1.
Line 3: character integer
character = groups
integer1 = number of groups used
Line 4: character integer1 integer2 integer3
character = group
integer1 = number of the group
integer2 = initial rib in group
integer3 = final rib in group
Line 5: character integer1 integer2
character = upper , word meaning upper surface (extrados)
integer1 = number of cuts in upper surface (possible values 1 or 2).
integer2 = subtype of cuts, set to 1, only value accepted
Line 6: integer1 integer2 real
integer1 = initial point in the first zone of influence (j1)
integer2 = point where the first cut is set (j2)
real = "depth" of 3D-shaping in the cut, possible values 0.0, 0.1,....,1.0,1.2,... (multiplier coefficient arount 1.0)
Line 7: integer1 integer2 real (only if we use two extrados cuts)
integer1 = initial point in the second zone of influence (j2)
integer2 = point where the second cut is set (j3)
real = "depth" of 3D-shaping in the cut, possible values 0.0, 0.1,....,1.0,1.2,... (multiplier coefficient arount 1.0)
Line 8: character integer1 integer2
character = lower , word meaning lower surface (intrados)
integer1 = number of cuts in lower surface (possible values 0 or 1).
integer2 = subtype of cuts, set to 1, only value accepted
If the number of cuts in intrados is 0, stop writing, else
Line 9: integer1 integer2 real (only if we use two extrados cuts)
integer1 = point where the intrados cut is set (j6)
integer2 = final point in the intrados zone of influence (j7)
real = "depth" of 3D-shaping in the cut, possible values 0.0, 0.1,....,1.0,1.2,... (multiplier coefficient arount 1.0)
(...Repeat lines 5,6,7,8,9 for next groups...)
Line 10: character
character = "* print parameters:" (comment line, it is mandatory to write something)
Line 11: character integer1 integer2 integer3 integer4
character = Inter3D, word to indicate representation of the intermediate airfoils in 3D lep-3d.dxf
integer1 = 0 indicates do not draw, and 1 draw
integer2 = index of first airfoil to draw
integer3 = index of last airfoil to draw
integer4 = 0 it indicates to draw with symmetry, 1 only one side
Line 12: character integer1 integer2 integer3 integer4
character = Ovali3D, word to indicate representation of the intermediate ovalized airfoils in 3D lep-3d.dxf
integer1 = 0 indicates do not draw, and 1 draw
integer2 = index of first airfoil to draw
integer3 = index of last airfoil to draw
integer4 = 0 it indicates to draw with symmetry, 1 only one side
Line 13: character integer1 integer2 integer3 integer4
character = tesse3D, word to indicate representation of panel tessellation in 3D lep-3d.dxf
integer1 = 0 indicates do not draw, and 1 draw
integer2 = index of first panel to draw
integer3 = index of last panel to draw
integer4 = 0 it indicates to draw with symmetry, 1 only one side
Line 14: character integer1 integer2 integer3 integer4
character =
exteDXF, word to indicate representation of panels tessellation in 3D
in a new external DXF file (possible use in CFD analysis)
integer1 = 0 indicates do not draw, and 1 draw
integer2 = index of first panel to draw
integer3 = index of last panel to draw
integer4 = 0 it indicates to draw with symmetry, 1 only one side
Line 15: character integer1 integer2 integer3 integer4
character =
exteSTL, word to indicate representation of panels tessellation in 3D
in a new external STL file (used with programs of 3D modelling as OpenSCAD gold FreeCAD)
integer1 = 0 indicates do not draw, and 1 draw
integer2 = index of first panel to draw
integer3 = index of last panel to draw
integer4 = 0 it indicates to draw with symmetry, 1 only one side
Lines
12, 13, 14, 15 are mandatory to write, but the actions are not
yet functional. We are working on the programming. These parameters
will generate independent dxf files
with the ovalized surfaces, and even a .stl model to view with FreeCAD
or OpenSCAD, or even analyze with CFD programs.
All this may seem complicated, but it is much easier to understand section structure watching a few examples:
Example 1: Do not use 3D-shaping. Set one line with "0" parameter. It
is the simplest solution to avoid the complicated 3D-shaping module! :)
*******************************************************
* 29. 3D SHAPING
*******************************************************
0
Example 2: Active 3D-shaping module
but without any cut. The utility of defining this, is that the
representation of plan 1-8 is activated automatically, with the
drawing of the intermediate and ovalized airfoils in 2D. You can also
activate the 3D representations in 3D, changing the settings "0" to "1"
in the "Print parameters" subsection. In general, preferable to use
example 2, that use the example 1 (the two are invariant sections).
************************************************************
* 29. 3D SHAPING
*******************************************************
1
1
groups 1
group 1 1 1
upper 0 1
lower 0 1
* Print parameters
Inter3D 0 1 1 0
Ovali3D 0 1 1 0
tesse3D 0 1 1 0
exteDXF 0 1 1 0
exteSTL 0 1 1 0
Example 3. Easy case, only one group and one cut in extrados.
First group from rib 1 to 14 using one cuts type 1 in upper surface and zero in lower surface.
Zone of influence of first cut started in point 30 and cut located in point 40, depth of the effect 0.8.
Zero cuts in lower surface, type 1.
Prints 3D intermediate (Inter3D) and ovalized (Ovali3D) airfoils at the left of rins 1 to 14
*******************************************************
* 29. 3D SHAPING
*******************************************************
1
1
groups 1
group 1 1 14
upper 1 1
1 30 40 0.8
lower 0 1
* Print parameters
Inter3D 1 1 14 0
Ovali3D 1 1 14 0
tesse3D 0 1 1 0
exteDXF 0 1 1 0
exteSTL 0 1 1 0
Example 4: General case, using two groups.
First group from rib 1 to 10 using two cuts in upper surface and one in lower surface.
Zone of influence of first cut started in point 25 and cut located in point 33, depth of the effect 0.8.
Zone of influence of the second cut in point 33 and cut located in point 44, depth of the effect 0.9.
Cut in lower surface in point 79 and zone of influence up to point 84, depth of effect 1.0.
Second group from rib 11 to 14 using two cuts in upper surface and one in lower surface.
Zone of influence of first cut started in point 25 and cut located in point 33, depth of the effect 0.9.
Zone of influence of the second cut in point 33 and cut located in point 44, depth of the effect 0.9.
Cut in lower surface in point 79 and zone of influence up to point 83, depth of effect 1.0.
*******************************************************
* 29. 3D SHAPING
*******************************************************
1
1
groups 2
group 1 1 10
upper 2 1
1 25 33 0.8
2 33 44 0.9
lower 1 1
1 79 84 1.0
group 2 11 14
upper 2 1
1 25 33 0.9
2 33 44 0.9
lower 1 1
1 79 83 1.0
* Print parameters
Inter3D 1 1 14 0
Ovali3D 1 1 14 0
tesse3D 0 1 1 0
exteDXF 0 1 1 0
exteSTL 0 1 1 0
The
location of the cut points depends mainly on the study of the shape of
the profile. It is interesting to concentrate the cuts where the
difference in lengths between segments located in the intermediate
profile and the ovalized (balloned) profile are larger. As a first
approximation, can be studied to place the cuts in the 5.5% and 13.5%
of the profile chord, counting from the leading edge. It is also
important to choose correctly the coefficient of depth. Theoretically
1.0 is the best, but to smooth out the surfaces, you can choose a
smaller coefficient.
As Piet suggests from the Netherlands, the
3D module can also be used as a simple alternative to separate colored
panels in the noses area, or panels with more durable fabric. Remember
that the 3D effect is adjustable in depth, and you can even use the
parameter amplification 0.0 so that the cut between the parts of the
panels is completely straight line. The subroutines developed in this
section will be adapted to complete the separation in parts of colors.
The programming of this 3D-shaping module has been made possible thanks to the support of Scott Roberts from USA (Fluid Wings https://www.fluidwings.com/ ).
SECTION 30: AIRFOIL THICKNESS MODIFICATION
Coefficients of amplification or reduction of the thickness of the cells. Normally define as "1.0", or "0.0" in the wingtip.
Line 1: integer
if integer = 0 then no airfoil amplification set
if integer = 1 then add:
Lines 1,2,3,...,maxrib: integer real
Integer: set rib number (1,2,3...) in all ribs
real: set amplification coefficient, for example 1.0 as default
Example:
*******************************************************
* 30. AIRFOIL THICKNESS MODIFICATION
*******************************************************
1
1 1.2
2 1.1
3 1.0
4 1.0
5 1.0
6 1.0
7 1.0
8 1.0
9 1.0
(...)
23 0.0
SECTION 31: NEW SKIN TENSION
The
correct definition of the skin tension is essential for
the internal solidity and the flight quality of the apparatus.
For this reason, it is recommended that the designer have total control
over the skin tension, with a very precise form (law of increments of width), and allowing changes in
different panels along the span. This is what allows the new module.
The
module new skin tension, functional from version 3.00, defines the
additional widths of panels, to achieve the desired ovalitzation. The
values applied to the extrados and intrados, for compatibility are the
same as those explained in SECTION 5 (read again and notice the scheme 20181230), but there is a greater control. The number of points to define the
widths is not limited to 6, now can be up to 100 points
(!) (to choose
freely). And it is possible to choose different widths for each one of
the ribs, if it is considered necessary, (defining different "groups"
of widths). Of course, the number of groups can be equal to the number
of ribs, and thereby define the widths of each panel individually (for
example, different tension in the panels of the center panels and in
the wingtip.
The basic idea is to calculate increments of width to the left and to the right of each rib.
Thus, a panel can have a 2% increase maximum in the left border and a
3% maximum to the right border. Negative values of increase are also
acceptable, although I recommend not to use to simplify.
It is very recommended to use always the same number of points among different groups, because the current programming can generate undesiderd distortions (to be corrected soon).
The system allows to define in detail the tension in the extrados and
intrados surfaces, but in the air inlets (vents)? The program automatically adds a linear transition in the vents area
between extrados and intrados.
The "mysterious" two correction parameters of the last two lines of
section 5 continue to have application. Normally no need to modify ever. I recommend use always:
1000 1.0
There are different ways of defining the skin tension. In the current
version it is only active the version of "type 1", which consists of a
linear interpolation and a width of reference for applying the
law of increments of width, equal to the average width of each panel. Given
the large amount of points available to interpolate (100) is not
strictly necessary, a version with splines "type 2", to propose later.
Usually with 10 or 15 points, linear interpolation is sufficient (old version uses only 6).
Another proposal to consider is a version of linear interpolation "type
3" where the law of increments of width is not in reference to the mean
width of the panel, but the width existing at each point between two
adjacent profiles adjacent (possibly this is the solution that is most
perfect).
To clarify and better explain all these fundamental issues, soon I'll be posting an article with diagrams.
Explanation of the parameters in section 31:
Line 1: integer
if integer = 0 then no not use new skin tension module, and finish writting the section.
if integer = 1 then use new skin tension module, and continue writting:
Line 2: integer
integer = number of skin tension grups (max= number of ribs)
Line 3: character
character = comment line explaining the group "i" from rib n1 to rib n2, using X points, and type "1".
(for now, only type "1" is possible, and means it uses linear
interpolation between points. Add more points to smooth out, if
necessary.)
Line 4: integer1 integer2 integer3 integer4 integer5
integer1 = group number
integer2 = initial rib
integer3 = final rib
integer4 = points for interpolation
integer5 = 1 , type linear of interpolation
Lines 5 to 5-1+ npoints of interpolation: integer real1 real2 real3 real4
integer = point of interpolation in consucutive order
real1 = Distance in % of length of the extrados panel starting in the leading edge
real2 = Additional width in % of the extrados panel
real3 = Distance in % of length of the intrados panel starting in the trailing edge
real4 = Additional width in % of the intrados panel
(Same geometric definition as in SECTION 5.)
In the following lines. Continue describing groups starting with the line of comments.
Examples:
Example 1 (do not use new skin tension module):
*******************************************************
* 31. NEW SKIN TENSION MODULE
*******************************************************
0
Example 2:
*******************************************************
* 31. NEW SKIN TENSION MODULE
*******************************************************
1
3
* Skin tension group number "1" from rib 1 to 10, 7 points, type "1"
1 1 10 7 1
1 0.
0.5 0.
0.
2 7.5
1.3 10.
1.33
3 15.
2.5 20. 2.5
4 80.
2.5 80. 2.5
5 90.
1.33 90. 1.33
6 95. 0.65 95. 0.9
7 100. 0.0 100. 0.5
* Skin tension group number "2" from rib 11 to 19, 7 points, type "1"
1 11 19 7 1
1 0.
0.5 0.
0.
2 7.5
1.3 10.
1.33
3 15.
2.5 20. 2.5
4 80.
2.5 80. 2.5
5 90.
1.33 90. 1.33
6 95. 0.65 95. 0.9
7 100. 0.0 100. 0.5
* Skin tension group number "3" from rib 20 to 23, 7 points, type "1"
1 20 23 7 1
1 0.
0.5 0.
0.
2 7.5
1.3 10.
1.33
3 15.
2.5 20.
2.5
4 80.
2.5 80.
2.5
5 90.
1.33 90.
1.33
6 95.
0.65 95.
0.9
7 100. -0.5 100. 0.5
********************************************************
Data file 2.96 version examples: gnuA+, gnuLAB4, BHL4, BHL5 paragliders (works also in 3.10).
DOWNLOAD LEPARAGLIDING SOURCE CODE AND EXECUTABLE FILES
Download the source code and executable files for your system:
README.txt Notes about new versions
FAQ leparagliding.
Informative notes about cygwin .dll's libraries used in Windows versions
informative notes about source code compilation optional.
Current version of LEparagliding is 3.10 "Pirineus"
And pre-processor is 1.5 "Baldiri"
Pere Casellas
pere at
laboratoridenvol dot com
Teią-Barcelona, Catalonia
May 3, 2020
index