Skip to content

adam_fdv_operators_library

ADAM, finite difference/volume operators approximations library.

Source: src/lib/common/adam_fdv_operators_library.F90

Dependencies

Contents

Variables

NameTypeAttributesDescription
S_MAXinteger(kind=I4P)parameterMaximum (half) stencil length.
FD0_CC_S1real(kind=R8P)parameterFD0C, S1.
FD0_CC_S2real(kind=R8P)parameterFD0C, S2.
FD0_CC_S3real(kind=R8P)parameterFD0C, S3.
FD0_CC_S4real(kind=R8P)parameterFD0C, S4.
FD0_CC_S5real(kind=R8P)parameterFD0C, S5.
FD0_CCreal(kind=R8P)parameterFinite difference derivative 0 centered coefficients.
FD1_CC_S1real(kind=R8P)parameterFD1C, S1.
FD1_CC_S2real(kind=R8P)parameterFD1C, S2.
FD1_CC_S3real(kind=R8P)parameterFD1C, S3.
FD1_CC_S4real(kind=R8P)parameterFD1C, S4.
FD1_CC_S5real(kind=R8P)parameterFD1C, S5.
FD1_CCreal(kind=R8P)parameterFinite difference derivative 1 centered coefficients.
FD2_CC_S1real(kind=R8P)parameterFD2C, S1.
FD2_CC_S2real(kind=R8P)parameterFD2C, S2.
FD2_CC_S3real(kind=R8P)parameterFD2C, S3.
FD2_CC_S4real(kind=R8P)parameterFD2C, S4.
FD2_CC_S5real(kind=R8P)parameterFD2C, S5.
FD2_CCreal(kind=R8P)parameterFinite difference derivative 2 centered coefficients.
FD3_CC_S1real(kind=R8P)parameterFD3C,S1.
FD3_CC_S2real(kind=R8P)parameterFD3C,S2.
FD3_CC_S3real(kind=R8P)parameterFD3C,S3.
FD3_CC_S4real(kind=R8P)parameterFD3C,S4.
FD3_CC_S5real(kind=R8P)parameterFD3C,S5.
FD3_CCreal(kind=R8P)parameterFinite difference derivative 3 centered coefficients.
FD4_CC_S1real(kind=R8P)parameterFD4C,S1.
FD4_CC_S2real(kind=R8P)parameterFD4C,S2.
FD4_CC_S3real(kind=R8P)parameterFD4C,S3.
FD4_CC_S4real(kind=R8P)parameterFD4C,S4.
FD4_CC_S5real(kind=R8P)parameterFD4C,S5.
FD4_CCreal(kind=R8P)parameterFinite difference derivative 4 centered coefficients.
FD5_CC_S2real(kind=R8P)parameterFD5C,S1.
FD5_CC_S1real(kind=R8P)parameterFD5C,S2.
FD5_CC_S3real(kind=R8P)parameterFD5C,S3.
FD5_CC_S4real(kind=R8P)parameterFD5C,S4.
FD5_CC_S5real(kind=R8P)parameterFD5C,S5.
FD5_CCreal(kind=R8P)parameterFinite difference derivative 5 centered coefficients.
FD6_CC_S2real(kind=R8P)parameterFD6C,S1.
FD6_CC_S1real(kind=R8P)parameterFD6C,S2.
FD6_CC_S3real(kind=R8P)parameterFD6C,S3.
FD6_CC_S4real(kind=R8P)parameterFD6C,S4.
FD6_CC_S5real(kind=R8P)parameterFD6C,S5.
FD6_CCreal(kind=R8P)parameterFinite difference derivative 6 centered coefficients.
FV1_CC_S1real(kind=R8P)parameterFV1C, S1.
FV1_CC_S2real(kind=R8P)parameterFV1C, S2.
FV1_CC_S3real(kind=R8P)parameterFV1C, S3.
FV1_CC_S4real(kind=R8P)parameterFV1C, S4.
FV1_CC_S5real(kind=R8P)parameterFV1C, S5.
FV1_CCreal(kind=R8P)parameterFinite volume centered reconstruction coefficients.
FV1_UR_S1real(kind=R8P)parameterFV1UR, S1.
FV1_UR_S2real(kind=R8P)parameterFV1UR, S2.
FV1_UR_S3real(kind=R8P)parameterFV1UR, S3.
FV1_UR_S4real(kind=R8P)parameterFV1UR, S4.
FV1_UR_S5real(kind=R8P)parameterFV1UR, S5.
FV1_URreal(kind=R8P)parameterFinite volume right-upwind reconstruction coefficients.
FV1_UL_S1real(kind=R8P)parameterFV1UL, S1.
FV1_UL_S2real(kind=R8P)parameterFV1UL, S2.
FV1_UL_S3real(kind=R8P)parameterFV1UL, S3.
FV1_UL_S4real(kind=R8P)parameterFV1UL, S4.
FV1_UL_S5real(kind=R8P)parameterFV1UL, S5.
FV1_ULreal(kind=R8P)parameterFinite volume left-upwind reconstruction coefficients.

