Patent Description:
The document XP036364313 with title "Numerical modelling of the aerodynamic interference between helicopter and ground obstacles" discloses a generic computer-implemented method for determining an attenuation of a wind caused by a simulated obstacle and experienced by a simulated vehicle in a simulation.

The safe and efficient flight operation of modern helicopters has many demanding aspects for the crew and requires an extensive amount of training. This training on the actual aircraft can be costly, time consuming and involves a certain degree of risks. Flight simulators have been developed to alleviate some of these constraints and their level of fidelity has consistently improved over the years. In a typical training scenario, pilots who fly simulators can observe obstacles in the scene through a visual system. The latter is built based on databases that contain the topography of the terrain and physical structures such as buildings, walls, trees, bridges, etc. One challenge of creating a complete simulation is the interaction of the simulated aircraft with its simulated environment represented through the visual system and the weather selected by the instructor (winds, turbulence, etc.). It is possible to have the weather interact with the visual system and the typical method used is to generate a series of computational fluid dynamics (CFD) solutions that pre-calculate the flow and turbulence fields around the various structures contained in the visual database. For example, CFD solutions may be used for determining the blockage of wind due to the presence of an obstacle between the wind origin and the simulated aircraft. However, although they may generate precise solutions, such CFD methods are costly. Therefore, there is a need for an improved method and system for determining wind attenuation caused by the proximity of obstacles in a simulation.

According to a first broad aspect, there is provided a computer-implemented method according to claim <NUM> for determining an attenuation of a wind caused by a simulated obstacle and experienced by a simulated vehicle in a simulation.

In at least one embodiment, the source position of the line of sight vector is located on the simulated vehicle.

In at least one embodiment, the source position is located along an axis orthogonal to the wind direction.

In at least one embodiment, the axis passes by a reference point located on the simulated vehicle.

In at least one embodiment, the method further comprises varying the given direction between a first direction opposite to the wind direction and a second direction identical to the wind direction.

In the same or another embodiment, the method further comprises varying a position of the source position along the axis.

In at least one embodiment, said generating the line of sight vector comprises generating a plurality of line of sight vectors each having a respective source position located on the simulated vehicle, a respective direction and a respective length, the respective direction for each one of the plurality of line of sight vectors being one of opposite to the wind direction and identical to the wind direction.

In at least one embodiment, said determining the distance between the simulated obstacle and the simulated vehicle comprising determining a respective distance between each respective source position and the simulated obstacle.

In at least one embodiment, the respective length is identical for each one of the plurality of line of sight vectors.

In at least one embodiment, the respective source position is located along an axis orthogonal to the wind direction.

In at least one embodiment, the respective direction is substantially orthogonal to the axis.

In at least one embodiment, the respective direction is parallel to an Earth horizontal plane.

In at least one embodiment, the respective source position of each one of the plurality of line of sight vectors is located along the axis.

In at least one embodiment, the respective source position of at least two of the plurality of line of sight vectors is identical, the respective direction for the at least two of the plurality of line of sight vectors being different.

In at least one embodiment, the respective source position of at least two of the plurality of line of sight vectors is different.

In at least one embodiment, said determining the distance between the simulated obstacle and the simulated vehicle comprises: accessing a visual database containing a topography of a simulated terrain and simulated physical structures; identifying the obstacle as being the closest object from the source position along the given direction, the closest object being one of a part of the simulated terrain and one of the simulated physical structures and a distance between the closest object and the source positon being at most equal to the given length of the line of sight vector; and determining a distance between the source position and the closest object, thereby obtaining the distance between the simulated obstacle and the simulated vehicle.

According to another broad aspect, there is provided a system for determining an attenuation of a wind caused by a simulated obstacle and experienced by a simulated vehicle in a simulation, comprising: a communication unit for at least one of receiving and transmitting data, a memory and a processing unit configured for executing the steps of the above-described method.

