namespace regrid_edge_slopes

Overview

Routines that estimate edge slopes to be used in high-order reconstruction schemes. More…

namespace regrid_edge_slopes {

// global functions

subroutine, public edge_slopes_implicit_h3(N N, h h, u u, edge_slopes edge_slopes, h_neglect h_neglect);
subroutine, public edge_slopes_implicit_h5(N N, h h, u u, edge_slopes edge_slopes, h_neglect h_neglect);

} // namespace regrid_edge_slopes

Detailed Documentation

Routines that estimate edge slopes to be used in high-order reconstruction schemes.

Global Functions

subroutine, public edge_slopes_implicit_h3(
    N N,
    h h,
    u u,
    edge_slopes edge_slopes,
    h_neglect h_neglect
    )

Compute ih4 edge slopes (implicit third order accurate) in the same units as h.

Compute edge slopes based on third-order implicit estimates. Note that the estimates are fourth-order accurate on uniform grids

Third-order implicit estimates of edge slopes are based on a two-cell stencil. A tridiagonal system is set up and is based on expressing the edge slopes in terms of neighboring cell averages. The generic relationship is

\[\alpha u'_{i-1/2} + u'_{i+1/2} + \beta u'_{i+3/2} = a \bar{u}_i + b \bar{u}_{i+1}\]

and the stencil looks like this i i+1.. o— o— o.. i-1/2 i+1/2 i+3/2

In this routine, the coefficients \(\alpha\), \(\beta\), a and b are computed, the tridiagonal system is built, boundary conditions are prescribed and the system is solved to yield edge-slope estimates.

There are N+1 unknowns and we are able to write N-1 equations. The boundary conditions close the system.

Parameters:

n

Number of cells

h

cell widths (size N)

u

cell average properties (size N)

edge_slopes

Returned edge slopes, with the same units as u divided by the units of h.

h_neglect

A negligibly small width

subroutine, public edge_slopes_implicit_h5(
    N N,
    h h,
    u u,
    edge_slopes edge_slopes,
    h_neglect h_neglect
    )

Compute ih5 edge values (implicit fifth order accurate)

Parameters:

n

Number of cells

h

cell widths (size N)

u

cell average properties (size N)

edge_slopes

Returned edge slopes, with the same units as u divided by the units of h.

h_neglect

A negligibly small width in the same units as h.