Interfaces

compute_curl_fdv_interface

compute_derivative1_fdv_interface

compute_derivative2_fdv_interface

compute_derivative3_fdv_interface

compute_derivative4_fdv_interface

compute_derivative5_fdv_interface

compute_derivative6_fdv_interface

compute_divergence_fdv_interface

compute_gradient_fdv_interface

compute_laplacian_fdv_interface

Subroutines

compute_curl_fd_centered

Compute curl of q vector field with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_curl_fd_centered(s, dxyz, q, curl)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dxyzreal(kind=R8P)inSpace steps [1:3].
qreal(kind=R8P)inVector field over the stencil [1:3,1-s:1+s,1-s:1+s,1-s:1+s].
curlreal(kind=R8P)outCurl of q [1:3].

Call graph

compute_reconstruction_r_fd_centered

Compute reconstruction at right interface from cell center average values. Centered schemes.

Attributes: pure

fortran
subroutine compute_reconstruction_r_fd_centered(s, q, qr)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
qreal(kind=R8P)inScalar field over the stencil [1-s:s].
qrreal(kind=R8P)outReconstruction at right interface of field.

compute_derivative1_fd_centered

Compute derivative of order 1 with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_derivative1_fd_centered(s, ds, q, dq_ds)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, order=2*s.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
dq_dsreal(kind=R8P)outDerivative of order 1 of q, dq/ds.

Call graph

compute_derivative2_fd_centered

Compute derivative of order 2 with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_derivative2_fd_centered(s, ds, q, d2q_ds2)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, order=2*s.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d2q_ds2real(kind=R8P)outDerivative of order 2 of q, d2q/ds2.

Call graph

compute_derivative3_fd_centered

Compute derivative of order 3 with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_derivative3_fd_centered(s, ds, q, d3q_ds3)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, order=2*s.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d3q_ds3real(kind=R8P)outDerivative of order 3 of q, d3q/ds3.

compute_derivative4_fd_centered

Compute derivative of order 4 with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_derivative4_fd_centered(s, ds, q, d4q_ds4)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, order=2*s-2.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d4q_ds4real(kind=R8P)outDerivative of order 4 of q, d4q/ds4.

compute_derivative5_fd_centered

Compute derivative of order 5 with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_derivative5_fd_centered(s, ds, q, d5q_ds5)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, order=2*s.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d5q_ds5real(kind=R8P)outDerivative of order 5 of q, d5q/ds5.

compute_derivative6_fd_centered

Compute derivative of order 6 with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_derivative6_fd_centered(s, ds, q, d6q_ds6)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, order=2*s-4.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d6q_ds6real(kind=R8P)outDerivative of order 6 of q, d6q/ds6.

compute_divergence_fd_centered

Compute divergence of q vector field with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_divergence_fd_centered(s, dxyz, q, divergence)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dxyzreal(kind=R8P)inSpace steps [1:3].
qreal(kind=R8P)inVector field over the stencil [1:3,1-s:1+s,1-s:1+s,1-s:1+s].
divergencereal(kind=R8P)outDivergence of q.

Call graph

compute_gradient_fd_centered

Compute gradient of q scalar field with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_gradient_fd_centered(s, dxyz, q, gradient)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dxyzreal(kind=R8P)inSpace steps [1:3].
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s,1-s:1+s,1-s:1+s].
gradientreal(kind=R8P)outGradient of q [1:3].