According to a further broad aspect, there is provided a system according to claim <NUM> for determining an attenuation of a wind caused by a simulated obstacle and experienced by a simulated vehicle in a simulation.

In at least one embodiment, the system further comprises a distance module configured for determining the distance between the simulated obstacle and the simulated vehicle using the line of sight vector.

In at least one embodiment, the vector module is further configured for varying the given direction between a first direction opposite to the wind direction and a second direction identical to the wind direction.

In the same or another embodiment, the vector module is further configured for varying a position of the source position along the axis.

In at least one embodiment, the vector module is configured for generating a plurality of line of sight vectors each having a respective source position located on the simulated vehicle, a respective direction and a respective length, the respective direction for each one of the plurality of line of sight vectors being one of opposite to the wind direction and identical to the wind direction.

In at least one embodiment, the distance module is configured for determining a respective distance between each respective source position and the simulated obstacle.

In at least one embodiment, the distance module is configured for: accessing a visual database containing a topography of a simulated terrain and simulated physical structures; identifying the obstacle as being the closest object from the source position along the given direction, the closest object being one of a part of the simulated terrain and one of the simulated physical structures and a distance between the closest object and the source positon being at most equal to the given length of the line of sight vector; and determining a distance between the source position and the closest object, thereby obtaining the distance between the simulated obstacle and the simulated vehicle.

<FIG> illustrates a computer implemented method for calculating the wind attenuation caused by an obstacle in a simulation. The method <NUM> is performed by a computer machine provided with communication means, a processing unit and a memory.

The simulation is configured for training a user to use a vehicle. An image of an outdoor is displayed on a display and the displayed image may correspond to what would be seen by the user if he would be within a real vehicle. For example, the vehicle may be a rotor aircraft such as a helicopter, a cyclogyro, a cyclocopter, an autogyro, a gyrodyne, a rotor bike, or the like. While in the below description, reference is made to a helicopter, it should be understood that the method <NUM> may be used for any adequate simulated vehicle or entity such as a plane, a tank, a bicycle, a human, etc..

The simulator used for providing the simulation to the user comprises at least a display on which the simulated images are to be displayed, instruments for allowing the user to control the simulated vehicle and a simulation engine configured for generating the simulation using the commands received from the instruments and displaying the simulation images on the display. The simulator further comprises a database having stored thereon at least topography information about the simulated terrain and simulated structures such as buildings, walls, trees, bridges, and moving entities such as landable ships, and/or the like. For example, the database may contain information such as the position information, dimension information, information about the material from which a structure is made, and/or the like.

At step <NUM>, information about the wind is received. The information comprises the direction of the wind and its initial speed or flow velocity. In at least one embodiment, the information about the wind is sent by the simulation engine and this information may be stored in the database along with other information such as the topography information. In at least one embodiment, the method <NUM> may further comprise a step of sending a request for information about the wind to the simulation engine. In this case, the simulation engine transmits the information about the wind upon receipt of the request.

At step <NUM>, a line of sight vector is generated using the received wind direction. A line of sight vector is defined by a source position, a direction and a length. The source position may be located on the simulated helicopter. In another embodiment, the source position may be adjacent to the simulated helicopter. The direction of the line of sight vector is chosen to be either identical to the direction of the wind or opposite to the direction of the wind. The length of the line of sight vector defines the range for an obstacle to have an impact on the wind, i.e. the maximum distance for an obstacle to create wind attenuation for the simulated helicopter. As a result, if no obstacle is present over a distance equal to the length of the line of sight vector, then there is no attenuation for the wind. However, if an obstacle is present at a distance from the source position shorter or equal to the length of the line of sight vector, then the wind is attenuated for the simulated helicopter.

