SMS:Telescoping Grids: Difference between revisions

From XMS Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
One of the most restrictive attributes of a Cartesian grid is the limited variability in resolution.  By the purest definition, a Cartesian grid consists of square cells, meaning a constant resolution over the entire domain.  A method that can be employed to support variable resolution involves the creation/use of what can be called a ''Telescoping Grid'' (sometimes referred to as a Quad Tree). The [[SMS:CMS-Flow|CMS-Flow]] model is the only numeric engine currently supported by the SMS which allows computation on a telescoping grid.
One of the most restrictive attributes of a Cartesian grid is the limited variability in resolution.  By the purest definition, a Cartesian grid consists of square cells, meaning a constant resolution over the entire domain.  A method that can be employed to support variable resolution involves the creation/use of what can be called a ''Telescoping Grid'' (sometimes referred to as a Quad Tree). A Quad Tree is a two-dimensional recursive spatial subdivision. Each region can be subdivided into four child regions. In the SMS application, the regions are always square or rectangular.
 
The [[SMS:CMS-Flow|CMS-Flow]] model is the only numeric engine currently supported by the SMS which allows computation on a telescoping grid.


The generation of a telescoping grid involves:
The generation of a telescoping grid involves:
Line 6: Line 8:


== Base Grid ==
== Base Grid ==
The SMS generates a telescoping grid from a user defined base grid.  The user defines this base grid with the approach that is used in any other grid generation operation in the SMS consisting of the definition of a grid frame and either a base cell dimension or number of cells in each of the coordinate directions (I,J)
The SMS generates a telescoping grid from a user defined base grid.  The user defines this base grid with the approach that is used in any other grid generation operation in the SMS consisting of the definition of a grid frame to define grid extents and either a base cell dimension or number of cells in each of the coordinate directions (I,J). The base grid parameters are specified as a grid frame properties or when using '''Map→2D Grid'''.


== Refinement Features ==
== Refinement Features ==
with constant cell size (rectangular or square cells) serves as the background resolution. This base grid is the first parameter for generation of
Theoretically a refinement feature could be a single point, a linear feature (arc) or a region (polygon).  Future capabilities may allow for a variety of refinement features, but currently the SMS telescoping grid generation capability allows the user to define feature polygons that enclose areas for which a specific resolution is desired. The user assigns a "maximum grid cell size" as an attribute on the polygon (double click on the polygon and assign polygon attributes).
CMS-Flow can use a grid with varying resolution which is referred to as a telescoping grid.  
When the SMS generates the telescoping grid, when a cell is generated, the polygon containing the cell centroid is found (if it exists).  If either cell dimension is larger than the maximum specified size for the polygon, the cell is split into four sub-cells and the process repeated.
 
Note, when rectangular cells are being generated (as specified on the base grid), this constraint will force the larger dimension of the cell to be smaller than the specified ''maximum size'', so the cell may be significantly smaller than the specified size.


Telescoping grids are created by creating polygons where the user wants the different levels of refinement in a CMS-Flow coverage. Each polygon is assigned the maximum allowable size for cells in this area. When using '''Map→2D Grid''', specify the size of the base grid. SMS will build a telescoping grid with as many levels as required to satisfy the constraints imposed by the polygons.
=== Choosing Base Cell Size ===
In addition to the limitation noted in the previous paragraph between a single maximum size and a two dimensional cell, the relationship between the selected base cell size and the maximum specified sizes can also cause what appear to be overly refined grids.
Since the cells are created in discrete increments (half of the parent cell dimension), the actual generated size may be smaller than the specified target simply due to binary limitations.  For example, if a maximum size of 5 is specified, and the base cell size is 30, the first acceptable cell size that meets the criteria of 5 is actually 3.75 (30/2^3  - 30, 15, 7.5, 3.75).  In this case, 3.75 is only 75% of the specified maximum, resulting in cells that are 75% smaller than the user specified acceptable resolution (in the larger direction).