Call graph

compute_laplacian_fd_centered

Compute laplacian of q scalar field with finite difference centered scheme.

Attributes: pure

fortran
subroutine compute_laplacian_fd_centered(s, dxyz, q, laplacian)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dxyzreal(kind=R8P)inSpace steps [1:3].
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s,1-s:1+s,1-s:1+s].
laplacianreal(kind=R8P)outLaplacian of q.

Call graph

compute_curl_fv_centered

Compute curl of q vector field with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_curl_fv_centered(s, dxyz, q, curl)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dxyzreal(kind=R8P)inSpace steps [1:3].
qreal(kind=R8P)inVector field over the stencil [1:3,1-s:1+s,1-s:1+s,1-s:1+s].
curlreal(kind=R8P)outCurl of q [1:3].

Call graph

compute_derivative1_fv_centered

Compute derivative of order 1 with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_derivative1_fv_centered(s, ds, q, dq_ds)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
dq_dsreal(kind=R8P)outDerivative of order 1 of q, dq/ds.

Call graph

compute_derivative2_fv_centered

Compute derivative of order 2 with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_derivative2_fv_centered(s, ds, q, d2q_ds2)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d2q_ds2real(kind=R8P)outDerivative of order 2 of q, d2q/ds2.

Call graph

compute_derivative3_fv_centered

Compute derivative of order 3 with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_derivative3_fv_centered(s, ds, q, d3q_ds3)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d3q_ds3real(kind=R8P)outDerivative of order 3 of q, d3q/ds3.

Call graph

compute_derivative4_fv_centered

Compute derivative of order 4 with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_derivative4_fv_centered(s, ds, q, d4q_ds4)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d4q_ds4real(kind=R8P)outDerivative of order 4 of q, d4q/ds4.

Call graph

compute_derivative5_fv_centered

Compute derivative of order 5 with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_derivative5_fv_centered(s, ds, q, d5q_ds5)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d5q_ds5real(kind=R8P)outDerivative of order 5 of q, d5q/ds5.

Call graph

compute_derivative6_fv_centered

Compute derivative of order 6 with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_derivative6_fv_centered(s, ds, q, d6q_ds6)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s].
d6q_ds6real(kind=R8P)outDerivative of order 6 of q, d6q/ds6.

Call graph

compute_divergence_fv_centered

Compute divergence of q vector field with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_divergence_fv_centered(s, dxyz, q, divergence)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dxyzreal(kind=R8P)inSpace steps [1:3].
qreal(kind=R8P)inVector field over the stencil [1:3,1-s:1+s,1-s:1+s,1-s:1+s].
divergencereal(kind=R8P)outDivergence of q.

Call graph

compute_gradient_fv_centered

Compute gradient of q scalar field with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_gradient_fv_centered(s, dxyz, q, gradient)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dxyzreal(kind=R8P)inSpace steps [1:3].
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s,1-s:1+s,1-s:1+s].
gradientreal(kind=R8P)outGradient of q [1:3].

Call graph

compute_laplacian_fv_centered

Compute laplacian of q scalar field with finite volume centered scheme.

Attributes: pure

fortran
subroutine compute_laplacian_fv_centered(s, dxyz, q, laplacian)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dxyzreal(kind=R8P)inSpace steps [1:3].
qreal(kind=R8P)inScalar field over the stencil [1-s:1+s,1-s:1+s,1-s:1+s].
laplacianreal(kind=R8P)outLaplacian of q.

Call graph

compute_reconstruction_r_fv_centered

Compute reconstruction at right interface from cell center average values. Centered schemes.

Attributes: pure

fortran
subroutine compute_reconstruction_r_fv_centered(s, q, qr)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
qreal(kind=R8P)inScalar field over the stencil [1-s:s].
qrreal(kind=R8P)outReconstruction at right interface of field.

Call graph

compute_derivative1_fv_rupwind

Compute derivative of order 1 with finite volume right-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative1_fv_rupwind(s, ds, q, dq_ds)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [0:1+s].
dq_dsreal(kind=R8P)outDerivative of order 1 of q, dq/ds.

Call graph

compute_derivative2_fv_rupwind