At step <NUM>, it is determined whether an obstacle is present along the line of sight vector generated at step <NUM>. To do so, the distance between the source position and the closest obstacle from the source position along the direction of the line of sight is calculated using the topography information contained in the database. If no obstacle is present, i.e. if the distance between the closest obstacle from the source position along the direction of the line of sight is greater than the length of the line of sight, then no attenuation for the wind is calculated. On the other end, if the presence of an obstacle is detected, i.e. if the distance between the closest obstacle from the source position along the direction of the line of sight is less than or equal to the length of the line of sight, then an attenuation for the wind is to be calculated and steps <NUM>-<NUM> are performed.

It should be understood that an obstacle may correspond to a part of the simulated terrain stored in the database such as a hill and/or a simulated structure such as a building or a landable ship.

It should also be understood that if more than one obstacle is identified as having a position within the range defined by the length of the line of sight vector, only the obstacle being the closest form the source position is considered and the distance determined at step <NUM> corresponds to the distance between the source position and the closest obstacle from the source position.

At step <NUM>, an attenuation gain for the wind is calculated using the determined distance between the source position of the line of sight vector and the identified closest obstacle. In at least one embodiment, the shortest the distance between the source position and the closest obstacle is, the greater the wind attenuation gain is.

At step <NUM>, the actual or attenuated speed for the wind is calculated using the initial speed of the wind received at step <NUM> and the gain attenuation calculated at step <NUM>. In at least one embodiment, the attenuated speed of the wind is obtained by multiplying the initial speed by the calculated attenuation gain.

Finally, the attenuated speed of the wind is outputted. In at least one embodiment, the attenuated speed is stored in memory. In the same or another embodiment, the attenuated speed is sent to the simulation engine which uses the attenuated speed for controlling the simulated helicopter.

In at least one embodiment, the method <NUM> is executed in substantially real-time while the user interacts with the simulator to provide the user with a real-time effect of the wind on the simulated helicopter.

In at least one embodiment, the step <NUM> comprises sending to the simulation engine a request for receiving the distance of the closest obstacle from the source position of the line of sight vector. In this case, the request comprises at least the source position and the direction of the line of sight vector. The simulation engine receives the request and determines the distance of the closest obstacle from the source position along the direction of the line of sight vector. In at least one embodiment, the simulation engine transmits the determined distance to the computer machine that executes the method <NUM> and the computer machine compares the received distance to the length of the line of sight vector. If the distance is greater than the length of the line of sight vector, the computer machine calculates no attenuation gain for the wind. However, if the received distance is less than or equal to the length of the line of sight vector, the computer machine performs the steps <NUM>-<NUM> of the method <NUM> using the received distance. In an embodiment in which the request further comprises the length of the line of sight vector, the simulation engine may be further configured for comparing the determined distance to the length of the line of sight vector and transmits the determined distance to the computer machine only when it is less than or equal to the length of the line of sight vector.

In at least one embodiment, the method <NUM> further comprises iteratively varying the direction of the line of sight vector between a first direction opposite to the direction of the wind and a second direction corresponding to that of the wind. In this case, the closest obstacle is identified for both the first and second directions and the distance to the closest obstacle is determined for both the first and second directions at step <NUM>. An attenuation gain is calculated at step <NUM> for both the first and second directions using the respective distance to the closest obstacle. The attenuated speed of the wind is then calculated at step <NUM> using the attenuation gain for the first direction and the attenuation gain for the second direction. For example, the attenuated speed may be obtained by the multiplying the initial speed of the wind by the two attenuation gains obtained for both the first and second directions.

In at least one embodiment, the method <NUM> further comprises varying the source position of the line of sight vector and performing the steps <NUM>-<NUM> for each possible position for the line of sight vector. It should be understood that the variation of the source position may be combined with the above-described variation of the direction of the line of sight vector. For example, the line of sight vector when at a first source position may have the same direction as that of the wind and have a direction opposite to that of the wind when the source position is at a second and different position. In another example, the source position may be set at a first position and the direction of the line of sight vector may be first set to correspond to that of the wind and then changed to be opposite to the direction of the wind. Then the source position of the line of sight vector is changed to a second and different position and the direction of the line of sight vector is also changed to iteratively occupy the two directions, i.e. the same direction as that of the wind and the direction opposite to that of the wind.