Telescoping grids have a base grid with a specified cell size. The cells in the child grid of the base grid have half the cell size (half in both I and J directions). This means each cell is divided into 4 cells.
This perceived difference can be reduced by specifying a compatible base cell size. In the previous example, a base cell size of 20 (instead of 30) would result in a cell size of 5 (20/2^2), exactly matching the specified maximum. However, since there are two dimensions to the base cell size, and only one target size, and there can be multiple refinement polygons, each with a specified maximum cell size, the relationship can seem complex.


The SMS includes a tool for telescoping or quad tree grids to compute an ideal base cell size.  This option appears in the [[SMS:Grid Frame Dialog|SMS Grid Frame Dialog]] which is accessible either by right clicking on the grid frame or when using '''Map→2D Grid'''.


<blockquote>''Note: Telescoping grids in SMS 11.0 are introduced with limited capability and no support. There are known issues such as problems with shading that will not be addressed in SMS 11.0.''</blockquote>
<blockquote>''Note: Telescoping Cartesian grids will be replaced with a more memory efficient Quad Tree structure in SMS 12.0. ''</blockquote>





Revision as of 18:18, 15 September 2014

One of the most restrictive attributes of a Cartesian grid is the limited variability in resolution. By the purest definition, a Cartesian grid consists of square cells, meaning a constant resolution over the entire domain. A method that can be employed to support variable resolution involves the creation/use of what can be called a Telescoping Grid (sometimes referred to as a Quad Tree). A Quad Tree is a two-dimensional recursive spatial subdivision. Each region can be subdivided into four child regions. In the SMS application, the regions are always square or rectangular.

The CMS-Flow model is the only numeric engine currently supported by the SMS which allows computation on a telescoping grid.

The generation of a telescoping grid involves:

  • A base grid
  • Refinement features

Base Grid

The SMS generates a telescoping grid from a user defined base grid. The user defines this base grid with the approach that is used in any other grid generation operation in the SMS consisting of the definition of a grid frame to define grid extents and either a base cell dimension or number of cells in each of the coordinate directions (I,J). The base grid parameters are specified as a grid frame properties or when using Map→2D Grid.

Refinement Features

Theoretically a refinement feature could be a single point, a linear feature (arc) or a region (polygon). Future capabilities may allow for a variety of refinement features, but currently the SMS telescoping grid generation capability allows the user to define feature polygons that enclose areas for which a specific resolution is desired. The user assigns a "maximum grid cell size" as an attribute on the polygon (double click on the polygon and assign polygon attributes). When the SMS generates the telescoping grid, when a cell is generated, the polygon containing the cell centroid is found (if it exists). If either cell dimension is larger than the maximum specified size for the polygon, the cell is split into four sub-cells and the process repeated. Note, when rectangular cells are being generated (as specified on the base grid), this constraint will force the larger dimension of the cell to be smaller than the specified maximum size, so the cell may be significantly smaller than the specified size.

Choosing Base Cell Size

In addition to the limitation noted in the previous paragraph between a single maximum size and a two dimensional cell, the relationship between the selected base cell size and the maximum specified sizes can also cause what appear to be overly refined grids. Since the cells are created in discrete increments (half of the parent cell dimension), the actual generated size may be smaller than the specified target simply due to binary limitations. For example, if a maximum size of 5 is specified, and the base cell size is 30, the first acceptable cell size that meets the criteria of 5 is actually 3.75 (30/2^3 - 30, 15, 7.5, 3.75). In this case, 3.75 is only 75% of the specified maximum, resulting in cells that are 75% smaller than the user specified acceptable resolution (in the larger direction).

This perceived difference can be reduced by specifying a compatible base cell size. In the previous example, a base cell size of 20 (instead of 30) would result in a cell size of 5 (20/2^2), exactly matching the specified maximum. However, since there are two dimensions to the base cell size, and only one target size, and there can be multiple refinement polygons, each with a specified maximum cell size, the relationship can seem complex.

The SMS includes a tool for telescoping or quad tree grids to compute an ideal base cell size. This option appears in the SMS Grid Frame Dialog which is accessible either by right clicking on the grid frame or when using Map→2D Grid.

Note: Telescoping Cartesian grids will be replaced with a more memory efficient Quad Tree structure in SMS 12.0.