Compute derivative of order 2 with finite volume right-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative2_fv_rupwind(s, ds, q, d2q_ds2)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [0:1+s].
d2q_ds2real(kind=R8P)outDerivative of order 2 of q, d2q/ds2.

Call graph

compute_derivative3_fv_rupwind

Compute derivative of order 3 with finite volume right-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative3_fv_rupwind(s, ds, q, d3q_ds3)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [0:1+s].
d3q_ds3real(kind=R8P)outDerivative of order 3 of q, d3q/ds3.

Call graph

compute_derivative4_fv_rupwind

Compute derivative of order 4 with finite volume right-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative4_fv_rupwind(s, ds, q, d4q_ds4)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [0:1+s].
d4q_ds4real(kind=R8P)outDerivative of order 4 of q, d4q/ds4.

Call graph

compute_derivative5_fv_rupwind

Compute derivative of order 5 with finite volume right-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative5_fv_rupwind(s, ds, q, d5q_ds5)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [0:1+s].
d5q_ds5real(kind=R8P)outDerivative of order 5 of q, d5q/ds5.

Call graph

compute_derivative6_fv_rupwind

Compute derivative of order 6 with finite volume right-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative6_fv_rupwind(s, ds, q, d6q_ds6)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [0:1+s].
d6q_ds6real(kind=R8P)outDerivative of order 6 of q, d6q/ds6.

Call graph

compute_reconstruction_r_fv_rupwind

Compute reconstruction at right interface from cell center average values, left-upwind schemes.

Attributes: pure

fortran
subroutine compute_reconstruction_r_fv_rupwind(s, q, qr)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, accuracy order.
qreal(kind=R8P)inScalar field over the stencil [0:s].
qrreal(kind=R8P)outReconstruction at right interface of field.

Call graph

compute_derivative1_fv_lupwind

Compute derivative of order 1 with finite volume left-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative1_fv_lupwind(s, ds, q, dq_ds)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [-s:0].
dq_dsreal(kind=R8P)outDerivative of order 1 of q, dq/ds.

Call graph

compute_derivative2_fv_lupwind

Compute derivative of order 2 with finite volume left-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative2_fv_lupwind(s, ds, q, d2q_ds2)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [-s:0].
d2q_ds2real(kind=R8P)outDerivative of order 2 of q, d2q/ds2.

Call graph

compute_derivative3_fv_lupwind

Compute derivative of order 3 with finite volume left-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative3_fv_lupwind(s, ds, q, d3q_ds3)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [-s:0].
d3q_ds3real(kind=R8P)outDerivative of order 3 of q, d3q/ds3.

Call graph

compute_derivative4_fv_lupwind

Compute derivative of order 4 with finite volume left-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative4_fv_lupwind(s, ds, q, d4q_ds4)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [-s:0].
d4q_ds4real(kind=R8P)outDerivative of order 4 of q, d4q/ds4.

Call graph

compute_derivative5_fv_lupwind

Compute derivative of order 5 with finite volume left-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative5_fv_lupwind(s, ds, q, d5q_ds5)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [-s:0].
d5q_ds5real(kind=R8P)outDerivative of order 5 of q, d5q/ds5.

Call graph

compute_derivative6_fv_lupwind

Compute derivative of order 6 with finite volume left-upwind scheme.

Attributes: pure

fortran
subroutine compute_derivative6_fv_lupwind(s, ds, q, d6q_ds6)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, half of accuracy order.
dsreal(kind=R8P)inSpace step.
qreal(kind=R8P)inScalar field over the stencil [-s:0].
d6q_ds6real(kind=R8P)outDerivative of order 6 of q, d6q/ds6.

Call graph

compute_reconstruction_r_fv_lupwind

Compute reconstruction at right interface from cell center average values, left-upwind schemes.

Attributes: pure

fortran
subroutine compute_reconstruction_r_fv_lupwind(s, q, qr)

Arguments

NameTypeIntentAttributesDescription
sinteger(kind=I4P)inStencil len, accuracy order.
qreal(kind=R8P)inScalar field over the stencil [1-s:0].
qrreal(kind=R8P)outReconstruction at right interface of field.

Call graph