In at least one embodiment, the different source positions for the line of sight vector may be chosen to be on the simulated vehicle, i.e. on the simulated helicopter. The source positions may be chosen to each correspond to a main component of the simulated helicopter.

In at least one embodiment, the different source positions are located within the azimuth plane of the simulated helicopter. For example, the source positions may be aligned along an axis contained within the azimuth plane of the simulated helicopter. In another embodiment, the different source positions are located within the altitude plane of the simulated helicopter. For example, the source positions may be aligned along an axis contained within the altitude plane of the simulated helicopter.

In at least one embodiment, the generated line of sigh vector(s) is (are) parallel to the Earth horizontal plane.

It should be understood that the source positions may be chosen to cover different points of the simulated helicopter along the longitudinal axis of the simulated helicopter from its front end to its rear end for example, and/or on different points positioned on the main rotor of the simulated helicopter for example, and/or different points of the simulated helicopter along its vertical axis from its top to its bottom for example.

In at least one embodiment, the different source positions are aligned along an interrogation axis <NUM> which is chosen to be orthogonal to the wind direction <NUM> as illustrated in <FIG>. In the illustrated embodiment, a simulated helicopter <NUM> is present between a first obstacle <NUM> and a second obstacle <NUM> so that the first obstacle <NUM> be positioned between the wind source and the simulated helicopter <NUM> and the simulated helicopter <NUM> be positioned between the first and second obstacles <NUM> and <NUM>. The first obstacle <NUM> is said to be positioned upstream from the simulated helicopter <NUM> relative to the wind <NUM> while the second obstacle <NUM> is said to be positioned downstream the wind <NUM> relative to the simulated helicopter <NUM>.

The interrogation axis <NUM> is be chosen to be contained within the azimuth plane of the simulated helicopter <NUM> and passes by a reference point of the simulated helicopter such as a point belonging to the rotation axis of the main rotor of the simulated helicopter <NUM>. Furthermore, and as mentioned above, the interrogation axis <NUM> is orthogonal to the wind direction <NUM>. In the illustrated example, eight different source points <NUM>-<NUM> each corresponding to a source position for the line of sight vector are chosen along the interrogation axis <NUM> to cover the whole projection of the simulated helicopter <NUM> on the interrogation axis <NUM>. The first source point <NUM> is chosen along the interrogation axis <NUM> so as to correspond to the projection of most-front point of the simulated helicopter <NUM> on the interrogation axis <NUM>. The last source point <NUM> is chosen along the interrogation axis <NUM> so as to correspond to the projection of most-rear point of the simulated helicopter <NUM> on the interrogation axis <NUM>. The source points <NUM>-<NUM> are optionally evenly distributed between the points <NUM> and <NUM>. In another embodiment, the source points <NUM>-<NUM> may be distributed along the interrogation axis so that to correspond to the positon of a main component of the simulated helicopter <NUM>.

The source position of the line of sight vector is iteratively changed from the first source point <NUM> to the last interrogation point <NUM> and for each source point <NUM>-<NUM>, the direction of line of sight vector is set to be first opposite to the wind direction <NUM> and then identical to the wind direction <NUM>. For each source point <NUM>-<NUM> and each direction of line of sight vector, the steps <NUM> and <NUM> of the method <NUM> are performed so as to determine the wind attenuation gain for each source point <NUM>-<NUM> and each direction of line of sight vector. For each source point <NUM>-<NUM>, a global attenuation gain is obtained by multiplying together the attenuation gains for the two line of sight vector directions. The resulting global attenuation gain as a function of the position of the source point position along the interrogation axis <NUM> is illustrated in <FIG>. For each source point <NUM>-<NUM>, the attenuated wind speed is determined using the initial wind speed and the respective global attenuation gain, i.e. by multiplying the initial speed by the respective global attenuation gain.

