4 KiB
m_calculate.f90

Overview
Author: Google DeepMind Team & Ignis @brief DNS post-processing mathematical operations and derivatives.
This module calculates spatial derivatives (first and second derivatives in X, Y, Z directions) using high-order compact finite difference schemes. It also calculates chemical reaction rates, positive/negative component extraction, and threshold operations.
API Index
- Module:
m_calculate - Subroutine:
m_calculate_init - Subroutine:
m_calculate_finalize - Subroutine:
ddx1d - Subroutine:
ddx - Subroutine:
ddy - Subroutine:
ddz - Subroutine:
d2dx1d - Subroutine:
d2dx - Subroutine:
d2dy - Subroutine:
d2dz - Subroutine:
tp - Subroutine:
tp2 - Function:
rxn_rate - Function:
threshold_min_max - Function:
positive - Function:
negative
API Reference
[Module] m_calculate
Author: Google DeepMind Team & Ignis @brief DNS post-processing mathematical operations and derivatives.
This module calculates spatial derivatives (first and second derivatives in X, Y, Z directions) using high-order compact finite difference schemes. It also calculates chemical reaction rates, positive/negative component extraction, and threshold operations.
[Subroutine] m_calculate_init
subroutine m_calculate_init()
Initializes the workspace arrays and matrices.
Pre-allocates transposed workspace buffers (xsrc, xdst, rsrc, rdst)
and performs the LU decomposition setup via ludcmp for the tridiagonal compact schemes.
[Subroutine] m_calculate_finalize
subroutine m_calculate_finalize()
No description provided.
[Subroutine] ddx1d
subroutine ddx1d(dst, src)
No description provided.
[Subroutine] ddx
subroutine ddx(dst, src)
Computes the first-order derivative in the X-direction.
src: 3D input scalar field (nxp, nyp, nzp).dst: 3D output derivative field (nxp, nyp, nzp).
[Subroutine] ddy
subroutine ddy(dst, src)
Computes the first-order derivative in the Y-direction.
src: 3D input scalar field (nxp, nyp, nzp).dst: 3D output derivative field (nxp, nyp, nzp).
[Subroutine] ddz
subroutine ddz(dst, src)
Computes the first-order derivative in the Z-direction.
src: 3D input scalar field (nxp, nyp, nzp).dst: 3D output derivative field (nxp, nyp, nzp).
[Subroutine] d2dx1d
subroutine d2dx1d(dst, src)
No description provided.
[Subroutine] d2dx
subroutine d2dx(dst, src)
No description provided.
[Subroutine] d2dy
subroutine d2dy(dst, src)
No description provided.
[Subroutine] d2dz
subroutine d2dz(dst, src)
No description provided.
[Subroutine] tp
subroutine tp(a, b, nx)
No description provided.
[Subroutine] tp2
subroutine tp2(a, b, n1, n2)
No description provided.
[Function] rxn_rate
function rxn_rate(c)
Computes the chemical reaction rate based on the progress variable c.
This uses a piecewise exponential/Arrhenius model depending on whether the progress variable is below c_cut, above c_ref, or intermediate.
c: The progress variable (0.0 to 1.0).
Returns:
The computed reaction rate.
[Function] threshold_min_max
function threshold_min_max(c, minc, maxc)
No description provided.
[Function] positive
function positive(c)
No description provided.
[Function] negative
function negative(c)
No description provided.