SMS:CMS-Flow Graphical Interface: Difference between revisions

From XMS Wiki
Jump to navigationJump to search
No edit summary
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
__NOINDEX__
{{TOCright}}
{{TOCright}}
The [[SMS:CMS-Flow|CMS-Flow]] graphical interface includes tools to assist with creating, editing, and debugging a [[SMS:CMS-Flow|CMS-Flow]] model. The [[SMS:CMS-Flow|CMS-Flow]] interface exists in the [[SMS:Cartesian Grid Module|Cartesian Grid Module]]. The [[SMS:Map Module|Map Module]] also provides flexibility when creating the grid.
{{SMS Deprecated Feature}}
The [[SMS:CMS-Flow|CMS-Flow]] graphical interface includes tools to assist with creating, editing, and debugging a [[SMS:CMS-Flow|CMS-Flow]] model. The [[SMS:CMS-Flow|CMS-Flow]] interface exists in the [[SMS:Cartesian Grid Module|Cartesian Grid Module]]. The [[SMS:Map Module|Map Module]] also provides functionality for [[SMS:Cartesian Grid Module#Creating 2D Grids|creating the grid]].


==CMS-Flow Menu==
==CMS-Flow Menu==
The interface consists of tools to create the grid, a ''CMS-Flow'' menu with model specific commands and visualization tools for analyzing the datasets computed by the model.  The menu includes the following commands:
The interface consists of tools to [[SMS:Cartesian Grid Module#Creating 2D Grids|create the grid]], edit an existing grid, and a ''CMS-Flow'' menu with model specific commands and visualization tools for setting up a simulation and analyzing the datasets computed by the model.  The menu includes the following commands:
* '''Assign BC...''' (Boundary Condition) – This command allows the user to assign a boundary condition to the cell string through the ''CMS-Flow Boundary Conditions'' Dialog.  
* '''Assign BC...''' (Boundary Condition) – This command allows the user to assign a boundary condition to the cell string through the ''CMS-Flow Boundary Conditions'' Dialog.  
* '''Delete BC...''' – This command allows the user to delete the boundary condition assigned to that string.
* '''Delete BC...''' – This command allows the user to delete the boundary condition assigned to that string.
Line 16: Line 18:
==Setting Up/Editing a Model==
==Setting Up/Editing a Model==
===Grid Creation===
===Grid Creation===
A grid for CMS-Flow consists of varying sized rectangular cells.  Each cell defines the depth from a fixed datum to the bottom of the water column at the centroid of the cell.  CMS-Flow computes the water level at the cell centroid, and the flow velocity across each cell face. A grid may be created in one of two ways including:
The computational [[SMS:Cartesian Grid Module#Creating 2D Grids|grids]] used by CMS-Flow have evolved over the course of the models existence. Originally, it consisted of a structured set of rectangular cells (all cells the same size)In an effort to become more flexible, the engine was modified to allow varied sizes of cells in a structured grid.  This allowed for varied widths of columns and heights of rows in the grid.  However, the dimension (width or height) was required to be constant for the entire column or column, so this also led to cells with extreme aspect ratios (width/height) which can result in numerical instability.  Finally, the engine was modified to support a [[SMS:Telescoping Grids|telescoping grid or quadtree]] approach.  Currently any of these grid structures can be utilized, but the [[SMS:Telescoping Grids|telescoping grid]] is recommended for efficiency.
 
Each cell defines the depth from a fixed datum to the bottom of the water column at the centroid of the cell.  CMS-Flow computes the water level at the cell centroid, and the flow velocity across each cell face. A grid may be created in one of two ways including:
*Through the Cartesian Grid module – This option allows for the creation of a simple grid consisting of cells of uniform size (they may be rectangular, but all the same size). See [[SMS:Cartesian Grid Module#Creating 2D Grids|Creating 2D Cartesian Grids]] for more information.  This grid may be edited in the Cartesian Grid module (see [[SMS:Cartesian Grid Module#Editing 2D Grids|Editing 2D Grids]]).
*Through the Cartesian Grid module – This option allows for the creation of a simple grid consisting of cells of uniform size (they may be rectangular, but all the same size). See [[SMS:Cartesian Grid Module#Creating 2D Grids|Creating 2D Cartesian Grids]] for more information.  This grid may be edited in the Cartesian Grid module (see [[SMS:Cartesian Grid Module#Editing 2D Grids|Editing 2D Grids]]).
*Using a CMS-Flow Coverage in the Map Module – This method results in a grid that can be edited with all of the tools available in the Cartesian Grid module, but also allows flexibility in two ways:
*Using a CMS-Flow Coverage in the Map Module – This method results in a grid that can be edited with all of the tools available in the Cartesian Grid module, but also allows flexibility in two ways:
<blockquote>
** Refine points may be created to specify cell resolution in one or both directions at specific locations inside the domain.  This allows areas of high concern, and high variability, such as in the mouth of an inlet to be defined with specified high resolution, which transitions to lower resolution in areas away from these regions.
* Refine points may be created to specify cell resolution in one or both directions at specific locations inside the domain.  This allows areas of high concern, and high variability, such as in the mouth of an inlet to be defined with specified high resolution, which transitions to lower resolution in areas away from these regions.
** The grid frame, with the grid definition, is saved and can then be copied and edited to create variations of grid resolution and coverage.
* The grid frame, with the grid definition, is saved and can then be copied and edited to create variations of grid resolution and coverage.
</blockquote>


=== Boundary Conditions ===
=== Boundary Conditions ===
All numeric models require boundary condition data. In CMS-Flow, boundary conditions are defined on cell strings.
All numeric models require boundary condition data. In CMS-Flow, boundary conditions are defined on cell strings.
[[Category:SMS Boundary Conditions|C]]
==== Cell Strings ====
==== Cell Strings ====
For CMS-Flow, a cell string consists of a series of contiguous or adjacent cells. This means the cells share at least a corner and usually an edge.  When SMS creates a grid, it also creates cell strings around the computational domain. This consists of open ocean cells along the edge of the domain as well as the last ocean cells adjacent to the land. SMS will create one cell string for each continuous section of ocean along the grid boundary, one cell string for each section of coastline, and one cell string for each island.  Each cell string may be assigned an attribute to describe the type of boundary condition applied at that location.  If no specification is made, the default boundary condition is a closed boundary (no flow is allowed across this boundary).  This is typically the case for coastline and island cell strings.  These cell strings are actually not even required for CMS-Flow, but are useful when using CMS-Flow output in a [[SMS:PTM|Particle Tracking Model (PTM)]] simulation.
For CMS-Flow, a cell string consists of a series of contiguous or adjacent cells. This means the cells share at least a corner and usually an edge.  When SMS creates a grid, it also creates cell strings around the computational domain. This consists of open ocean cells along the edge of the domain as well as the last ocean cells adjacent to the land. SMS will create one cell string for each continuous section of ocean along the grid boundary, one cell string for each section of coastline, and one cell string for each island.  Each cell string may be assigned an attribute to describe the type of boundary condition applied at that location.  If no specification is made, the default boundary condition is a closed boundary (no flow is allowed across this boundary).  This is typically the case for coastline and island cell strings.  These cell strings are actually not even required for CMS-Flow, but are useful when using CMS-Flow output in a [[SMS:PTM|Particle Tracking Model (PTM)]] simulation.
Line 50: Line 53:
For any selected cells, the '''Assign Cell Attributes''' command allows the user specify the cell as water or land, and if it is water, specify that it is an observation cell.  This option instructs the model to output data at a higher frequency at this location for analysis after the simulation is complete.
For any selected cells, the '''Assign Cell Attributes''' command allows the user specify the cell as water or land, and if it is water, specify that it is an observation cell.  This option instructs the model to output data at a higher frequency at this location for analysis after the simulation is complete.


When entire adjacent rows or columns are selected, they may be merged to decrease resolution in this area of the domain.  (Warning, this operation deletes all cell strings, so all boundary condition specification would be lost if this operation is performed.  Make sure you do this type of operation during grid construction.)
When entire adjacent rows or columns are selected, they may be merged to decrease resolution in this area of the domain.  (Warning, this operation deletes all cell strings, so all boundary condition specification would be lost if this operation is performed.  Make sure this type of operation is done during grid construction.)


=== Model Check===
=== Model Check===
Line 80: Line 83:


[[Category:CMS-Flow|G]]
[[Category:CMS-Flow|G]]
[[Category:Archived CMS-Flow|graph]]

Latest revision as of 14:25, 17 June 2019


The CMS-Flow graphical interface includes tools to assist with creating, editing, and debugging a CMS-Flow model. The CMS-Flow interface exists in the Cartesian Grid Module. The Map Module also provides functionality for creating the grid.

CMS-Flow Menu

The interface consists of tools to create the grid, edit an existing grid, and a CMS-Flow menu with model specific commands and visualization tools for setting up a simulation and analyzing the datasets computed by the model. The menu includes the following commands:

  • Assign BC... (Boundary Condition) – This command allows the user to assign a boundary condition to the cell string through the CMS-Flow Boundary Conditions Dialog.
  • Delete BC... – This command allows the user to delete the boundary condition assigned to that string.
  • Cell Attributes... – This command allows the user to set an individual cells status.
  • Merge Cells – This command allows the user to merge consecutive rows or columns into one.
  • Model Check... – The CMS-Flow Model Check performs a number of checks on the simulation to ensure a valid model.
  • Model Control... – This command allows the user to view and edit the current parameters that affect how CMS-Flow runs and what options are to be included in the current simulation.
  • Run CMS-Flow... – This command launches the CMS-Flow model for the current simulation.

See CMS-Flow Menu for additional information.

Setting Up/Editing a Model

Grid Creation

The computational grids used by CMS-Flow have evolved over the course of the models existence. Originally, it consisted of a structured set of rectangular cells (all cells the same size). In an effort to become more flexible, the engine was modified to allow varied sizes of cells in a structured grid. This allowed for varied widths of columns and heights of rows in the grid. However, the dimension (width or height) was required to be constant for the entire column or column, so this also led to cells with extreme aspect ratios (width/height) which can result in numerical instability. Finally, the engine was modified to support a telescoping grid or quadtree approach. Currently any of these grid structures can be utilized, but the telescoping grid is recommended for efficiency.

Each cell defines the depth from a fixed datum to the bottom of the water column at the centroid of the cell. CMS-Flow computes the water level at the cell centroid, and the flow velocity across each cell face. A grid may be created in one of two ways including:

  • Through the Cartesian Grid module – This option allows for the creation of a simple grid consisting of cells of uniform size (they may be rectangular, but all the same size). See Creating 2D Cartesian Grids for more information. This grid may be edited in the Cartesian Grid module (see Editing 2D Grids).
  • Using a CMS-Flow Coverage in the Map Module – This method results in a grid that can be edited with all of the tools available in the Cartesian Grid module, but also allows flexibility in two ways:
    • Refine points may be created to specify cell resolution in one or both directions at specific locations inside the domain. This allows areas of high concern, and high variability, such as in the mouth of an inlet to be defined with specified high resolution, which transitions to lower resolution in areas away from these regions.
    • The grid frame, with the grid definition, is saved and can then be copied and edited to create variations of grid resolution and coverage.

Boundary Conditions

All numeric models require boundary condition data. In CMS-Flow, boundary conditions are defined on cell strings.

Cell Strings

For CMS-Flow, a cell string consists of a series of contiguous or adjacent cells. This means the cells share at least a corner and usually an edge. When SMS creates a grid, it also creates cell strings around the computational domain. This consists of open ocean cells along the edge of the domain as well as the last ocean cells adjacent to the land. SMS will create one cell string for each continuous section of ocean along the grid boundary, one cell string for each section of coastline, and one cell string for each island. Each cell string may be assigned an attribute to describe the type of boundary condition applied at that location. If no specification is made, the default boundary condition is a closed boundary (no flow is allowed across this boundary). This is typically the case for coastline and island cell strings. These cell strings are actually not even required for CMS-Flow, but are useful when using CMS-Flow output in a Particle Tracking Model (PTM) simulation.

Cell strings may be split into multiple cell strings by selecting the cell where the break is desired and selecting the Split command from the Cellstring menu.

Cell strings may be merged by selecting two (or more) cellstrings that connect in a continuous line, and selecting the Merge command from the Cellstring menu.

Assigning Boundary Conditions

The user assigns a boundary condition by activating the Select Cellstring tool, selecting the cell string, and then selecting the Assign BC... command from the menu. This invokes the CMS-Flow Boundary Conditions dialog and allows the user to define the conditions along the cell string. Multiple cell strings may be selected and assigned at the same time, but this is not common. Typically, the boundary conditions will only be applied to cell strings along the edge of the domain, but may be applied to cell strings on the interior if a portion of the domain is to be excluded from computation (such as cutting off a portion of a bay) for computational efficiency.

Boundary condition types supported by CMS include:

  • Land – This is the default condition and indicates that no flow will cross this boundary.
  • Flow rate-forcing – This allows the user to specify an inflow rate (flow in cubic meters/second at each cell). This can be used to represent a river flowing into the domain.
  • WSE-forcing – This allows the user to specify the water surface elevation as a function of time for the cellstring. Options include specifying a single curve (water level -vs- time) and all the cells will have the same water level at the specified time and extracting individual curves for each cell either from a regional tidal database (ADCIRC database) or from a regional (larger) circulation model.
  • Tidal constituent-forcing – This allows the user to specify the water surface as a function of the principal tidal constituents around the domain. When this option is selected, the user must specify which constituents (along with their amplitudes and phases) in the Model Control dialog. All cells in the tidal cell strings will be forced with the same water levels.
  • WSE and Velocity-forcing – This option allows the user to extract both water levels and velocity values for each cell in the cellstring from a regional model. This requires a regional model to extract from.

Cell Attributes

The user may select cells and assign attributes to them using Select Cell tool and two commands from the CMS-Flow menu.

If a cell is selected, its bathymetric depth may be edited using the "Z" edit field at the top of the screen.

For any selected cells, the Assign Cell Attributes command allows the user specify the cell as water or land, and if it is water, specify that it is an observation cell. This option instructs the model to output data at a higher frequency at this location for analysis after the simulation is complete.

When entire adjacent rows or columns are selected, they may be merged to decrease resolution in this area of the domain. (Warning, this operation deletes all cell strings, so all boundary condition specification would be lost if this operation is performed. Make sure this type of operation is done during grid construction.)

Model Check

Whenever the user issues the Model Check command, and just before launching an analysis, SMS performs a check on the model. If conditions are detected that are out of the ordinary or recommended range, warnings are given with suggestions to correct the problem. If serious problems are detected, errors are reported, again with suggestions.

Model checks include checking on the aspect ratio of the cells, ensuring that compatible boundary conditions are specified, and ensuring that model parameters are within acceptable ranges.

The model check is not all inclusive. Just because a model passes the model check does not guarantee the model will run and produce viable solutions.

Model Control

The CMS-Flow Model Control dialog is used to setup the options that apply to the simulation as a whole. These options include time controls, run types, output options, global parameters, print options and other global settings.

Running the Model

The CMS-Flow files are written automatically with the SMS project file or can be saved separately using the File | Save CMS-Flow or File | Save As menu commands. See the CMS-Flow publications from ERDC for more information on the files used for the CMS-Flow run.

CMS-Flow can be launched from SMS using the CMS-Flow | Run CMS-Flow menu command. A check of some of the common problems called the Model Checker is done each time the model is launched, or by selecting the CMS-Flow | Model Check menu command.

Related Topics