le

[en] [fr]
[ru]

LEPARAGLIDING 2.80
USER MANUAL

lep-2.80


Program version 2.80 has an expanded data fiile structure with respect to the previous version 2.60. Sections 1 to 18 of version 2.60 are the same as those of version 2.80. But version 2.80 has new sections numbered 19,20,21 ... up to 31. To convert a fiile from version 2.60 to 2.87, 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. 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. Version 2.80 can be considered "unstable" (the program, not the wing!), and will be improved soon.

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 (since version 2.71)

    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
 
FIGURE INDEX

Figure 1: Mark types
Figure 2: Joncs definition
Figure 3: Mylar definition
Figure 4: Tabs definition
Figure 5: Glue vents
Figure 6: Special wingtips
Figure 7a,7b,7c: Calage variation principe, calage variation cases, calage graphic
Figure 8: 3D shaping

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  (still not used, set defaults)
text: 
type8 (not dedined 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

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.25  1.2     2  0.2  1.2
type9       1  0.25  1.2     2  0.2  1.2
type10      1  0.25  1.2     2  0.2  1.2

Section 20
Figure 1. Section 20 reference

SECTION 21: JONCS DEFINITION (NYLON RODS)

This section allows the user to draw different nylon rod. Still not functional. 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

Example:
*******************************************************
*       21. JONCS DEFINITION (NYLON RODS)
*******************************************************
0

SECTION 22: NOSE MYLARS DEFINITION

This section allows the user to draw nose mylars. Still not functional. Leave the value to "0".

Line 1: integer
if integer = 0 mylars are not considered
if integer = 1 add some others parametes to define and draw mylars

Example:
*******************************************************
*       22. NOSE MYLARS DEFINITION
*******************************************************
0

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:
*******************************************************
*       23. TAB REINFORCEMENTS
*******************************************************
0

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

Still not implemented. Add this at the end of the fiile:

*******************************************************
*       26. GLUE VENTS
*******************************************************
0

And here's how the section will work, when fully functional. Activate the section with parameter "1"
and then by rows indicate how to "glue" the vents of each cell.
1    1    >  glue  vent  number 1 to  extrados
2    0    >  open vent number 2
3   -1   >  glue vent to intrados (single skin use)
 ...
N   1   >  glue last vent to extrados
Section 26
Figure 5. Glue vents

SECTION 27 SPECIAL WINGTIPS

It is used for defining wingtips with special shapes:
Section 27
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.
s28a
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:
s28b
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

s28c
Figure 7c. New graphic in plan 2-1 (.dxf output)


SECTION 29 3D SHAPING

Still not functional. Set one line with "0" parameter:

*******************************************************
*       29. 3D SHAPING
*******************************************************
0

Currently programming a 3D model that allows inserting N cuts according to the principles set forth in the figure below:
3D shaping
Figure 8. 3D shaping

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
I
nteger: 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

(still not implemented, but method is already thought. Interpolation of the widths through splines, with a cubic polynomial. Individualized control of the skin tension in each panel)

Example:
*******************************************************
*       31. NEW SKIN TENSION MODULE
*******************************************************
1
3
* Skin tension group number "1" from rib 1 to 4, 6 points, type "1"
1    1    4    6    1
1    0.         0.0      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   100.        0.0    100.        0.
* Skin tension group number "2" from rib 5 to 22, 6 points, type "1"
2    5    22    6    1
1    0.         0.0     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   100.        0.0    100.        0.
* Skin tension group number "3" from rib 22 to 23, 8 points, type "1"
3    22    23    8    1
1    0.         0.0     0.        0.
2    7.5        1.3    10.        1.33
3    15.        2.5    20.        2.5
4    50.        2.5    60.        2.5
5    65.        2.5    70.        2.5
6    75.        2.0    80.        1.9
7    90.        1.0    90         1.0
8   100.       -1.0    100.      -1.0
********************************************************

Data file example in 2.75 version: leparagliding.txt used in gnuLAB4 paraglider.

Source code
Linux version
Windows version (1)
MAC version (2)
Source code 2.75 Fortran
lep-2.75-lin

lep-2.75-w10-64b
tested in Windows10
and Windows7 64bit
lep-2.75-mac
Source code 2.75 in C
(translated by f2c)

lep-2.75-win-32b
tested in Windows XP and 7 32bit

Source code 2.77 Fortran
Data file example leparagliding.txt
gnuPSF.txt gnuPSFtube.txt
lep-2.77
lep-2.77-win32b
lep-2.77-win64b
Compile

 lep-2.78


Readme.txt lep-2.80 include  GNU19-evo-v3 example.
(update in source code to lep-2.81 20181202)

compilation soon

(1) f you want to use the executable file lep-2.7X.exe on a computer, without the Cygwin console installed, then it is mandatory to use the appropiate cygwin1.dll file in the same lep directory. Select your cygwin1.dll (test all if necessary) in https://yadi.sk/d/Clzq4v9D3Y8qwJ Copy .dll in the "lep" folder.
I have used succefull in 32bit only cygwin1.dll version 20160124 (2004.1.0.0) and 20180202-win732b (2010.0.0 NO 64b)
(2)
I need volunteers who want to compile the source code in MAC
(3)
There is an error in version 2.75 when drawing the control points of type 5 ribs. Already fixed in version 2.77
(4) Default section in version > 2.77 is different from 2.75 (!), put default values as:
*******************************************************
*       28. PARAMETERS FOR CALAGE VARIATION (version 2.75)
*******************************************************
1
calage    15     45    5
speed     14     10    1

*******************************************************
*       28. PARAMETERS FOR CALAGE VARIATION (version > 2.77)
*******************************************************
1
3
10. 30.35  60  0  0  0
-4 4 4 4


Notes about leparagliding.f compilation
README.txt
FAQ leparagliding.

Current version of LEparagliding is 2.80 "Baldiri"
And pre-processor is 1.4 "Escaules"

Pere Casellas
pere at laboratoridenvol dot com
TeiÓ, Barcelona, 12 october 2018

index