Referring to <FIG>, even if the source positions <NUM>-<NUM> and <NUM>-<NUM> are not located on the simulated helicopter <NUM>, the attenuated wind determined for each one of these points is associated with at least one point on the helicopter of which the projection corresponds to at least one of the source positions <NUM>-<NUM> and <NUM>-<NUM>. These associations can be determined using any adequate geometric interpolation method.

While in the above description, there is described that a single line of sight vector is generated at step <NUM>, it should be understood that a plurality of line of sight vectors may be generated at step <NUM>. In this case, each one of the plurality of line of sight vectors has a respective and different source position and/or a respective and different direction. In this case, for each line of sight vector, the respective distance from the closest obstacle is determined at step <NUM> and the respective gain attenuation is determined at step <NUM>. For each source position, the global attenuation gain is calculated by combining together the attenuation gain for the line of sight vector having the source position and the same direction as that of the wind and the attenuation gain for the line of sight having the same source position and the direction opposite to that of the wind, i.e. by multiplying together the two attenuation gains obtained for the same source position. At step <NUM>, the attenuated wind speed is determined for each source position using the initial wind speed and the respective global attenuation gain.

Referring to <FIG>, a line of sight vector may be concurrently generated for each source point <NUM>-<NUM> and each of the two possible directions. In this case, <NUM> line of sight vectors are concurrently generated. A first set of line of sight vectors is generated for each source position <NUM>-<NUM> and each line of sight vector contained in the first set has a direction opposite to that of the wind. A second set of line of sight vectors is generated for each source position <NUM>-<NUM> and each line of sight vector contained in the second set has the same direction as that of the wind. The distance from the closest obstacle and the attenuation gain is concurrently determined for each one of the <NUM> line of sight vectors and the global attenuation gain is concurrently determined for each one of the <NUM> source positions <NUM>-<NUM>.

In at least one embodiment, the different line of sigh vectors may each have a source point located on the simulated helicopter. In another embodiment, at least one of the line of sight vectors has a source position located on the simulated helicopter.

In at least one embodiment, the source position for the different line of sight vectors are positioned along an interrogation axis which is chosen to be orthogonal to the direction of the wind, as described above. In at least one embodiment, the interrogation axis intersects the helicopter, as described above.

While in <FIG> the different source positions are located along an interrogation axis <NUM> contained within the azimuth plane of the simulated helicopter <NUM>, <FIG> illustrates an embodiment in which the line of sight vectors <NUM> and <NUM> each have a source position located along an interrogation axis <NUM> orthogonal to the wind direction and contained in the altitude plane of the simulated helicopter <NUM>. In this illustrated embodiment, five source positions are defined along the interrogation axis <NUM> which is chosen to correspond to the rotation axis of the main rotor of the simulated helicopter <NUM>. The five line of sight vectors <NUM> each have the same first direction such as a direction opposite to that of the wind and each have a source position that corresponds to a respective one of the five source points located along the rotation axis <NUM> of the simulated helicopter <NUM>. The five line of sight vectors <NUM> each have the same second direction which is opposite to the first and each have a source position that corresponds to a respective one of the five source points located along the rotation axis <NUM> of the simulated helicopter <NUM>. In the illustrated embodiment, the three bottom-most line of sight vectors <NUM> allow the detection of an obstacle <NUM>.

In at least one embodiment, a single line of sight is generated and its source position and its direction are iteratively changed so that the source position of the single line of sight iteratively occupies each one of the five source positions located on the rotation axis <NUM> so that the five line of sight vectors <NUM> and the five line of sight vectors <NUM> be iteratively and successively generated. For example, the source position and/or the direction of the single line of sight vector may be changed at each simulation step.

In another embodiment, the five line of sight <NUM> and the five line of sight vectors <NUM> are concurrently generated.

