# Discretization

(Difference between revisions)
 Revision as of 20:27, 13 November 2011 (view source)Gcowles (Talk | contribs) (→Discretization Stencil)← Older edit Revision as of 20:28, 13 November 2011 (view source)Gcowles (Talk | contribs) (→Discretization Stencil)Newer edit → Line 12: Line 12: Since none of the triangles in the grid overlap, ''N'' should also be the total number of triangles. On each triangular cell, the three nodes are identified using integral numbers defined as  $N_i(\hat{j})$ where $\hat{j}$  is counted clockwise from 1 to 3. The surrounding triangles that have a common side are counted using integral numbers defined as $NBE_i(\hat{j})$  where $\hat{j}$ is counted clockwise from 1 to 3. At open or coastal solid boundaries, $NBE_i(\hat{j})$  is specified as zero. At each node, the total number of the surrounding triangles with a connection to this node is expressed as ''NT(j)'', and they are counted using integral numbers ''NBi(m)'' where ''m'' is counted clockwise from 1 to ''NT(j)''. Since none of the triangles in the grid overlap, ''N'' should also be the total number of triangles. On each triangular cell, the three nodes are identified using integral numbers defined as  $N_i(\hat{j})$ where $\hat{j}$  is counted clockwise from 1 to 3. The surrounding triangles that have a common side are counted using integral numbers defined as $NBE_i(\hat{j})$  where $\hat{j}$ is counted clockwise from 1 to 3. At open or coastal solid boundaries, $NBE_i(\hat{j})$  is specified as zero. At each node, the total number of the surrounding triangles with a connection to this node is expressed as ''NT(j)'', and they are counted using integral numbers ''NBi(m)'' where ''m'' is counted clockwise from 1 to ''NT(j)''. - FVCOM_vertical_discretization.png + [[Image:FVCOM_vertical_discretization.png|thumb|100px|right|alt=FVCOM vertical discretization|FVCOM vertical discretization]] + To provide a more accurate estimation of the sea-surface elevation, currents and salt and temperature fluxes,  ''u'' and ''v'' are placed at centroids and all scalar variables, such as ζ, H,  , ω, S, T, ρ, are placed at nodes.  Scalar variables at each node are determined by a net flux through the sections linked to centroids and the mid-point of the adjacent sides in the surrounding triangles (called the “tracer control element” or TCE), while u and v at the centroids are calculated based on a net flux through the three sides of that triangle (called the “momentum control element” or MCE). To provide a more accurate estimation of the sea-surface elevation, currents and salt and temperature fluxes,  ''u'' and ''v'' are placed at centroids and all scalar variables, such as ζ, H,  , ω, S, T, ρ, are placed at nodes.  Scalar variables at each node are determined by a net flux through the sections linked to centroids and the mid-point of the adjacent sides in the surrounding triangles (called the “tracer control element” or TCE), while u and v at the centroids are calculated based on a net flux through the three sides of that triangle (called the “momentum control element” or MCE). Similar to other finite-difference models such as POM and ROMS, all the model variables except ω (vertical velocity on the sigma-layer surface) and turbulence variables (such as  and  ) are placed at the mid-level of each  σ layer.  There are no restrictions on the thickness of the σ-layer, which allows users to use either uniform or non-uniform σ-layers. Similar to other finite-difference models such as POM and ROMS, all the model variables except ω (vertical velocity on the sigma-layer surface) and turbulence variables (such as  and  ) are placed at the mid-level of each  σ layer.  There are no restrictions on the thickness of the σ-layer, which allows users to use either uniform or non-uniform σ-layers.

## Revision as of 20:28, 13 November 2011

The original version of FVCOM was developed in the σ-coordinate transformation system. The code was subsequently upgraded to the generalized terrain-following coordinate system in 2006. The discretization forms of governing equations have been significantly modified in this new coordinate system. When the non-hydrostatic version of FVCOM was developed, we implemented a semi-implicit solver, so the current version of FVCOM has two options for the time integration: 1) mode-split and 2) semi-implicit. In this chapter, we provide an example of the discrete forms of the hydrostatic FVCOM in the σ-coordinate transformation system for the mode-split solver. The σ-coordinate transformation is one selection of the generalized terrain-following coordinates, so learning the details of the discretization forms in this coordinate system can make users it easy to learn how the generalized terrain-following coordinates work in FVCOM. A brief description of the semi-implicit solver is given in Chapter 4 when the non-hydrostatic solver is introduced. Users, who are interested in learning the details of discretization forms in the generalized terrain-following coordinate system, can examine the source code directly.

## Discretization Stencil

Similar to a triangular finite element method, the horizontal numerical computational domain is subdivided into a set of non-overlapping unstructured triangular cells. An unstructured triangle is comprised of three nodes, a centroid, and three sides (Fig. 3.1). Let N and M be the total number of centroids and nodes in the computational domain, respectively, then the locations of centroids can be expressed as:

$[X(i),Y(i)], \; \; i=1:N$

and the location of the nodes can be specified as:

$[Xn(j),Yn(j)], \;\; j=1:M$

Since none of the triangles in the grid overlap, N should also be the total number of triangles. On each triangular cell, the three nodes are identified using integral numbers defined as $N_i(\hat{j})$ where $\hat{j}$ is counted clockwise from 1 to 3. The surrounding triangles that have a common side are counted using integral numbers defined as $NBE_i(\hat{j})$ where $\hat{j}$ is counted clockwise from 1 to 3. At open or coastal solid boundaries, $NBE_i(\hat{j})$ is specified as zero. At each node, the total number of the surrounding triangles with a connection to this node is expressed as NT(j), and they are counted using integral numbers NBi(m) where m is counted clockwise from 1 to NT(j).

FVCOM vertical discretization

To provide a more accurate estimation of the sea-surface elevation, currents and salt and temperature fluxes, u and v are placed at centroids and all scalar variables, such as ζ, H, , ω, S, T, ρ, are placed at nodes. Scalar variables at each node are determined by a net flux through the sections linked to centroids and the mid-point of the adjacent sides in the surrounding triangles (called the “tracer control element” or TCE), while u and v at the centroids are calculated based on a net flux through the three sides of that triangle (called the “momentum control element” or MCE). Similar to other finite-difference models such as POM and ROMS, all the model variables except ω (vertical velocity on the sigma-layer surface) and turbulence variables (such as and ) are placed at the mid-level of each σ layer. There are no restrictions on the thickness of the σ-layer, which allows users to use either uniform or non-uniform σ-layers.