# Automatic Node Creation¶

### Turn generation rules¶

The following rules are applied when automatically generating the turns in the node:

1. U - turns will not be generated
2. If all the origin sections are aligned with all the destination sections and the total number of entry lanes is equal to the total number of exit lanes, the turns are generated as a join.

3. If there is only one turn exiting from the section, the turn goes from all lanes to all lanes.

4. If an origin section is aligned with one destination section and the number of entry lanes is less than or equal to the number of exit lanes:

• Through movement goes from all the entry lanes to all the exit lanes.

NentryLanesTM = NentryLanes,
NexitLanesTM = NexitLanes,

where
NentryLanes - number of lanes of an origin section,
NexitLanes - number of lanes of a destination section,
NentryLanesTM - number of entry lanes of a through movement,
NexitLanesTM - number of exit lanes of a through movement.

• The left turn goes from the left most entry lane to all the exit lanes.

NentryLanesLT = 1,
NexitLanesLT = NexitLanes,

where
NexitLanes - number of lanes of a destination section,
NentryLanesLT - number of entry lanes of a left turn,
NexitLanesLT - number of exit lanes of a left turn.

• The right turn goes from the right most entry lane to all the exit lanes.

NentryLanesRT = 1,
NexitLanesRT = N<sub>exitLanes,

where
NexitLanes - number of lanes of a destination section,
NentryLanesRT - number of entry lanes of a right turn,
NexitLanesRT - number of exit lanes of a right turn.

5. If an origin section is aligned with one destination section and the number of entry lanes is more than the number of exit lanes:

• The number of lanes of the through movement is equal to the number of exit lanes.

NentryLanesTM = NexitLanes,
NexitLanesTM = NexitLanes,

where
NexitLanes - number of lanes of a destination section,
NentryLanesTM - number of entry lanes of a through movement,
NexitLanesTM - number of exit lanes of a through movement.

• The number of entry lanes of the left turn equals to the difference between the number of entry and exit lanes (the lanes of aligned sections).

NentryLanesLT = NentryLanes - NexitLanesAS,
NexitLanesLT = NexitLanes,

where
NentryLanes - number of lanes of an origin section,
NexitLanesAS - number of lanes of an aligned destination section,
NexitLanes - number of lanes of a destination section,
NentryLanesLT - number of entry lanes of a left turn,
NexitLanesLT - number of exit lanes of a left turn.

• The right turn goes from the right most entry lane to all the exit lanes.

NentryLanesRT = 1,
NexitLanesRT = NexitLanes,

where
NexitLanes - number of lanes of a destination section,
NentryLanesRT - number of entry lanes of a right turn,
NexitLanesRT - number of exit lanes of a right turn.

6. If an origin section has several aligned destination sections:

• With an even number of destination sections: The entry and exit lanes are distributed in proportion to the total number of lanes and the number of lanes of each section.

• If the number of exit lanes of the left turn equals to the number of exit lanes of the right turn, but the number of entry lanes of the origin section is odd, the division of the lanes is always in favor of the left turn.

• With an odd number of destination sections: The closest destination section is considered as the main destination section. The entry and exit lanes are distributed in proportion to the total number of lanes and the number of lanes of each section. All the lanes of the origin sections go to all the lanes of the main destination section.

7. If a destination section has several aligned origin sections :

• The same rules are applied as for the origin section having several aligned destination sections.

8. If an origin section does not have any aligned destination section, but it has turns to the left and to the right and its lane number is more than 2, we divide the lanes between left and right, but always with the priority to the left (in case the number of lanes is odd, for example, 2 lanes to the left and 1 to the right).

### Turn Speed¶

##### Automatic Speed Calculation¶

In curved turns, the automatic speed is calculated as the maximum speed a vehicle can take without sliding off the road. The formula used is:

V = sqrt(g*Rmean*ft)


where

• g is the gravitational acceleration (g=127 for V in km/h and Rmean in meters),
• Rmean the average radius found along the turn,
• ft the friction coefficient (taken as 0.9).

Rmean is obtained from the equations of the first and second derivatives of the Bezier Curve representing the turn. Rmean is computed as the average of R(t)=||C'(t)||\^3/|C'(t)C''(t)| over the 20 points that define the turn movement. To deal with a value of infinity for the radius on straight portions, its inverse is used to compute the mean and inverted back to obtain the result. Note that this method favors small radius values. A lower bound of 15 km/h is applied to the result.

To avoid unrealistic low speed values caused by poor section alignment, the result is filtered for small turn lengths (less than 5 meters) and small angles between preceding and following sections (less than 30 degrees). In those cases a maximum speed variation with respect to the mean speed of the turn Vmean, obtained by the mean of the speed limit of the preceding and following section, is applied: for short turns, a lower bound speed of Vmean - 5.0 * turn length is applied whereas for small angle the lower bound speed is Vmean * cosinus (3.0 * section angle).

When turns are represented by straight lines, the speed is adapted using a linear interpolation of the following tabulated (for the 120 km/h case) dependency between turn angle and speed, corrected for the length of the turn by an additional term of 0.1 * turn length.

Angle in degrees Speed in km/h
10 115
22 60
40 25
62 15
100 9