SMS:Mesh Module: Difference between revisions

From XMS Wiki
Jump to navigationJump to search
No edit summary
 
(18 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The 2D Mesh Module is used to manipulate 2D unstructured grids (referred to as a mesh inside of SMS). A mesh consists of nodes that are grouped together to form elements. These nodes and elements define the computational domain of the numerical model.  In addition to nodes and elements, a mesh may assign additional information to the nodes and elements, such as material values assigned to elements and boundary conditions assigned to nodes. In general, this additional information is used as input data for the numerical model.
{{TOCright}}
The 2D Mesh Module includes tools to store, interrogate, and manipulate 2D unstructured grids (referred to as a mesh inside of SMS).  


== Nodes ==
The Mesh module is included with all [http://www.aquaveo.com/software/sms-pricing paid editions] of SMS.
Nodes are the basic building blocks of elements in a mesh. Nodes store elevation and other [[SMS:Datasets|dataset]] values. Nodes can also be used for building nodestrings and assigning boundary conditions. The density of mesh nodes helps determine the quality of solution data and can be important to model stability. See [[SMS:2D Mesh Nodes Menu|2D Mesh Nodes Menu]] for more information.
[[Category:Link to Store]]


== Elements ==
== Mesh ==
 
A mesh consists of nodes that are grouped together to form elements. These nodes and elements define the computational domain of the numerical model.
A numerical simulation requires a geometric definition of its domain.  For many numerical analysis codes, this definition is a mesh.
 
=== Nodes ===
Nodes are the basic building blocks of elements in a mesh. A node consists of a location (X,Y) with an associated elevation.  Other [[SMS:Datasets|dataset]] values can also be associated with a node. In the traditional mesh based definition of simulations, nodes can also be used for building nodestrings and assigning boundary conditions. The density of mesh nodes helps determine the quality of solution data and can be important to model stability. See [[SMS:2D Mesh Nodes Menu|2D Mesh Nodes Menu]] for more information.
 
=== Elements ===
[[Image:TypesOfMeshElements.jpg|thumb|400px|right|Mesh Element Types]]
[[Image:TypesOfMeshElements.jpg|thumb|400px|right|Mesh Element Types]]
Elements are used to describe the area to be modeled. Elements are formed by joining nodes. The element types supported vary from model to model.  Element types include:
Elements are used to describe the area to be modeled. Elements are formed by joining nodes. The element types supported vary from model to model.  Element types include:


=== 1D elements ===
; 1D elements :
* Three-node line
* Three-node line


=== Triangular Elements ===
; Triangular Elements :
* Three-node linear triangule
* Three-node linear triangle
* Six-node quadratic triangle
* Six-node quadratic triangle


=== Quadratic (order of solution) Elements ===
; Quadratic (order of solution) Elements :
* Eight-node “serendipity” quadrilateral
* Eight-node "serendipity" quadrilateral
* Nine-node “Lagrangian” quadrilateral
* Nine-node "Lagrangian" quadrilateral


Water surface and ground elevations are interpolated linearly within each element based on values at the corner nodes.  Velocity is interpolated using a quadratic approximation based on values at all the nodes of the element.  The quadrilateral elements use identical linear interpolation functions, but their quadratic functions differ because of the presence of an additional node at the center of the nine-node quadrilateral element.
Water surface and ground elevations are interpolated linearly within each element based on values at the corner nodes.  Velocity is interpolated using a quadratic approximation based on values at all the nodes of the element.  The quadrilateral elements use identical linear interpolation functions, but their quadratic functions differ because of the presence of an additional node at the center of the nine-node quadrilateral element.
Line 25: Line 34:
[[SMS:Datasets|Datasets]] in a mesh store scalar or vector values at each node.  Dataset Active/Inactive areas (generally indicating wet vs dry areas) can be defined on elements or be determined from specific NULL values (often -999) on the nodes themselves.  Datasets are used for input data primarily for bathymetry values.  Datasets are generally the primary output from a numeric model.  Datasets are used with visualization options such as contours and vectors as well as data extraction tools like observation profile plots.
[[SMS:Datasets|Datasets]] in a mesh store scalar or vector values at each node.  Dataset Active/Inactive areas (generally indicating wet vs dry areas) can be defined on elements or be determined from specific NULL values (often -999) on the nodes themselves.  Datasets are used for input data primarily for bathymetry values.  Datasets are generally the primary output from a numeric model.  Datasets are used with visualization options such as contours and vectors as well as data extraction tools like observation profile plots.


== Node/Element properties ==
== Mesh Based Simulation ==
Traditionally, the geometry has been the basis of the simulation in SMS.  This is referred to as a geometry centric model.  For mesh based models, this means that in addition to its geometric attributes (nodes and elements), the mesh also stores the simulation parameters, including model settings, boundary conditions and areal properties such as material types.
 
Starting with version 9 of SMS, an alternative, explicit simulation based modeling approach was introduced for the TUFLOW model. Since that version a slow migration has been occurring moving away from the geometry based method.
 
=== Node/Element properties ===
In addition to datasets, nodes and elements sometimes need to store additional information generally for model setup.  The most common example of this is material types which are assigned to elements.
In addition to datasets, nodes and elements sometimes need to store additional information generally for model setup.  The most common example of this is material types which are assigned to elements.


== Nodestrings ==
; Nodestrings : A collection of nodes can be formed into a nodestring.  Nodestrings are most commonly used to assign boundary conditions such as a flowrate or water-surface elevation.  Nodestrings can also be used for mesh renumbering, forcing break lines, and boundary smoothing. Finally, a nodestring can store attributes pertinent to a location such as the  [[SMS:Total Flow Nodestring|total flow nodestring]].
A collection of nodes can be formed into a nodestring.  Nodestrings are most commonly used to assign boundary conditions such as a flowrate or water-surface elevation.  Nodestrings can also be used for mesh renumbering, forcing break lines, and boundary smoothing. Finally, a nodestring can store attributes pertinent to a location such as the  [[SMS:Total Flow Nodestring|total flow nodestring]].


== Mesh Generation ==
== Mesh Generation ==
Line 45: Line 58:
== Mesh Models ==
== Mesh Models ==
SMS has interfaces to several models that use meshes for computations and boundary conditions. These include:
SMS has interfaces to several models that use meshes for computations and boundary conditions. These include:
*[[SMS:ADCIRC|ADCIRC]]
*[[SMS:ADH|ADH]]
*[[SMS:CGWAVE|CGWAVE]]
*[[SMS:CGWAVE|CGWAVE]]
*[[SMS:FESWMS|FESWMS-2DH]]
*[[SMS:FESWMS|FESWMS-2DH]]
*[[SMS:ADCIRC|ADCIRC]]
*[[SMS:Mesh Generation|Generic Mesh]] – [[SMS:SRH-2D|SRH-2D]]
*[[SMS:Generic Model|Generic Model]]
*[[SMS:TABS|TABS – (RMA2, RMA4)]]
*[[SMS:TABS|TABS – (RMA2, RMA4)]]


In addition to the models with complete interfaces, the mesh module contains the Generic Model interface which allows users to customize SMS to generate data for a user defined model.
In addition to the models with complete interfaces, the mesh module contains the Generic Model interface which can customize SMS to generate data for a user defined model.


The finite difference model [[SMS:TUFLOW|TUFLOW]] uses meshes for post-processing but not for building model domains.
The finite difference model [[SMS:TUFLOW|TUFLOW]] uses meshes for post-processing but not for building model domains.


==== Current Numerical Model ====
==== Current Numerical Model ====
The mesh module is set up to be used with a single numerical model analysis engine at any given time. The current numerical model is changed using the ''Data'' Menu, ''Switch Current Model'' menu command. SMS shows only those tools in the tool palette and those menus in the ''Menu Bar'' which are relevant to the current numerical model. After a finite element mesh has been read, boundary conditions and material properties can be assigned using the commands in the menus associated with the current numerical model.  The current model on startup can be changed in the [[SMS:Preferences|Preferences Dialog]].
The mesh module is set up to be used with a single numerical model analysis engine at any given time. The current numerical model is changed using the ''Data'' | '''Switch Current Model''' menu command. SMS shows only those tools in the tool palette and those menus in the ''Menu Bar'' which are relevant to the current numerical model. After a finite element mesh has been read, boundary conditions and material properties can be assigned using the commands in the menus associated with the current numerical model.  The current model on startup can be changed in the [[SMS:Preferences|''Preferences'' dialog]].


== Mesh Module Tools ==
== Mesh Module Tools ==
Line 73: Line 89:
{{Template:Navbox SMS}}
{{Template:Navbox SMS}}


[[Category:SMS 2D Mesh|2D Mesh Module]]
[[Category:SMS 2D Mesh|Mesh Module]]
[[Category:Mesh Modules]]

Latest revision as of 19:53, 14 February 2023


The 2D Mesh Module includes tools to store, interrogate, and manipulate 2D unstructured grids (referred to as a mesh inside of SMS).

The Mesh module is included with all paid editions of SMS.

Mesh

A mesh consists of nodes that are grouped together to form elements. These nodes and elements define the computational domain of the numerical model. A numerical simulation requires a geometric definition of its domain. For many numerical analysis codes, this definition is a mesh.

Nodes

Nodes are the basic building blocks of elements in a mesh. A node consists of a location (X,Y) with an associated elevation. Other dataset values can also be associated with a node. In the traditional mesh based definition of simulations, nodes can also be used for building nodestrings and assigning boundary conditions. The density of mesh nodes helps determine the quality of solution data and can be important to model stability. See 2D Mesh Nodes Menu for more information.

Elements

Mesh Element Types

Elements are used to describe the area to be modeled. Elements are formed by joining nodes. The element types supported vary from model to model. Element types include:

1D elements
  • Three-node line
Triangular Elements
  • Three-node linear triangle
  • Six-node quadratic triangle
Quadratic (order of solution) Elements
  • Eight-node "serendipity" quadrilateral
  • Nine-node "Lagrangian" quadrilateral

Water surface and ground elevations are interpolated linearly within each element based on values at the corner nodes. Velocity is interpolated using a quadratic approximation based on values at all the nodes of the element. The quadrilateral elements use identical linear interpolation functions, but their quadratic functions differ because of the presence of an additional node at the center of the nine-node quadrilateral element.

Mesh Datasets

Datasets in a mesh store scalar or vector values at each node. Dataset Active/Inactive areas (generally indicating wet vs dry areas) can be defined on elements or be determined from specific NULL values (often -999) on the nodes themselves. Datasets are used for input data primarily for bathymetry values. Datasets are generally the primary output from a numeric model. Datasets are used with visualization options such as contours and vectors as well as data extraction tools like observation profile plots.

Mesh Based Simulation

Traditionally, the geometry has been the basis of the simulation in SMS. This is referred to as a geometry centric model. For mesh based models, this means that in addition to its geometric attributes (nodes and elements), the mesh also stores the simulation parameters, including model settings, boundary conditions and areal properties such as material types.

Starting with version 9 of SMS, an alternative, explicit simulation based modeling approach was introduced for the TUFLOW model. Since that version a slow migration has been occurring moving away from the geometry based method.

Node/Element properties

In addition to datasets, nodes and elements sometimes need to store additional information generally for model setup. The most common example of this is material types which are assigned to elements.

Nodestrings
A collection of nodes can be formed into a nodestring. Nodestrings are most commonly used to assign boundary conditions such as a flowrate or water-surface elevation. Nodestrings can also be used for mesh renumbering, forcing break lines, and boundary smoothing. Finally, a nodestring can store attributes pertinent to a location such as the total flow nodestring.

Mesh Generation

See Mesh Generation for more information.

Editing a Mesh

Whenever practical a mesh should be reconstructed from a conceptual model rather than edited in the mesh module. Often this isn't an option and a mesh must be edited by hand. The 2D Mesh Module Tools are used to create and edit meshes within the mesh module.

Mesh Visualization

After an analysis, output data at each node of the mesh can be used to generate linear or color filled contours as well as display vector arrows to visualize model solutions. Animations can be generated that shows changes through time for a time-varying solution. Meshes can also be used with flowtrace and multiple view animations.

Advantages of a Mesh

Meshes and other types of unstructured grids (such as TINs) have the advantage they can include a wide range of element sizes and transition gradually between them. Coastal models are often extreme examples of this sometimes with elements as small as a few meters and as large as many kilometers in the same domain. This allows a very large domain while keeping model computation time to a reasonable level.

Mesh Models

SMS has interfaces to several models that use meshes for computations and boundary conditions. These include:

In addition to the models with complete interfaces, the mesh module contains the Generic Model interface which can customize SMS to generate data for a user defined model.

The finite difference model TUFLOW uses meshes for post-processing but not for building model domains.

Current Numerical Model

The mesh module is set up to be used with a single numerical model analysis engine at any given time. The current numerical model is changed using the Data | Switch Current Model menu command. SMS shows only those tools in the tool palette and those menus in the Menu Bar which are relevant to the current numerical model. After a finite element mesh has been read, boundary conditions and material properties can be assigned using the commands in the menus associated with the current numerical model. The current model on startup can be changed in the Preferences dialog.

Mesh Module Tools

See Mesh Module Tools for more information.

Mesh Module Menus

See 2D Mesh Module Menus for more information.

Related Topics