In at least one embodiment, the distance to the obstacle used for the determination of the attenuation gain may correspond to the average distance obtained from the particular distances obtained using a plurality of line of sight having the same direction but a different source position. For example, and referring to <FIG>, the distances to the obstacle <NUM> determined using three bottom-most line of sight vectors <NUM> can be averaged to provide the distance to be used in the calculation of the attenuation gain.

In at least one embodiment, the attenuation gain is normalized so that it may only have a value comprised between <NUM> and <NUM>.

In the following, there is described one exemplary method for calculating the attenuation gain. For each source position such as each point of interest on the helicopter, the attenuation gain applied on the initial wind is defined by the following equation: <MAT> where:.

This equation applies for obstacles located both upstream and downstream the sources positions and it should be understood that the value of the parameters defined above may vary from one source point to another.

The global gain Gi(di)flnal is computed by combining the two directions as follows: <MAT>.

It should be understood that other models may be used for calculating the attenuation gain using the distance to the closest obstacle.

It should be understood that the method <NUM> may be embodied as a computer machine comprising at least one processing unit or processor, a communication unit and a memory having stored thereon statements and/or instructions that, when executed by the processing unit, executes the steps of the above-described method.

<FIG> illustrates one embodiment of a system <NUM> for calculating the wind attenuation for a simulated vehicle caused by a simulated obstacle. The system <NUM> comprises a line of sight vector generator <NUM>, an attenuation gain calculator <NUM> and a wind speed calculator <NUM>. The line of sight vector generator <NUM> is configured for generating at least one line of sight vector as described above. In at least one embodiment, the line of sight vector generator <NUM> is configured for generating a single line of sight vector and varying the source position and/or the direction of the single line of sight vector. In another embodiment, the line of sight vector generator <NUM> is configured for generating a plurality of line of sight vectors each having a different direction and/or a different source position.

The line of sight vector generator <NUM> is further configured for transmitting information about the generated line of sight vector to a distance calculator <NUM>. The transmitted information contains at least the source position and the direction of the line of sight vector, for each generated line of sight vector. The distance calculator <NUM> is configured for calculating the distance between the source position and the closest obstacle along the direction and transmitting the calculated distance to the attenuation gain calculator <NUM>, for each line of sight vector.

In at least one embodiment, the line of sight vector generator <NUM> may further transmit the length of the line of sight vector to the distance calculator <NUM>. In this case, the distance calculator <NUM> may be configured for comparing the determined distance to the length of the line of sight vector and transmit the determined distance to the attenuation gain calculator <NUM> only when the determined distance is less than or equal to the length of the line of sight vector. It should be understood that, if the attenuation gain calculator <NUM> receives no distance from the distance calculator <NUM>, then the attenuation gain calculator <NUM> calculates no attenuation gain.

In another embodiment, the line of sight vector generator <NUM> may further be configured for transmitting the length of the line of sight vector to the attenuation gain calculator <NUM>. In this case, the attenuation gain calculator <NUM> may be configured for comparing together the determined distance received from the distance calculator <NUM> and the received length of the line of sight vector and calculating the attenuation gain only when the distance received form the distance calculator <NUM> is less than or equal to the length of the line of sight vector.

For each line of sight vector, the attenuation gain calculator <NUM> is configured for calculating the attenuation gain using the respective distance received from the distance calculator <NUM>, as described above. The attenuation gain calculator <NUM> is further configured for transmitting the calculated attenuation gain to the wind speed calculator <NUM> which determines the wind speed as experienced by the simulated helicopter using the initial wind speed and the attenuation gain, as described above.

In at least one embodiment, the distance calculator <NUM> is separate from the system <NUM>. In this case, the distance calculator <NUM> may be the simulation engine configured for generating the simulation of the helicopter.

In another embodiment, the distance calculator <NUM> is part of the system <NUM>.

In at least one embodiment, each one of the modules <NUM>-<NUM> is provided with a respective processing unit such as a microprocessor, a respective memory and respective communication means. In another embodiment, at least two of the modules <NUM>-<NUM> may share a same processing unit, a same memory and/or same communication means. For example, the system <NUM> may comprise a single processing unit used by each module <NUM>-<NUM>, a single memory and a single communication unit.

