Changes

/* Introduction */
{{projectinfo|Application| Modeling Polarimetric Wave Propagation In The Lower Manhattan Scene Using EM.Terrano|ART MANH Fig title.png|In this project, you we will analyze a very large urban canyon propagation scene involving hundreds of buildings with complex geometries and a very large irregular terrain.|*[[Building Geometrical Constructions in CubeCAD| CubeCAD]]
*[[EM.Terrano]]
*Impenetrable Surfaces
*Short Dipole SourceTransmitter*Field Distribution*Source PolarizationReceiver
*Received Power Coverage Map
*Pattern Rotation*Frequency Sweep|All versions|{{download|http://www.emagtech.com|EM.Terrano Lesson 8|[[EM.Cube]] 14.10}} None }}
== Introduction ==
In this application note, we will demonstrate how [[EM.Terrano]] can be used to analyze a very large urban canyon propagation scene using its ultrafast k-d tree based ray tracer. Specifically, we will construct a scene representing a portion of lower Manhattan, NY, with real-sized models of its buildings and terrain profile. The total size of the area is 1.3km &times; 1.2km, and it will be covered with a very large rectangular grid of receivers equally spaced with a uniform spacing of 5m. You can learn more about the basic procedure for setting up an propagation scene and running a SBR simulation in "[[EM.Terrano Tutorial Lesson 23: Analyzing An Outdoor A Multipath Outdoor Propagation Scene]]". <table><tr><td>[[Image:ART MANH Fig1A.png|thumb|left|550px|A view of Manhattan, NY.]]</td></tr></table>
== An Overview of the SBR Method and k-d Tree Formalism ==
The [[SBR Method|SBR method]] assumes that electric fields propagate as spherical waves with the general form:
<math> \mathbf{A}(\mathbf{r}) \frac{e^{-jkR}}{R} </math>
where R = |<strong>r-r'</strong>| is the distance between the source and observation points, <strong>r</strong> and <strong>r'</strong> are the position vectors of the observation and source points, respectively, k = √ε<sub>r</sub>k<sub>0</sub>, ε<sub>r</sub> is the relative permittivity of the propagation medium, k<sub>0</sub> = 2πf/c is the free-space propagation constant, f is the operational frequency and c is the speed of light in the free space. <strong>A</strong>(<strong>r</strong>) is complex vector function that defines the polarization and strength of the field at the observation point. Propagating spherical waves are modeled as ray tubes or beams that emanate from a field source point (or a transmitter), travel in the free space, bounce from obstacles and scatterers and are collected at a field observation point (or a receiver). As a ray tube travels in space, its footprint expands due to the beam's spatial divergence. Every scatterer in the scene is discretized into a group of conjoined triangular facets, which are created by a triangular surface mesh generator. When a propagating ray is intercepted by a facet, one of the following events takes place:
* The incident ray is reflected back into the free space.
* The incident ray is diffracted from one of the three edges of the facet.
Therefore, a ray-triangle intersection algorithm is required to test if a given ray hits a given facet of a building. Unfortunately, even very fast ray-triangle intersection algorithms are computationally very expensive. If the mesh triangles are not organized spatially, a brute-force SBR solver will have to perform N×M intersection calculations, where N is the total number of rays and M is the total number of triangular facets in the scene. This is one of the main reasons why conventional ray tracers take a significant amounts of time to solve large-scale propagation scenes that involve hundreds of buildings and thousands of rays.
The solution to the geometric problem of ray-facet intersections can be significantly accelerated by using a k-dimensional (k-d) tree to subdivide the computational domain. A k-d tree, a special case of a binary tree, is a spatial partitioning data structure that is used for organizing points in a k-dimensional space. Using a k-d tree reduces the number of ray-triangle intersection calculations that is required for each ray. In other words, the algorithm used to navigate or traverse a k-d tree is computationally less expensive than a brute-force ray-triangle intersection calculation. The k-d tree is constructed by dividing the computational domain into two partitions and then sorting all the triangles into the two partitions. This process is repeated for the two newly generated partitions until a termination criterion is met. The key to constructing a useful and computationally efficient k-d tree is intelligently deciding on when and where to split each space. A well constructed k-d tree can be many times faster than a poorly constructed one.
After constructing a k-d tree for a given propagation scene, all the triangular facets of the simulation domain are organized spatially. Each k-d tree leaf is loaded with a list of all the facets that are contained in that leaf. Each shooting ray will traverse through the k-d tree and will perform ray-triangle intersection calculations only on triangles that are contained in the traversed leaves. Many different k-d tree traversing algorithms have been developed in recent years. [[EM.CubeTerrano]]'s SBR simulation engine uses an improved version of an efficient algorithm called the Recursive Ray Traversal Algorithm [3].
==Setting Up the Manhattan Propagation Scene==
The figure below shows a part of lower Manhattan that will be modeled as a propagation for this project. The real-sized building models are imported from a STEP CAD file, while the terrain is imported from a digital elevation map (DEM) file.
 
<table>
<tr>
<td>
[[Image:ART MANH Fig1A.png|thumb|left|550px|A view of Manhattan, NY.]]
</td>
</tr>
</table>
<table>
<tr>
<td>
[[Image:ART MANH Fig3.png|thumb|left|720px640px|The mesh view of the Manhattan scene.]]
</td>
</tr>
</table>
[[EM.Terrano]]'s default transmitter is a vertically polarized half-wave dipole antenna. The default transmitter is placed at x = 1150m and y = 700m, at a height of 30m above the ground elevation at that point. A large rectangular grid of 260 &times; 240 isotropic receivers is placed 1.5m above the ground elevation that covers the entire scene. A total of 62,400 receivers with an equal spacing of 5m are used to collect the rays in the scene.
<table>
<tr>
<td>
[[Image:ART MANH Fig5.png|thumb|left|720px640px|The location of the transmitter (in blue circle) and the dense receiver grid (yellow points) placed 1.5m above the ground covering the entire scene.]]
</td>
</tr>
</table>
 
== SBR Analysis of the Manhattan Scene with a Vertical Dipole Transmitter ==
 
The operating frequency of the SBR simulation is set to f = 2.4GHz. At this frequency, the free-space wavelength is &lambda;<sub>0</sub> = 0.125m. Due to the very large size of the propagation scene, we choose a ray angular resolution of 0.1&deg; for this simulation. [[EM.Terrano]] uses a special algorithm based on the tessellation of an icosahedron to generate ray tubes with uniform and equal cross sectional areas. With the specified 0.1&deg; angular resolution, this algorithm generates a total of 648,000 initial rays emanating from the location of the transmitter in all directions. The reflected rays are limited to a maximum of 10 bounces. The sensitivity of the receivers is set to -100dBm. This means that if the power of any ray falls below this threshold before reaching a receiver, that ray is terminated in the scene. The figure below shows the computed receiver power coverage map of the propagation scene.
<table>
<tr>
<td>
[[Image:ART MANH Fig4.png|thumb|left|720px550px|The mesh view received power coverage map of the Manhattan scene.]]
</td>
</tr>
</table>
The above figure shows a maximum receiver power of -42dBm. To run a quick sanity check on the simulation results, consider the fact that the transmitter and receivers are placed 30m and 1.5m above the ground elevation, respectively. Therefore, the minimum distance between the transmitter and the line-of-sight (LOS) receivers is R<sub>min</sub> = 28.5m. The default dipole transmitter has a baseband power of 1W (30dBm) and the dipole radiator has a directivity G<sub>T</sub> of 2.15dB. Under the conjugate match condition, the effective isotropically radiated power of the transmitter is -29.14dBm. The directivity G<sub>R</sub> of the isotropic receivers is 0dB. If the ground reflection effect is neglected, one can use the Friis formula to get an estimation of the receive power by the closest LOS receiver:
:<math> P_R = P_T G_T G_R \left( \frac{\lambda_0}{4\pi R} \right)^2 = 29.14dBm + 20log_{10}\left( \frac{0.125}{4\pi(28.5)} \right) \approx -40dBm</math>
All The table below summarizes the buildings belong to the same group called Block_1, which is of the "Impenetrable Surface" type. The material composition is "Brick" computational statistics associated with &epsilon;<sub>r</sub> = 4.44 and &sigma; = 0.001S/m. In [[EM.Cube]]'s [[Propagation Module]], you can force all the objects belonging to a group to adjust to their underlying terrain. This means that the Z-coordinate of the base of the buildings is elevated to equal the terrain elevation at the building's LCS center coordinates. For that purpose, you have to check the checkbox labeled "Adjust Blocks to Terrain Elevation" is the surface group's property dialog as shown in the opposite figure. SBR simulation performed earlier:
The source in the Manhattan scene is a vertically polarized short dipole radiator located at {| class="wikitable"|-| Operating Frequency| 2.4GHz|-| Free-Space Wavelength| &lambda;<sub>0</sub> = 0.125m|-| Total Domain Area Size| 1.3km &times; 1.2km (1050m10, 1050m, 40m). The scene contains a very large 128 400&lambda;<sub>0</sub> &times; 116 grid 9,600&lambda;<sub>0</sub>)|-| Total Number of isotropic receivers spaced 10m apart from one another covering the entire scene. The receivers are placed 2m above the terrain elevation at each point. Buildings| 914|-| Total Number of Facets| 146,205|-| Total Number of Edges| 27,357|-| Total Number of Transmitted Rays| 648,000|-| Total Number of Receivers| 62,400|-| Total Number of k-d Tree Nodes| 125,038|}
The SBR simulation was performed on an ASUS laptop computer with an Intel i7-4860 HQ processor with eight cores. The laptop features 32GB RAM memory. Due to the complexity of the geometry of many buildings, the mesh generation task took a sizable amount of time. The table below shows the time spent by the CPU for the mesh generation and SBR ray tracing portions of the total simulation time:
<table>{| class="wikitable"<tr>|-<td>| Simulation Step[[Image:PROP250.png|thumbComputation Time|750px-|A perspective view of the Manhattan scene showing the receivers and short dipole transmitter.]]Facet Mesh Generation</td>| 80s</tr>|-</table>| SBR Ray Tracing| 160s|-| Total| 240s|}
==A Note on SBR Mesh Generation for Complex LargeUsing a Directional Yagi-Scale ScenesUda Array ==
[[EM.Cube]]'s Propagation Modules generates A vertical dipole has a triangular surface mesh for SBR ray tracing analysis. This mesh is similar in nature to fairly omni-directional far-field radiation pattern along the surface triangular meshes used by some of [[EMazimuth direction.Cube]]'s other modules like the Surface MoM and Physical Optics (PO). HoweverNext, for ray tracing, the goal of mesh generation is to discretize buildings into flat triangular facets. The size of these facets is driven by geometrical fidelity rather than the simulation's operating wavelength. As we will use a result, directional antenna array as the mesh density is specified in terms of "Cell Edge Length" in project units rather than in the form of number of cells per wavelengthtransmitter. For this projectpurpose, set the edge length to 25 units. Although we choose a lot of buildings have dimensions and geometrical details less then 25m, this would be horizontal end-fire Yagi-Uda dipole array with a good choice. Most geometrical details will be captured accurately in the generated meshreflector, while you will also avoid creating too many coplanar facets on the flat sides of the larger rectangular buildingsan exciter and 10 director elements.  Generate The individual dipole elements are Y-directed and view the mesh of array's linear axis is oriented along the Manhattan scene and see how [[EM.Cube]] combines multiX-object buildings together to create a consistent meshaxis. In fact, connected or overlapped objects undergo a Boolean union operation before being discretized by The design of the mesh generator.   {{Note|In Yagi-Uda dipole array is discussed in detail in [[EM.CubeLibera Tutorial Lesson 2: Designing A Yagi-Uda Dipole Array]]'s [[Propagation Module]], . The figure below shows the mesh 3D far-field radiation pattern of the terrain is not explicitly displayed because a terrain object is either created or imported as a tessellated surface object, which is already a discretized object12-element Yagi-Uda array at an operating frequency of 2.4GHz.}}
<table>
<tr>
<td>
[[Image:PROP251ART MANH Fig10.png|thumb|900pxleft|Buildings 550px|The 3D far-field radiation pattern of Impenetrable Surface type on the global ground in the Ann Arbor scene propagation scenea horizontally polarized Yagi-Uda dipole array with 10 director elements.]]
</td>
</tr>
</table>
There are numerous cases that mesh generation for complex large-scale scene may fail in the first attemptThe above radiation pattern was computed using [[EM. Most of such cases stem from Libera]], [[EM.Cube]]'s failure to perform the Boolean union operation on complex overlapping objectsMoM3D computational module. When your scene contains hundreds or thousands The &phi; and &theta; components of such objects, the odds of failure would naturally rise. If you look at the list of the building far-zone electric fields in the Navigation Tree, you will notice that all of the objects except for the last one standard spherical coordinate system are of stored in an ASCII data file with a "Generic Solid" type. The last object is a RAD"Boolean" objectfile extension. When we first imported the Manhattan buildings from external CAD files to build this projectWith an original angular resolution of 1&deg;, there were initially the data file contains a total of 622 [[Solid Objects|solid objects]]. The mesh generator failed to union 361 &times; 181 = 65,341 rows containing the constituents real and imaginary parts of the bright-yellowcomplex-highlighted building shown in the figure belowvalued E<sub>&theta;</sub> and E<sub>&phi;</sub> field components. This building originally consisted provides a fully polarimetric representation of 8 individual the source's outgoing fields, which are then picked up and traced by [[Solid Objects|solid objectsEM.Terrano]], 's fully coherent and 3D-polarimetric SBR solver. Note that were indexed from Solid_543 to Solid_550. We divided these objects into groups the complexity of 2 or 3 and performed Boolean union operation on each group separately. If Boolean union operations are completed successfully, the mesh will be generated without failureradiation pattern data file does not add any computational overhead to the SBR simulation. Finally, we combined The figure below shows the resulting Boolean objects into a single Boolean object called "Boolean_623"received power coverage map of the Manhattan scene with an X-directed horizontal Yagi-Uda array. You can visibly see the directionality of the pattern of the transmitter from the Navigation Tree coverage map in the area below the transmitter. Also note that the index range 543maximum received power in this case is -550 37dBm, which is missing from 7dB larger than the solids' list previous case with a vertical dipole transmitter. This increase is accounted for this very reasonby the greater directivity (D<sub>0</sub> = 10dB) of the transmitter antenna, and hence the larger transmitted EIRP.
<table>
<tr>
<td>
[[Image:PROP265ART MANH Fig11.png|thumb|500pxleft|The (highlighted) building of the Boolean type in the Manhattan scene.]]</td><td>[[Image:PROP266.png|thumb|500px550px|The surface triangular mesh received power coverage map of the Boolean building in the Manhattan scenewith an X-directed horizontal Yagi-Uda array.]]
</td>
</tr>
</table>
[[Image:PROP253.png|thumb|550px|The received power coverage map of the Manhattan scene with the transmitter located 40m above the ground in the upper right part of the scene.]] ==Running an SBR Analysis of the Manhattan Scene== Run an SBR analysis of the project's scene and visualize the received power coverage map as shown the opposite figure. Keep in mind that the mesh generation may take a fairly long amount of time. Have patience and let [[EM.CubeTerrano]] finish its job. From allows the figure you can see that the wireless coverage barley penetrates into the streets due user to rotate an imported far-field radiation pattern about the dense configuration of impenetrable buildingsthree principal coordinate axes.  AlsoNext, note how fast [[EM.Cube]]'s SBR solver completes we rotate the simulation process after radiation pattern of the mesh has been generated. Below is Yagi-Uda array by 135&deg; and run a summary of some simulation statistics:  * Number of building facets: 29,997 * Number of building edges: 11,060  * Number of terrain facets: 122,722  * Total number of facets: 152,719 * Number of sources (or transmitters): 1 * Number of receivers: 14,848  * Number of k-d tree nodes: 142,318  * Number of transmitted rays: 64,980  {{Note|A high-resolution terrain can easily add thousands of facets to your new SBR simulation. It is therefore important to decide when to include or not include terrain as part of your the propagation scene. Relatively flat imported terrain models may not affect The results are shown in the simulation results tangibly, or you might be able to replace them with a few simpler manually constructed terrain objects with a much coarser resolutionfigure below.}}  ==Moving Note the Source deeper wave penetration into a Dense Area== Next, open the property dialog of urban canyon as well as the short dipole source and move its coordinated to (750m, 450m, 40m), keeping it at strong reflection from the same height as before. Run a new SBR simulation blocks of buildings into the scene and visualize open area behind the received coverage maptransmitter.
<table>
<tr>
<td>
[[Image:PROP255ART MANH Fig12.png|thumb|left|550px|The received power coverage map of the Manhattan scene with the transmitter moved into an area with high building densitya horizontal Yagi-Uda array rotated clockwise by 135&deg;.]]
</td>
</tr>
</table>
As you can see from == Moving the above figureTransmitter into a Dense Area == Next, we moved the coverage area is still very limited, transmitter with a few streets getting some coverage. If you open the property dialog of the short dipole source, you will notice a default value of 1A for the dipole current. The dialog also shows a value of 227.4mW for the dipole source's radiated power. Increase the dipole current to 10A. This will increase the radiated power 100rotated Yagi-fold to 22.7W, as the power of Uda array into a short dipole radiator varies denser area and placed it at x = 900m and y = 450mm as |I|<sup>2</sup>. Run a new SBR simulation and compare shown in the coverage mapsfigure below.
 
<table>
<tr>
<td>
[[Image:PROP259ART MANH Fig15.png|thumb|350pxleft|The Short Dipole Source dialog.]]</td><td>[[Image:PROP260.png|thumb|550px640px|The received power coverage map new location of the transmitter (in blue circle) in the lower Manhattan scene with significantly increase transmitted power.]]
</td>
</tr>
</table>
OverallInstead of running a single-frequency SBR analysis, increasing this time we ran a frequency sweep of the transmitted power lifts propagation scene over the coverage map by 20dB (100-fold) as you can verify from the maximum received power values in the two plotsfrequency range [1. However5GHz, the dense array 2.5GHz]. A frequency step of nearby buildings still block most of the coverage into the streets even though 100MHz was chosen, hence, a good number total of new signal paths have appeared in the latest coverage map11 frequency samples.  The figures below show the distribution geometrical optic (GO) part of the three X, Y and Z components of simulation is the electric field in same for all frequency samples except for the Manhattan scene. Note fact that your short dipole source is vertically polarizedthe reflection coefficients are at the building specular points are frequency-dependent. The X and Y field components Diffraction coefficients are a result of multipath effectsfrequency-dependent, too.   <table><tr><td>[[Image:PROP256EM.png|thumb|380px|The distribution of Terrano]] first determines all the optical paths in the scene using the Xk-component of electric d tree algorithms. Then, it calculates the reflection and diffraction coefficients at each frequency sample and computes the field due to components and received power at the vertically polarized dipole sourcelocation of each receiver.]]</td><td>As a result, [[Image:PROP257EM.Terrano]]'s frequency sweeps are extremely fast.png|thumb|380px|The distribution of figures below show the Y-component received power coverage maps of electric field due to the vertically polarized dipole source.]]</td><td>[[Imagepropagation scene with a rotated horizontal Yagi-Uda array at three different frequencies:PROP258f = 1.5GHz, 2GHz and 2.5GHz.png|thumb|380px|The distribution of the Zcolor-component of electric field due to the vertically polarized dipole sourcecoded intensity scale is identical for all three plots.]]</td></tr></table> ==Changing As you would have expected, the Source Polarization==maximum received power level drops as the operating frequency is increased.
In the last part of this tutorial lesson, you will change the polarization of your short dipole transmitter and see the effect of the polarization change on the coverage map. Open the property dialog of the source and change its "Direction Unit Vector" to uX = 1, uY = -1, and uZ = 0. This will align the short dipole radiator parallel to the direction of most nearby streets. Keep the same 10A dipole current. If you close the source dialog and open it again, you will notice that the direction vector has been normalized as uX = 0.707, uY = -0.707, and uZ = 0. Run an SBR analysis of the scene and visualize the received power coverage map.
 
 
<table>
<tr>
<td>
[[Image:PROP261ART MANH Fig16.png|thumb|left|550px|The received power coverage map of the Manhattan scene with the horizontally polarized dipole sourcea rotated horizontal Yagi-Uda array at f = 1.5GHz.]]
</td>
</tr>
</table>
 
From the above figure, you can see that the maximum received power level has increased by about 6dB. You can also see more signal paths compared to the vertical polarization case. Visualize the three electric field component distribution maps and compare them with the data of the previous case. Note that in this case, the Z-component of the electric field is entirely due to multipath effects.
 
<table>
<tr>
<td>
[[Image:PROP262ART MANH Fig17.png|thumb|380pxleft|The distribution of the X-component of electric field due to the horizontally polarized dipole source.]]</td><td>[[Image:PROP263.png|thumb|380px550px|The distribution received power coverage map of the YManhattan scene with a rotated horizontal Yagi-component of electric field due to the horizontally polarized dipole sourceUda array at f = 2.]]</td><td>[[Image:PROP264.png|thumb|380px|The distribution of the Z-component of electric field due to the horizontally polarized dipole source0GHz.]]
</td>
</tr>
</table>
 
 
Next, rotate your transmitter by 90&deg; counterclockwise. This is equivalent to changing the "Direction Unit Vector" of the short dipole source to uX = 0.707, uY = 0.707, and uZ = 0. in this new orientation, your source is aligned perpendicular to the direction of most nearby streets. Keep the same 10A dipole current. Run an SBR analysis of the scene and visualize the received power coverage map. You will find that although the rotation of the dipole source does not change the maximum received power level, more penetrating signal paths appear on the nearby streets and they extend to longer distances.
 
 
<table>
<tr>
<td>
[[Image:PROP267ART MANH Fig18.png|thumb|left|550px|The received power coverage map of the Manhattan scene with the horizontally polarized dipole source a rotated 90&deg; counterclockwisehorizontal Yagi-Uda array at f = 2.5GHz.]]
</td>
</tr>
</table>
Also visualize the three electric field component distribution maps. The Ex and Ey field maps are consistent with table below shows the radiation pattern computation time of different stages of the short dipole radiator, which has a donut shape with its maximum normal to the dipole axis. SBR sweep simulation:
<table>{| class="wikitable"<tr>|-<td>| Simulation Step[[Image:PROP268.png|thumb|380pxComputation Time|The distribution of the X-component of electric field due to the horizontally polarized dipole source rotated 90&deg; counterclockwise.]]</td>| Facet Mesh Generation<td>[[Image:PROP269.png|thumb80s|380px|The distribution of the Y-component of electric field due to the horizontally polarized dipole source rotated 90&deg; counterclockwise.]]</td>| SBR Ray Tracing<td>| 160s[[Image:PROP270.png|thumb-|380pxFrequency Computations| 90s|The distribution of the Z-component of electric field due to the horizontally polarized dipole source rotated 90&deg; counterclockwise.]]</td>| Total</tr>| 330s</table>|}
== References ==
[3] M. Hapala and V. Havran. Review: Kd-tree traversal algorithms for ray tracing. Computer Graphics Forum, 30(1):199213, March 2011.
<br /> <hr> [[Image:Top_icon.png|30px]] '''[[#Introduction | Back to the Top of the Page]]''' [[Image:Back_icon.png|30px]] '''[[EM.Cube#EM.Cube Articles & Notes | Check out more Articles & Notes]]''' [[Image:Back_icon.png|30px]] '''[[EM.Cube | Back to EM.Cube Wiki Main Page]]'''
28,333
edits