Wind Helix Gongsche Algorithm detailed
2017-12-29
Liu Chongjun Wind Helix
Long time no see, How is everything? In the last period of 2017, I made a new C #, hoping to realize the verification and popularization of wind helix algorithm from software code level. The basemap of this topic that we share today is the result of recent learning: a very simple drawing framework based on the WPF architecture, and an implementation of the automatic drawing of the wind helix. Gossip, start today's theme.
On the basis of mastering the calculation of wind helix tangent, we can begin to study the Gongsche algorithm. The calculation of Gongsche is a key element in the flight program template, so it is necessary to review the Gongsche algorithm in detail before starting the template algorithm sharing.
The wind helix Gongsche calculation is first based on the following 4 basic settings:
1. in the same program module, the turn basic parameters are the same. whether the program turns or waits for a template, the turn parameters are the same in the same ICAO standard template, that is, the turn radius is the same.
2. the tangent of the wind helix is perpendicular to the esita direction. It is a basic condition of Gongsche to prove this content from the principle and mathematics software.
3. The angle between the esita direction and the corresponding reference circle radius is constant equal to bias current angle da. the da= arcsin (w/v) of this content is clearly marked in the layout of the ICAO DOC8168.
4. the size of the Esita and the Sita angle can be converted to each other. The distance can be converted into a rotation angle, whereas the rotation angle can be converted to the corresponding distance. This is a basic concept that has been mentioned many times in this public number. The wind helix is an imaginary aircraft flight trajectory, when the overall rotation of the trajectory, its expansion of the law in accordance with the esita direction of the outside expansion of the characteristics of the external expansion of the size and rotation of the angle has a direct conversion relationship.
In addition to the above 4 basic settings, the Gongsche calculation uses the following identification according to personal preference to represent the parameters of the Wind Helix (1):
Figure 1 Wind Helix parameters
Rotation: From the zero point of the system to the angle of the wind helix starting point. the aerial map uses the magnetic north as the zero degree, and the most of the computer system starts with the horizontal right zero, and the clockwise angle increases to the default condition.
Offset: A quantity that represents the outer spread distance. for a wind helix, the expansion and rotation angles can be converted to each other, so the best solution is to set an initial system angle (rotation) and an initial external expansion distance (offset) for each wind helix.
Sita: Used to indicate the actual turning angle starting from the beginning of the wind helix. This angle can be used to calculate how much distance has been extended from the starting point, or to indicate a specific location point in the wind helix.
Esita: The outer extension distance corresponding to the SITA angle. the angle between the direction of the Esita and the extension of the corresponding radius is bias current angle da, and the angle of the wind helix tangent at the position is 90 degrees.
For a clearer representation of the calculation relationship, the key points in Figure 1 are numbered to get the contents of Figure 2:
Fig. 2 Angle relation of wind helix Gongsche
In Figure 2, two solid wind helix ws1 and WS2 are plotted, along with their corresponding non-expanding dashed wind spirals. The intersection of the dashed wind helix and the circumference is considered as the actual starting angle of the wind helix. Rotation and expansion can be converted to each other, so it is known that the real line between the wind helix and the dashed wind spiral is "equidistant parallel" relationship.
Since the Esita is perpendicular to the tangential phase of the wind helix (Base Set 2), if there is Gongsche between the two wind spirals, there must be two Esita and Gongsche respectively, 1 Esita1 and Esita2, and they are parallel relations.
Since the angle between two esita and radius radius is fixed to bias current angle da (base setting 3), it is known that the corresponding radius is a parallel relationship. Because the basic parameters of the two wind spirals are the same, the two radii are equal. So the ABCD in Figure 2 is a parallelogram. From D point to FC edge to do perpendicular, get perpendicular e point, know DEFG is a rectangle.
The Esita of the ws2 wind helix at the common tangent point can be divided into two parts, Esitaa and Esitab, the former is equal to the outer expansion distance in the WS1, the latter is caused by the difference of the initial conditions of the two wind helix. If the distance per Radian can be extended to edist, then the esitab can be expressed as Offset2-offset1 + (rotation1-rotation2) * edist, that is, the difference between the initial expansion distance, plus the difference between the initial angle of the extension of the distance, The Esitab is formed in Figure 2. The ESITAA in Figure 2 can be seen as the distance formed by the angle at which the two wind spirals are rotated together, because the efficiency of the expansion is the same, and the same outer expansion distance is obtained by the same external expansion angle. Rotation1-rotation2 This formula is a waste of more than two days before the final error correction, in the flash system before the problem, the graphics system in C # is a lot more complex. The rotation1-rotation2 represents the initial angular difference of the rotation2 as the reference angle.
The specific calculation steps are as follows:
1, place the wind helix, calculate the angle of the DC line.
When we place a wind helix on the screen, its center point position can be considered a known condition. Set two center point coordinates are C1 (x, y), C2 (x, y), then, the angle of line AB in the software system is: arctan ((C2.Y-C1.Y)/(c2.x-c1.x), here need to use the inverse tangent function, to obtain an angle value, called the baseline Angle, Use Baselineangle to indicate that the distance between the center point is expressed by distance. The DC line and the AB line are parallel and equal, so the baselineangle is the direction of the DC line.
2, calculate the angle of the DG Line.
In Figure 2, ⊿dce is a right triangle, and the value of ∠CDE is represented by angle, which equals arcsin (esitab/distance). In Figure 2, the counterclockwise angle is reduced, so the angle of the line DG can be expressed as: BASELINEANGLE–ANGLE-PI/2 (all angular values are expressed in radians), and the Gongsche direction is equal to Baselineangle–angle.
WS1 extension distance greater than ws2, The value of the angle angle is negative, the position relationship 3 < Span style= "font-family: Arial" >
Figure 3 case where the angle angle is negative
At this point, the value of ∠CDG can be expressed as PI/2 + angle (because angle is less than 0), the angle of the Segment DG can be expressed as Baselineangle-(PI/2 + angle), after simplification, the resulting formula is BASELINEANGLE–ANGLE-PI/2. The formula discussed earlier than zero angle is exactly the same, that is, regardless of the ws1 or ws2 outside the expansion distance who large, DG line angle can always be used BASELINEANGLE–ANGLE-PI/2 to express, Gongsche angle can be used baselineangle– Angle to say.
3, calculate the length of the DG Line.
To reverse the direction of the radius from the angle of the DG Line, use the formula: Baselineangle-angle-pi/2 + da (because the angle between the Esita and the radius is always equal to DA). After obtaining the circumferential radius direction, respectively and the respective rotation parameter subtraction, can obtain the wind helix true rotation angle, uses this angle of rotation sita conversion to the outward expansion distance, together with the initial outer expansion distance, can obtain the DG line length, the angle, the length all knew later, may obtain the accurate tangent point position. Connecting the coordinates of the two tangent points, the resulting segment is the Gongsche of the two wind helix.
This is how the Gongsche is calculated, do you get it?
Another two Gongsche, because the manual condition is really difficult to imagine where Gongsche will appear (later this question will not be the problem:-))
The difference between these two graphs and the previous one is that the initial rotation size relationship is reversed and the conclusion is identical. This is the charm of automated computing, hahaha.
In the foreseeable future, the wind Helix will become a new subject, which will be integrated into the isometric spiral frame with the Archimedes Helix and involute Spiral , and become part of the geometry curriculum. Wind helix related calculations will be part of the introductory course in flight programming. This public number will be the goal of continuous efforts to fully open source sharing. Expect in the near future the precise calculation method of wind helix will become a part of DOC8168, and become a gift to the field of geometry research in the field of flight program!
Wish you all: Happy New Year!
Sweep
Follow the public number
Wind Helix Gongsche Algorithm detailed