<FIG> is a block diagram illustrating an exemplary processing module <NUM> for executing the steps <NUM> to <NUM> of the method <NUM>, in accordance with some embodiments. The processing module <NUM> typically includes one or more Computer Processing Units (CPUs) and/or Graphic Processing Units (GPUs) <NUM> for executing modules or programs and/or instructions stored in memory <NUM> and thereby performing processing operations, memory <NUM>, and one or more communication buses <NUM> for interconnecting these components. The communication buses <NUM> optionally include circuitry (sometimes called a chipset) that interconnects and controls communications between system components. The memory <NUM> includes high-speed random access memory, such as DRAM, SRAM, DDR RAM or other random access solid state memory devices, and may include non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid state storage devices. The memory <NUM> optionally includes one or more storage devices remotely located from the CPU(s) <NUM>. The memory <NUM>, or alternately the non-volatile memory device(s) within the memory <NUM>, comprises a non-transitory computer readable storage medium. In some embodiments, the memory <NUM>, or the computer readable storage medium of the memory <NUM> stores the following programs, modules, and data structures, or a subset thereof:.

It should be understood that the distance module <NUM> may be omitted.

Each of the above identified elements may be stored in one or more of the previously mentioned memory devices, and corresponds to a set of instructions for performing a function described above. The above identified modules or programs (i.e., sets of instructions) need not be implemented as separate software programs, procedures or modules, and thus various subsets of these modules may be combined or otherwise re-arranged in various embodiments. In some embodiments, the memory <NUM> may store a subset of the modules and data structures identified above. Furthermore, the memory <NUM> may store additional modules and data structures not described above.

Although it shows a processing module <NUM>, <FIG> is intended more as functional description of the various features which may be present in a management module than as a structural schematic of the embodiments described herein. In practice, and as recognized by those of ordinary skill in the art, items shown separately could be combined and some items could be separated.

Claim 1:
A computer-implemented method for determining an attenuation of a wind caused by a simulated obstacle (<NUM>, <NUM>) and experienced by a simulated vehicle (<NUM>) in a simulation, comprising:
receiving a wind direction (<NUM>) and an initial speed for a simulated wind;
generating a line of sight vector having a source position (<NUM>, <NUM> ...<NUM>), a given direction and a given length, the source position (<NUM>, <NUM> ...<NUM>) being located on the simulated vehicle (<NUM>) , the given direction being one of opposite to the wind direction and identical to the wind direction and the given length defining the maximum distance for an obstacle to create wind attenuation for the simulated vehicle (<NUM>);
determining a distance between the simulated obstacle (<NUM>, <NUM>) and the source position (<NUM>; <NUM>, <NUM>) based on topography information contained in a database;
if the distance between the simulated obstacle (<NUM>, <NUM>) and the source position (<NUM>, <NUM> ... <NUM>) along the direction of the line of sight vector is less than or equal to the length of the line of sight vector, determining a wind attenuation gain using the distance between the simulated obstacle (<NUM>, <NUM>) and the source position (<NUM>, <NUM> ... <NUM>), wherein if more than one simulated obstacle (<NUM>, <NUM>) is identified as having a position within the range defined by the length of the line of sight vector, only the simulated obstacle (<NUM>, <NUM>) closest to the source position (<NUM>, <NUM> ... <NUM>) is considered ;
if the distance between the simulated obstacle (<NUM>, <NUM>) and the source position (<NUM>, <NUM> ... <NUM>) along the direction of the line of sight vector is greater than the length of the line of sight vector, no wind attenuation gain is calculated;
determining an actual speed for the simulated wind using the initial speed of the simulated wind and the gain for the wind attenuation; and
outputting the actual speed of the simulated wind and using the actual speed of the simulated wind for controlling the simulated vehicle (<NUM>) in the simulation.