Procedures

ProcedureLocationProcedure TypeDescription
AccumulateField_gpuSELF_GPUInterfacesInterface
AdditionalFree_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine
AdditionalFree_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine
AdditionalFree_LinearShallowWater2D_tself_LinearShallowWater2D_tSubroutine
AdditionalFree_ModelSELF_ModelSubroutine
AdditionalInit_advection_diffusion_2d_tself_advection_diffusion_2d_tSubroutine

Register boundary conditions for the advection-diffusion model. Hyperbolic: mirror (no-normal-flow) wall condition on the solution. Parabolic: no-stress condition that zeros the normal gradient at the boundary, giving zero diffusive flux through walls. This is stable with the Bassi-Rebay (BR1) method.

AdditionalInit_advection_diffusion_3d_tself_advection_diffusion_3d_tSubroutine

Register boundary conditions for the advection-diffusion model. Hyperbolic: mirror (no-normal-flow) wall condition on the solution. Parabolic: no-stress condition that zeros the normal gradient at the boundary, giving zero diffusive flux through walls. This is stable with the Bassi-Rebay (BR1) method.

AdditionalInit_ECAdvection2DSELF_ECAdvection2DSubroutine
AdditionalInit_ECAdvection2D_tSELF_ECAdvection2D_tSubroutine
AdditionalInit_ECAdvection3DSELF_ECAdvection3DSubroutine
AdditionalInit_ECAdvection3D_tSELF_ECAdvection3D_tSubroutine
AdditionalInit_ESAtmo2DSELF_ESAtmo2DSubroutine
AdditionalInit_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine
AdditionalInit_ESAtmo3DSELF_ESAtmo3DSubroutine
AdditionalInit_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine
AdditionalInit_LinearEuler2Dself_LinearEuler2DSubroutine
AdditionalInit_LinearEuler2D_tself_LinearEuler2D_tSubroutine
AdditionalInit_LinearEuler3Dself_LinearEuler3DSubroutine
AdditionalInit_LinearShallowWater2Dself_LinearShallowWater2DSubroutine
AdditionalInit_LinearShallowWater2D_tself_LinearShallowWater2D_tSubroutine
AdditionalInit_ModelSELF_ModelSubroutine
AdditionalOutput_ModelSELF_ModelSubroutine
AddThermalBubble_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

Adds a pressure-balanced warm bubble perturbation.

Read more…
AddThermalBubble_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

Adds a pressure-balanced warm bubble perturbation.

Read more…
AlmostEqualSELF_SupportRoutinesInterface
AlmostEqual_r64SELF_SupportRoutinesFunction

\addtogroup SELF_SupportRoutines @{ \fn AlmostEqual Compares two floating point numbers and determines if they are equal (to machine precision).

Read more…
ApplyFlip_2D_gpuSELF_GPUInterfacesInterface
ApplyFlip_3D_gpuSELF_GPUInterfacesInterface
ApplyFlip_MappedScalar2D_tSELF_MappedScalar_2D_tSubroutine
ApplyFlip_MappedScalar3D_tSELF_MappedScalar_3D_tSubroutine
ApplyFlip_MappedVector2D_tSELF_MappedVector_2D_tSubroutine
ApplyFlip_MappedVector3D_tSELF_MappedVector_3D_tSubroutine
AssociateGeometry_MappedScalar1D_tSELF_MappedScalar_1D_tSubroutine
AssociateGeometry_MappedScalar2D_tSELF_MappedScalar_2D_tSubroutine
AssociateGeometry_MappedScalar3D_tSELF_MappedScalar_3D_tSubroutine
AssociateGeometry_MappedTwoPointVector2D_tSELF_MappedTwoPointVector_2D_tSubroutine
AssociateGeometry_MappedTwoPointVector3D_tSELF_MappedTwoPointVector_3D_tSubroutine
AssociateGeometry_MappedVector2D_tSELF_MappedVector_2D_tSubroutine
AssociateGeometry_MappedVector3D_tSELF_MappedVector_3D_tSubroutine
Average_gpuSELF_GPUInterfacesInterface
AverageSides_Scalar1DSELF_Scalar_1DSubroutine
AverageSides_Scalar1D_tSELF_Scalar_1D_tSubroutine
AverageSides_Scalar2DSELF_Scalar_2DSubroutine
AverageSides_Scalar2D_tSELF_Scalar_2D_tSubroutine
AverageSides_Scalar3DSELF_Scalar_3DSubroutine
AverageSides_Scalar3D_tSELF_Scalar_3D_tSubroutine
AverageSides_Vector2DSELF_Vector_2DSubroutine
AverageSides_Vector2D_tSELF_Vector_2D_tSubroutine
AverageSides_Vector3DSELF_Vector_3DSubroutine
AverageSides_Vector3D_tSELF_Vector_3D_tSubroutine
boundaryflux_advection_diffusion_1dself_advection_diffusion_1dSubroutine
boundaryflux_advection_diffusion_1d_gpuself_advection_diffusion_1dInterface
boundaryflux_advection_diffusion_2dself_advection_diffusion_2dSubroutine
boundaryflux_advection_diffusion_2d_gpuself_advection_diffusion_2dInterface
boundaryflux_advection_diffusion_3dself_advection_diffusion_3dSubroutine
boundaryflux_advection_diffusion_3d_gpuself_advection_diffusion_3dInterface
BoundaryFlux_DGModel1DSELF_DGModel1DSubroutine
BoundaryFlux_DGModel1D_tSELF_DGModel1D_tSubroutine
BoundaryFlux_DGModel2DSELF_DGModel2DSubroutine
BoundaryFlux_DGModel2D_tSELF_DGModel2D_tSubroutine
BoundaryFlux_DGModel3DSELF_DGModel3DSubroutine
BoundaryFlux_DGModel3D_tSELF_DGModel3D_tSubroutine
BoundaryFlux_ECAdvection2DSELF_ECAdvection2DSubroutine

LLF Riemann flux on GPU — fully device-resident.

boundaryflux_ecadvection2d_gpuSELF_ECAdvection2DInterface
BoundaryFlux_ECAdvection3DSELF_ECAdvection3DSubroutine

LLF Riemann flux on GPU — fully device-resident.

boundaryflux_ecadvection3d_gpuSELF_ECAdvection3DInterface
BoundaryFlux_ESAtmo2DSELF_ESAtmo2DSubroutine

LMARS interface flux on GPU.

boundaryflux_esatmo2d_gpuSELF_ESAtmo2DInterface
BoundaryFlux_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

LMARS (Low-Mach Approximate Riemann Solver, Chen et al. 2013) interface flux. No hydrostatic pressure split: gravity is folded into SourceMethod via the Souza non-conservative form using the geopotential carried in the state vector (variable index 5).

Read more…
BoundaryFlux_ESAtmo3DSELF_ESAtmo3DSubroutine

LMARS interface flux on GPU. No hydrostatic pressure split: gravity is handled by the Souza non-conservative source term using the geopotential carried as state variable index 6.

boundaryflux_esatmo3d_gpuSELF_ESAtmo3DInterface
BoundaryFlux_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

LMARS (Low-Mach Approximate Riemann Solver, Chen et al. 2013) interface flux. No hydrostatic pressure split: gravity is folded into SourceMethod via the Souza non-conservative form using the geopotential carried in the state vector (variable index 6).

Read more…
boundaryflux_LinearEuler2Dself_LinearEuler2DSubroutine
boundaryflux_LinearEuler2D_gpuself_LinearEuler2DInterface
boundaryflux_LinearEuler3Dself_LinearEuler3DSubroutine
boundaryflux_LinearEuler3D_gpuself_LinearEuler3DInterface
boundaryflux_LinearShallowWater2Dself_LinearShallowWater2DSubroutine
boundaryflux_LinearShallowWater2D_gpuself_LinearShallowWater2DInterface
BoundaryInterp_2D_gpuSELF_GPUInterfacesInterface
BoundaryInterp_3D_gpuSELF_GPUInterfacesInterface
BoundaryInterp_Scalar1DSELF_Scalar_1DSubroutine
BoundaryInterp_Scalar1DSELF_Scalar_1DSubroutine
BoundaryInterp_Scalar1D_tSELF_Scalar_1D_tSubroutine
BoundaryInterp_Scalar2DSELF_Scalar_2DSubroutine
BoundaryInterp_Scalar2D_tSELF_Scalar_2D_tSubroutine
BoundaryInterp_Scalar3DSELF_Scalar_3DSubroutine
BoundaryInterp_Scalar3D_tSELF_Scalar_3D_tSubroutine
BoundaryInterp_Tensor2D_tSELF_Tensor_2D_tSubroutine
BoundaryInterp_Tensor3D_tSELF_Tensor_3D_tSubroutine
BoundaryInterp_Vector2DSELF_Vector_2DSubroutine
BoundaryInterp_Vector2D_tSELF_Vector_2D_tSubroutine
BoundaryInterp_Vector3DSELF_Vector_3DSubroutine
BoundaryInterp_Vector3D_tSELF_Vector_3D_tSubroutine
build_nodeCoords_for_elementSELF_Mesh_2D_tSubroutine

Fill mesh%nodeCoords(:,:,:,e) for one element. Place the four corner nodes from the file's node table, then perform linear (nGeo=1) placement or transfinite interpolation (nGeo>1) using the (possibly curved) edge curves. For straight sides the edge curve is filled in here by linear interpolation between corners at Chebyshev-Gauss-Lobatto parametric coordinates.

BuildElementBBoxes_2DSELF_Points_tSubroutine

Axis-aligned bounding box of geometry%x%interior nodes for each element.

BuildElementBBoxes_3DSELF_Points_tSubroutine
CalculateBarycentricWeightsSELF_Lagrange_tSubroutine
CalculateContravariantBasis_SEMHexSELF_Geometry_3DSubroutine
CalculateContravariantBasis_SEMQuadSELF_Geometry_2DSubroutine
CalculateDerivativeMatrixSELF_Lagrange_tSubroutine
CalculateDSDt_gpuSELF_GPUInterfacesInterface
CalculateEntropy_DGModel1DSELF_DGModel1DSubroutine
CalculateEntropy_DGModel1D_tSELF_DGModel1D_tSubroutine
CalculateEntropy_DGModel2DSELF_DGModel2DSubroutine
CalculateEntropy_DGModel2D_tSELF_DGModel2D_tSubroutine
CalculateEntropy_DGModel3DSELF_DGModel3DSubroutine
CalculateEntropy_DGModel3D_tSELF_DGModel3D_tSubroutine
CalculateEntropy_ModelSELF_ModelSubroutine

Base method for calculating entropy of a model When this method is not overridden, the entropy is simply set to 0.0. When you develop a model built on top of this abstract class or one of its children, it is recommended that you define a convex mathematical entropy function that is used as a measure of the model stability.

CalculateInterpolationMatrixSELF_Lagrange_tSubroutine
CalculateLagrangePolynomialsSELF_Lagrange_tFunction
CalculateMetricTerms_Geometry1DSELF_Geometry_1DSubroutine
CalculateMetricTerms_SEMHexSELF_Geometry_3DSubroutine
CalculateMetricTerms_SEMQuadSELF_Geometry_2DSubroutine
CalculateSolutionGradient_DGModel1DSELF_DGModel1DSubroutine
CalculateSolutionGradient_DGModel1D_tSELF_DGModel1D_tSubroutine
CalculateSolutionGradient_DGModel2DSELF_DGModel2DSubroutine
CalculateSolutionGradient_DGModel2D_tSELF_DGModel2D_tSubroutine
CalculateSolutionGradient_DGModel3DSELF_DGModel3DSubroutine
CalculateSolutionGradient_DGModel3D_tSELF_DGModel3D_tSubroutine
CalculateTendencySELF_ModelInterface
CalculateTendency_DGModel1DSELF_DGModel1DSubroutine
CalculateTendency_DGModel1D_tSELF_DGModel1D_tSubroutine
CalculateTendency_DGModel2DSELF_DGModel2DSubroutine
CalculateTendency_DGModel2D_tSELF_DGModel2D_tSubroutine
CalculateTendency_DGModel3DSELF_DGModel3DSubroutine
CalculateTendency_DGModel3D_tSELF_DGModel3D_tSubroutine
CalculateTendency_ECDGModel2DSELF_ECDGModel2DSubroutine

GPU implementation of the EC-DG 2-D tendency.

Read more…
CalculateTendency_ECDGModel2D_tSELF_ECDGModel2D_tSubroutine

Computes du/dt = source - EC-DG flux divergence.

Read more…
CalculateTendency_ECDGModel3DSELF_ECDGModel3DSubroutine
CalculateTendency_ECDGModel3D_tSELF_ECDGModel3D_tSubroutine
CalculateTendency_ESAtmo2DSELF_ESAtmo2DSubroutine

GPU-resident tendency for ESAtmo2D.

CalculateTendency_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

ESAtmo2D tendency = EC inviscid pipeline (parent) + optional constant-coefficient Laplacian diffusion (BR1 weak-form DG).

Read more…
CalculateTendency_ESAtmo3DSELF_ESAtmo3DSubroutine

GPU-resident tendency for ESAtmo3D. The inviscid pipeline is identical to ECDGModel3D's GPU CalculateTendency; if either nu or kappa is positive, the constant-coefficient Laplacian divergence (BR1 weak-form) is then accumulated into fluxDivergence before forming dSdt.

CalculateTendency_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

ESAtmo3D tendency = EC inviscid pipeline (parent) + optional constant-coefficient Laplacian diffusion (BR1 weak-form DG).

Read more…
ChebyshevGaussSELF_QuadratureSubroutine
ChebyshevGaussLobattoSELF_QuadratureSubroutine
ChebyshevQuadratureSELF_QuadratureSubroutine
ClampCellSELF_Points_tFunction

Convert a (signed, possibly out-of-range) real cell index to an integer cell index clamped to [0, nCells-1].

Close_HDF5SELF_HDF5Subroutine
CompareArraySELF_SupportRoutinesFunction

\addtogroup SELF_SupportRoutines @{ \fn CompareArray Compares to INTEGER arrays and determines if they are identical.

Read more…
ContravariantProjection_2D_gpuSELF_MappedVector_2DInterface
ContravariantProjection_3D_gpuSELF_MappedVector_3DInterface
ContravariantWeight_2D_gpuSELF_MappedScalar_2DInterface
ContravariantWeight_3D_gpuSELF_MappedScalar_3DInterface
corner_pair_for_sideSELF_Mesh_2D_tSubroutine

Returns the two corner-node IDs delimiting a given local side using SELF's 2D side convention: Side 1 South = [CN1, CN2] Side 2 East = [CN2, CN3] Side 3 North = [CN4, CN3] Side 4 West = [CN1, CN4]

CreateGroup_HDF5SELF_HDF5Subroutine
Curl_Vector3D_tSELF_Vector_3D_tSubroutine
Derivative_Scalar1DSELF_Scalar_1DSubroutine
Derivative_Scalar1D_tSELF_Scalar_1D_tSubroutine
Determinant_Tensor2D_tSELF_Tensor_2D_tSubroutine
Determinant_Tensor3D_tSELF_Tensor_3D_tSubroutine
DG_BoundaryContribution_2D_gpuSELF_GPUInterfacesInterface
DG_BoundaryContribution_3D_gpuSELF_GPUInterfacesInterface
DGDerivative_BoundaryContribution_1D_gpuSELF_MappedScalar_1DInterface
DiagnoseGeostrophicVelocity_LinearShallowWater2D_tself_LinearShallowWater2D_tSubroutine
DiffusiveBoundaryFlux_ESAtmo2DSELF_ESAtmo2DSubroutine

GPU-resident fill of diffFlux%boundaryNormal with the SIPG-stabilised BR1 diffusive flux: f = -coeff(avg_grad . n)nmag + tau(uL - uR)nmag

diffusiveboundaryflux_esatmo2d_gpuSELF_ESAtmo2DInterface
DiffusiveBoundaryFlux_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

Fill diffFlux%boundaryNormal with the SIPG-stabilised BR1 flux:

Read more…
DiffusiveBoundaryFlux_ESAtmo3DSELF_ESAtmo3DSubroutine

GPU-resident fill of diffFlux%boundaryNormal with the SIPG-stabilised BR1 diffusive flux: f = -coeff(avg_grad . n)nmag + tau(uL - uR)nmag tau = eta_penaltycoeff(N+1)^2/length_scale, computed on the host.

diffusiveboundaryflux_esatmo3d_gpuSELF_ESAtmo3DInterface
DiffusiveBoundaryFlux_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

Fill diffFlux%boundaryNormal with the SIPG-stabilised BR1 flux:

Read more…
diffusiveflux_esatmo2d_gpuSELF_ESAtmo2DInterface
diffusiveflux_esatmo3d_gpuSELF_ESAtmo3DInterface
DiffusiveFluxMethod_ESAtmo2DSELF_ESAtmo2DSubroutine

GPU-resident fill of diffFlux%interior with the constant-coefficient Laplacian flux F_d(iVar) = -coeff(iVar) * d(s_iVar)/dx_d.

DiffusiveFluxMethod_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

Fill diffFlux%interior with the constant-coefficient Laplacian flux at every interior node:

Read more…
DiffusiveFluxMethod_ESAtmo3DSELF_ESAtmo3DSubroutine

GPU-resident fill of diffFlux%interior with the constant-coefficient Laplacian flux F_d(iVar) = -coeff(iVar) * d(s_iVar)/dx_d, where coeff is 0 for rho, nu for momentum, kappa for rho*theta.

DiffusiveFluxMethod_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

Fill diffFlux%interior with the constant-coefficient Laplacian flux at every interior node:

Read more…
DissociateGeometry_MappedScalar1D_tSELF_MappedScalar_1D_tSubroutine
DissociateGeometry_MappedScalar2D_tSELF_MappedScalar_2D_tSubroutine
DissociateGeometry_MappedScalar3D_tSELF_MappedScalar_3D_tSubroutine
DissociateGeometry_MappedTwoPointVector2D_tSELF_MappedTwoPointVector_2D_tSubroutine
DissociateGeometry_MappedTwoPointVector3D_tSELF_MappedTwoPointVector_3D_tSubroutine
DissociateGeometry_MappedVector2D_tSELF_MappedVector_2D_tSubroutine
DissociateGeometry_MappedVector3D_tSELF_MappedVector_3D_tSubroutine
Divergence_2D_gpuSELF_GPUInterfacesInterface
Divergence_3D_gpuSELF_GPUInterfacesInterface
Divergence_TwoPointVector2DSELF_TwoPointVector_2DSubroutine

GPU implementation of the reference-element split-form divergence. df must be a device pointer to a scalar field of size (N+1)(N+1)nElem*nVar.

Divergence_TwoPointVector2D_tSELF_TwoPointVector_2D_tSubroutine

Computes the split-form (two-point) divergence of a 2-D vector field in the reference element (computational coordinates).

Read more…
Divergence_TwoPointVector3DSELF_TwoPointVector_3DSubroutine

GPU implementation of the reference-element split-form divergence. df must be a device pointer to a scalar field of size (N+1)^3 * nElem * nVar.

Divergence_TwoPointVector3D_tSELF_TwoPointVector_3D_tSubroutine

Computes the split-form (two-point) divergence of a 3-D vector field in the reference element (computational coordinates).

Read more…
Divergence_Vector2DSELF_Vector_2DSubroutine
Divergence_Vector2D_tSELF_Vector_2D_tSubroutine
Divergence_Vector3DSELF_Vector_3DSubroutine
Divergence_Vector3D_tSELF_Vector_3D_tSubroutine
DomainDecompSELF_DomainDecomposition_tSubroutine
ECDGSurfaceContribution_2D_gpuSELF_GPUInterfacesInterface
ECDGSurfaceContribution_3D_gpuSELF_GPUInterfacesInterface
elementidSELF_Mesh_3D_tFunction
ElemToRankSELF_DomainDecomposition_tSubroutine
entropy_func_advection_diffusion_1d_tself_advection_diffusion_1d_tFunction
entropy_func_advection_diffusion_2d_tself_advection_diffusion_2d_tFunction
entropy_func_advection_diffusion_3d_tself_advection_diffusion_3d_tFunction
entropy_func_Burgers1D_tself_Burgers1D_tFunction
entropy_func_ECAdvection2D_tSELF_ECAdvection2D_tFunction

Quadratic entropy: eta(u) = u^2 / 2

entropy_func_ECAdvection3D_tSELF_ECAdvection3D_tFunction

Quadratic entropy: eta(u) = u^2 / 2

entropy_func_ESAtmo2D_tSELF_ESAtmo2D_tFunction

Mathematical entropy: total energy density (kinetic + internal).

Read more…
entropy_func_ESAtmo3D_tSELF_ESAtmo3D_tFunction

Mathematical entropy: total energy density (kinetic + internal).

Read more…
entropy_func_LinearEuler2D_tself_LinearEuler2D_tFunction

The entropy function is the sum of kinetic and internal energy For the linear model, this is

Read more…
entropy_func_LinearEuler3D_tself_LinearEuler3D_tFunction

The entropy function is the sum of kinetic and internal energy For the linear model, this is

Read more…
entropy_func_LinearShallowWater2D_tself_LinearShallowWater2D_tFunction
entropy_func_ModelSELF_ModelFunction
Euler_timeIntegratorSELF_ModelSubroutine
EvalScalar_2D_dev_PointsSELF_PointsSubroutine

Evaluate a 2D MappedScalar at the cached points on the device. The caller is responsible for hipMalloc-ing values_dev with capacity nPointsnVarprec bytes. Layout is column-major (nPoints, nVar).

Read more…
EvalScalar_2D_Points_tSELF_Points_tSubroutine

Evaluate a 2D MappedScalar at all located points by tensor-product Lagrange interpolation at the stored reference coordinates. Points with elements(p) == 0 receive a value of zero. When LocatePoints has cached the per-point basis at the matching polynomial degree, this routine reuses it and skips Lagrange-polynomial evaluation altogether.

EvalScalar_3D_dev_PointsSELF_PointsSubroutine
EvalScalar_3D_Points_tSELF_Points_tSubroutine

Evaluate a 3D MappedScalar at all located points by tensor-product Lagrange interpolation. Points with elements(p) == 0 receive zero. When LocatePoints has cached the basis at the matching degree, this routine reuses it.

EvalScalarPoints_2D_gpuSELF_PointsInterface
EvalScalarPoints_3D_gpuSELF_PointsInterface
FinalizeMPIExchangeAsyncSELF_DomainDecomposition_tSubroutine
flux1d_advection_diffusion_1d_tself_advection_diffusion_1d_tFunction
flux1d_Burgers1D_tself_Burgers1D_tFunction
flux1d_ModelSELF_ModelFunction
flux2d_advection_diffusion_2d_tself_advection_diffusion_2d_tFunction
flux2d_LinearEuler2D_tself_LinearEuler2D_tFunction
flux2d_LinearShallowWater2D_tself_LinearShallowWater2D_tFunction
flux2d_ModelSELF_ModelFunction
flux3d_advection_diffusion_3d_tself_advection_diffusion_3d_tFunction
flux3D_LinearEuler3D_tself_LinearEuler3D_tFunction
flux3d_ModelSELF_ModelFunction
fluxmethod_advection_diffusion_1dself_advection_diffusion_1dSubroutine
fluxmethod_advection_diffusion_1d_gpuself_advection_diffusion_1dInterface
fluxmethod_advection_diffusion_2dself_advection_diffusion_2dSubroutine
fluxmethod_advection_diffusion_2d_gpuself_advection_diffusion_2dInterface
fluxmethod_advection_diffusion_3dself_advection_diffusion_3dSubroutine
fluxmethod_advection_diffusion_3d_gpuself_advection_diffusion_3dInterface
fluxmethod_DGModel1DSELF_DGModel1DSubroutine
fluxmethod_DGModel1D_tSELF_DGModel1D_tSubroutine
fluxmethod_DGModel2DSELF_DGModel2DSubroutine
fluxmethod_DGModel2D_tSELF_DGModel2D_tSubroutine
fluxmethod_DGModel3DSELF_DGModel3DSubroutine
fluxmethod_DGModel3D_tSELF_DGModel3D_tSubroutine
fluxmethod_LinearEuler2Dself_LinearEuler2DSubroutine
fluxmethod_LinearEuler2D_gpuself_LinearEuler2DInterface
fluxmethod_LinearEuler3Dself_LinearEuler3DSubroutine
fluxmethod_LinearEuler3D_gpuself_LinearEuler3DInterface
fluxmethod_LinearShallowWater2Dself_LinearShallowWater2DSubroutine
fluxmethod_LinearShallowWater2D_gpuself_LinearShallowWater2DInterface
ForwardShiftSELF_SupportRoutinesSubroutine

\addtogroup SELF_SupportRoutines @{ \fn ForwardShift Shift an array integers by one index forward, moving the last index to the first.

Read more…
ForwardStep_ModelSELF_ModelSubroutine

Forward steps the model using the associated tendency procedure and time integrator

Read more…
Free_BCListSELF_BoundaryConditionsSubroutine
Free_DGModel1DSELF_DGModel1DSubroutine

Free the 1D DG model, including GPU BC arrays.

Free_DGModel1D_tSELF_DGModel1D_tSubroutine
Free_DGModel2DSELF_DGModel2DSubroutine

Free the 2D DG model, including GPU BC arrays.

Free_DGModel2D_tSELF_DGModel2D_tSubroutine
Free_DGModel3DSELF_DGModel3DSubroutine

Free the 3D DG model, including GPU BC arrays.

Free_DGModel3D_tSELF_DGModel3D_tSubroutine
Free_DomainDecompositionSELF_DomainDecompositionSubroutine
Free_DomainDecomposition_tSELF_DomainDecomposition_tSubroutine
Free_ECAdvection2DSELF_ECAdvection2DSubroutine

Free EC Advection 2D, including GPU BC arrays.

Free_ECAdvection3DSELF_ECAdvection3DSubroutine

Free EC Advection 3D, including GPU BC arrays.

Free_ECDGModel2D_tSELF_ECDGModel2D_tSubroutine
Free_ECDGModel3D_tSELF_ECDGModel3D_tSubroutine
Free_ESAtmo2DSELF_ESAtmo2DSubroutine
Free_ESAtmo3DSELF_ESAtmo3DSubroutine
Free_Geometry1DSELF_Geometry_1DSubroutine
Free_LagrangeSELF_LagrangeSubroutine

Frees all memory (host and device) associated with an instance of the Lagrange class

Free_LagrangeSELF_LagrangeSubroutine

Frees all memory (host and device) associated with an instance of the Lagrange class

Free_Lagrange_tSELF_Lagrange_tSubroutine

Frees all memory (host and device) associated with an instance of the Lagrange_t class

Free_MappedScalar2DSELF_MappedScalar_2DSubroutine
Free_MappedScalar3DSELF_MappedScalar_3DSubroutine
Free_Mesh1DSELF_Mesh_1DSubroutine
Free_Mesh2DSELF_Mesh_2DSubroutine
Free_Mesh2D_tSELF_Mesh_2D_tSubroutine
Free_Mesh3DSELF_Mesh_3DSubroutine
Free_Mesh3D_tSELF_Mesh_3D_tSubroutine
Free_PointsSELF_PointsSubroutine
Free_Points_tSELF_Points_tSubroutine
Free_Scalar1DSELF_Scalar_1DSubroutine
Free_Scalar1DSELF_Scalar_1DSubroutine
Free_Scalar1D_tSELF_Scalar_1D_tSubroutine
Free_Scalar2DSELF_Scalar_2DSubroutine
Free_Scalar2D_tSELF_Scalar_2D_tSubroutine
Free_Scalar3DSELF_Scalar_3DSubroutine
Free_Scalar3D_tSELF_Scalar_3D_tSubroutine
Free_SEMHexSELF_Geometry_3DSubroutine
Free_SEMQuadSELF_Geometry_2DSubroutine
Free_Tensor2DSELF_Tensor_2DSubroutine
Free_Tensor2D_tSELF_Tensor_2D_tSubroutine
Free_Tensor3DSELF_Tensor_3DSubroutine
Free_Tensor3D_tSELF_Tensor_3D_tSubroutine
Free_TwoPointVector2DSELF_TwoPointVector_2DSubroutine
Free_TwoPointVector2D_tSELF_TwoPointVector_2D_tSubroutine
Free_TwoPointVector3DSELF_TwoPointVector_3DSubroutine
Free_TwoPointVector3D_tSELF_TwoPointVector_3D_tSubroutine
Free_Vector2DSELF_Vector_2DSubroutine
Free_Vector2D_tSELF_Vector_2D_tSubroutine
Free_Vector3DSELF_Vector_3DSubroutine
Free_Vector3D_tSELF_Vector_3D_tSubroutine
GenerateDecomposition_DomainDecomposition_tSELF_DomainDecomposition_tSubroutine
GenerateFromMesh_Geometry1DSELF_Geometry_1DSubroutine
GenerateFromMesh_SEMHexSELF_Geometry_3DSubroutine
GenerateFromMesh_SEMQuadSELF_Geometry_2DSubroutine
GetBCForIDSELF_BoundaryConditionsFunction

Returns the node associated with the given bcid. If the bcid is not found, a null pointer is returned.

GetSimulationTimeSELF_ModelSubroutine

Returns the current simulation time stored in the model % t attribute

GPUAvailableSELF_GPUFunction
GPUAvailableSELF_GPUFunction
gpuCheckSELF_GPUSubroutine
gpuCheckSELF_GPUSubroutine
Gradient_Scalar2DSELF_Scalar_2DSubroutine
Gradient_Scalar2D_tSELF_Scalar_2D_tSubroutine
Gradient_Scalar3DSELF_Scalar_3DSubroutine
Gradient_Scalar3D_tSELF_Scalar_3D_tSubroutine
Gradient_Vector2DSELF_Vector_2DSubroutine
Gradient_Vector2D_tSELF_Vector_2D_tSubroutine
Gradient_Vector3DSELF_Vector_3DSubroutine
Gradient_Vector3D_tSELF_Vector_3D_tSubroutine
GradientNormal_1D_gpuSELF_GPUInterfacesInterface
GridInterp_Scalar1DSELF_Scalar_1DSubroutine
GridInterp_Scalar1D_tSELF_Scalar_1D_tSubroutine
GridInterp_Scalar2DSELF_Scalar_2DSubroutine
GridInterp_Scalar2D_tSELF_Scalar_2D_tSubroutine
GridInterp_Scalar3DSELF_Scalar_3DSubroutine
GridInterp_Scalar3D_tSELF_Scalar_3D_tSubroutine
GridInterp_Vector2DSELF_Vector_2DSubroutine
GridInterp_Vector2D_tSELF_Vector_2D_tSubroutine
GridInterp_Vector3DSELF_Vector_3DSubroutine
GridInterp_Vector3D_tSELF_Vector_3D_tSubroutine
hbc2d_mirror_ecadvection2d_gpuSELF_ECAdvection2DInterface
hbc2d_Mirror_ECAdvection2D_GPU_wrapperSELF_ECAdvection2DSubroutine

GPU-accelerated mirror BC for 2D EC Advection.

hbc2d_NoNormalFlow_advection_diffusion_2d_tself_advection_diffusion_2d_tSubroutine

Mirror boundary condition on the solution: sets the exterior state equal to the interior state. With LLF this zeroes the upwind dissipation at the wall.

hbc2d_NoNormalFlow_ECAdvection2DSELF_ECAdvection2D_tSubroutine

Prescribed-zero boundary state for the tracer.

Read more…
hbc2d_NoNormalFlow_ESAtmo2DSELF_ESAtmo2D_tSubroutine

No-normal-flow (wall) boundary condition.

Read more…
hbc2d_nonormalflow_esatmo2d_gpuSELF_ESAtmo2DInterface
hbc2d_NoNormalFlow_ESAtmo2D_GPU_wrapperSELF_ESAtmo2DSubroutine

GPU-accelerated no-normal-flow BC for 2D Entropy-Stable Atmosphere. Reflects normal momentum, mirrors density, rho*theta, and Phi.

hbc2d_NoNormalFlow_LinearEuler2Dself_LinearEuler2D_tSubroutine

No-normal-flow boundary condition for 2D linear Euler equations. Reflects the velocity vector about the boundary normal while preserving density, pressure, and sound speed.

hbc2d_nonormalflow_lineareuler2d_gpuself_LinearEuler2DInterface
hbc2d_NoNormalFlow_LinearEuler2D_GPU_wrapperself_LinearEuler2DSubroutine

GPU-accelerated no-normal-flow BC for 2D Linear Euler.

hbc2d_NoNormalFlow_LinearShallowWater2Dself_LinearShallowWater2D_tSubroutine

No-normal-flow boundary condition for 2D linear shallow water equations. Reflects the velocity vector about the boundary normal while preserving the free surface elevation.

hbc2d_nonormalflow_linearshallowwater2d_gpuself_LinearShallowWater2DInterface
hbc2d_NoNormalFlow_LinearShallowWater2D_GPU_wrapperself_LinearShallowWater2DSubroutine
hbc2d_radiation_lineareuler2d_gpuself_LinearEuler2DInterface
hbc2d_Radiation_LinearEuler2D_GPU_wrapperself_LinearEuler2DSubroutine

GPU-accelerated radiation BC for 2D Linear Euler.

hbc2d_radiation_linearshallowwater2d_gpuself_LinearShallowWater2DInterface
hbc2d_Radiation_LinearShallowWater2D_GPU_wrapperself_LinearShallowWater2DSubroutine
hbc3d_mirror_ecadvection3d_gpuSELF_ECAdvection3DInterface
hbc3d_Mirror_ECAdvection3D_GPU_wrapperSELF_ECAdvection3DSubroutine

GPU-accelerated mirror BC for 3D EC Advection.

hbc3d_NoNormalFlow_advection_diffusion_3d_tself_advection_diffusion_3d_tSubroutine

Mirror boundary condition on the solution: sets the exterior state equal to the interior state. With LLF this zeroes the upwind dissipation at the wall.

hbc3d_NoNormalFlow_ECAdvection3DSELF_ECAdvection3D_tSubroutine

Prescribed-zero boundary state for the tracer.

Read more…
hbc3d_NoNormalFlow_ESAtmo3DSELF_ESAtmo3D_tSubroutine

No-normal-flow (wall) boundary condition.

Read more…
hbc3d_nonormalflow_esatmo3d_gpuSELF_ESAtmo3DInterface
hbc3d_NoNormalFlow_ESAtmo3D_GPU_wrapperSELF_ESAtmo3DSubroutine

GPU-accelerated no-normal-flow BC for 3D Entropy-Stable Atmosphere. Reflects normal momentum, mirrors density and rho*theta.

hbc3d_radiation_lineareuler3d_gpuself_LinearEuler3DInterface
hbc3d_Radiation_LinearEuler3D_GPU_wrapperself_LinearEuler3DSubroutine
hipblasCheckSELF_GPUBLASSubroutine
hipblasCheckSELF_GPUBLASSubroutine
hipblasCreateSELF_GPUBLASInterface
hipblasCreateSELF_GPUBLASInterface
hipblasDestroySELF_GPUBLASInterface
hipblasDestroySELF_GPUBLASInterface
hipblasDgemmSELF_GPUBLASInterface
hipblasDgemmSELF_GPUBLASInterface
hipblasDgemvStridedBatchedSELF_GPUBLASInterface
hipblasDgemvStridedBatchedSELF_GPUBLASInterface
hipblasSgemmSELF_GPUBLASInterface
hipblasSgemmSELF_GPUBLASInterface
hipblasSgemvStridedBatchedSELF_GPUBLASInterface
hipblasSgemvStridedBatchedSELF_GPUBLASInterface
hipFreeSELF_GPUInterface
hipFreeSELF_GPUInterface
hipGetDeviceCountSELF_GPUInterface
hipGetDeviceCountSELF_GPUInterface
hipMallocSELF_GPUInterface
hipMallocSELF_GPUInterface
hipMemcpySELF_GPUInterface
hipMemcpySELF_GPUInterface
hipSetDeviceSELF_GPUInterface
IncrementIOCounterSELF_ModelSubroutine
Init_BCListSELF_BoundaryConditionsSubroutine
Init_DGModel1DSELF_DGModel1DSubroutine

Initialize the 1D DG model, then upload BC element/side arrays to GPU.

Init_DGModel1D_tSELF_DGModel1D_tSubroutine
Init_DGModel2DSELF_DGModel2DSubroutine

Initialize the 2D DG model, then upload BC element/side arrays to GPU.

Init_DGModel2D_tSELF_DGModel2D_tSubroutine
Init_DGModel3DSELF_DGModel3DSubroutine

Initialize the 3D DG model, then upload BC element/side arrays to GPU.

Init_DGModel3D_tSELF_DGModel3D_tSubroutine
Init_DomainDecompositionSELF_DomainDecompositionSubroutine
Init_DomainDecomposition_tSELF_DomainDecomposition_tSubroutine
Init_ECAdvection2DSELF_ECAdvection2DSubroutine

Initialize EC Advection 2D, then upload BC element/side arrays to GPU.

Init_ECAdvection3DSELF_ECAdvection3DSubroutine

Initialize EC Advection 3D, then upload BC element/side arrays to GPU.

Init_ECDGModel2D_tSELF_ECDGModel2D_tSubroutine
Init_ECDGModel3D_tSELF_ECDGModel3D_tSubroutine
Init_ESAtmo2DSELF_ESAtmo2DSubroutine
Init_ESAtmo3DSELF_ESAtmo3DSubroutine
Init_Geometry1DSELF_Geometry_1DSubroutine
Init_LagrangeSELF_LagrangeSubroutine

Initialize an instance of the Lagrange class On output, all of the attributes for the Lagrange class are allocated and values are initialized according to the number of control points, number of target points, and the types for the control and target nodes. If a GPU is available, device pointers for the Lagrange attributes are allocated and initialized.

Init_LagrangeSELF_LagrangeSubroutine

Initialize an instance of the Lagrange class On output, all of the attributes for the Lagrange class are allocated and values are initialized according to the number of control points, number of target points, and the types for the control and target nodes. If a GPU is available, device pointers for the Lagrange attributes are allocated and initialized.

Init_Lagrange_tSELF_Lagrange_tSubroutine

Initialize an instance of the Lagrange_t class On output, all of the attributes for the Lagrange_t class are allocated and values are initialized according to the number of control points, number of target points, and the types for the control and target nodes. If a GPU is available, device pointers for the Lagrange_t attributes are allocated and initialized.

Init_MappedScalar2DSELF_MappedScalar_2DSubroutine
Init_MappedScalar3DSELF_MappedScalar_3DSubroutine
Init_Mesh1DSELF_Mesh_1DSubroutine
Init_Mesh2DSELF_Mesh_2DSubroutine
Init_Mesh2D_tSELF_Mesh_2D_tSubroutine
Init_Mesh3DSELF_Mesh_3DSubroutine
Init_Mesh3D_tSELF_Mesh_3D_tSubroutine
Init_PointsSELF_PointsSubroutine

Allocate host + device storage for nPoints in nDim dimensions. The basis-cache device buffers are allocated lazily in UpdateDevice once the polynomial degree N is known (it is set by LocatePoints).

Init_Points_tSELF_Points_tSubroutine

Allocate storage for a point cloud of size nPoints in nDim dimensions. nDim must be 2 or 3.

Init_Scalar1DSELF_Scalar_1DSubroutine
Init_Scalar1DSELF_Scalar_1DSubroutine
Init_Scalar1D_tSELF_Scalar_1D_tSubroutine
Init_Scalar2DSELF_Scalar_2DSubroutine
Init_Scalar2D_tSELF_Scalar_2D_tSubroutine
Init_Scalar3DSELF_Scalar_3DSubroutine
Init_Scalar3D_tSELF_Scalar_3D_tSubroutine
Init_SEMHexSELF_Geometry_3DSubroutine
Init_SEMQuadSELF_Geometry_2DSubroutine
Init_Tensor2DSELF_Tensor_2DSubroutine
Init_Tensor2D_tSELF_Tensor_2D_tSubroutine
Init_Tensor3DSELF_Tensor_3DSubroutine
Init_Tensor3D_tSELF_Tensor_3D_tSubroutine
Init_TwoPointVector2DSELF_TwoPointVector_2DSubroutine
Init_TwoPointVector2D_tSELF_TwoPointVector_2D_tSubroutine

Allocate the interior array for a 2-D two-point vector field. The interior array has rank 6 with layout (n,i,j,nEl,nVar,idir).

Read more…
Init_TwoPointVector3DSELF_TwoPointVector_3DSubroutine
Init_TwoPointVector3D_tSELF_TwoPointVector_3D_tSubroutine

Allocate the interior array for a 3-D two-point vector field. The interior array has rank 7 with layout (n,i,j,k,nEl,nVar,idir).

Read more…
Init_Vector2DSELF_Vector_2DSubroutine
Init_Vector2D_tSELF_Vector_2D_tSubroutine
Init_Vector3DSELF_Vector_3DSubroutine
Init_Vector3D_tSELF_Vector_3D_tSubroutine
JacobianWeight_1D_gpuSELF_MappedScalar_1DInterface
JacobianWeight_2D_gpuSELF_GPUInterfacesInterface
JacobianWeight_3D_gpuSELF_GPUInterfacesInterface
LegendreGaussSELF_QuadratureSubroutine
LegendreGaussLobattoSELF_QuadratureSubroutine
LegendrePolynomialSELF_QuadratureSubroutine
LegendreQandLSELF_QuadratureSubroutine
LegendreQuadratureSELF_QuadratureSubroutine
LocatePoints_2D_PointsSELF_PointsSubroutine

Run the host spatial-hash + Newton search (inherited from Points_t), then mirror per-point state to the device.

LocatePoints_2D_Points_tSELF_Points_tSubroutine

Locate each stored physical point inside the 2D SEMQuad geometry. On exit, elements(p) holds the (rank-local) element id and coordinates(p,:) holds the (s,t) reference coordinates, both for points that resolve. Points that resolve to no element are marked with elements(p) = 0.

LocatePoints_3D_PointsSELF_PointsSubroutine
LocatePoints_3D_Points_tSELF_Points_tSubroutine

Locate each stored physical point inside the 3D SEMHex geometry. On exit, elements(p) and coordinates(p,1:3) hold the located element id and reference (s,t,u) for points that resolve; elements(p) = 0 otherwise.

log_meanSELF_ESAtmo2D_tFunction

Numerically stable logarithmic mean (Ismail-Roe 2009 / Ranocha 2018).

Read more…
log_meanSELF_ESAtmo3D_tFunction

Numerically stable logarithmic mean (Ismail-Roe 2009 / Ranocha 2018).

Read more…
LowStorageRK2_timeIntegratorSELF_ModelSubroutine
LowStorageRK3_timeIntegratorSELF_ModelSubroutine
LowStorageRK4_timeIntegratorSELF_ModelSubroutine
MapBoundaryConditions_DGModel1D_tSELF_DGModel1D_tSubroutine

Scan the mesh boundary condition IDs and populate the elements/sides arrays for each registered boundary condition.

MapBoundaryConditions_DGModel2D_tSELF_DGModel2D_tSubroutine

Scan the mesh sideInfo and populate the elements/sides arrays for each registered boundary condition.

MapBoundaryConditions_DGModel3D_tSELF_DGModel3D_tSubroutine

Scan the mesh sideInfo and populate the elements/sides arrays for each registered boundary condition.

MappedDerivative_MappedScalar1DSELF_MappedScalar_1DSubroutine
MappedDerivative_MappedScalar1D_tSELF_MappedScalar_1D_tSubroutine
MappedDGDerivative_MappedScalar1DSELF_MappedScalar_1DSubroutine
MappedDGDerivative_MappedScalar1D_tSELF_MappedScalar_1D_tSubroutine
MappedDGDivergence_MappedVector2DSELF_MappedVector_2DSubroutine
MappedDGDivergence_MappedVector2D_tSELF_MappedVector_2D_tSubroutine

Computes the divergence of a 2-D vector using the weak form On input, the attribute of the vector is assigned and the attribute is set to the physical directions of the vector. This method will project the vector onto the contravariant basis vectors.

MappedDGDivergence_MappedVector3DSELF_MappedVector_3DSubroutine

Computes the divergence of a 3-D vector using the weak form On input, the attribute of the vector is assigned and the attribute is set to the physical directions of the vector. This method will project the vector onto the contravariant basis vectors.

MappedDGDivergence_MappedVector3D_tSELF_MappedVector_3D_tSubroutine

Computes the divergence of a 3-D vector using the weak form On input, the attribute of the vector is assigned and the attribute is set to the physical directions of the vector. This method will project the vector onto the contravariant basis vectors.

MappedDGGradient_MappedScalar2DSELF_MappedScalar_2DSubroutine
MappedDGGradient_MappedScalar2D_tSELF_MappedScalar_2D_tSubroutine
MappedDGGradient_MappedScalar3DSELF_MappedScalar_3DSubroutine

Calculates the gradient of a function using the weak form of the gradient and the average boundary state. This method will compute the average boundary state from the and attributes of

MappedDGGradient_MappedScalar3D_tSELF_MappedScalar_3D_tSubroutine

Calculates the gradient of a function using the weak form of the gradient and the average boundary state. This method will compute the average boundary state from the and attributes of

MappedDivergence_MappedTwoPointVector2DSELF_MappedTwoPointVector_2DSubroutine

GPU implementation of the physical-space split-form divergence for a 2-D two-point vector on a curvilinear mesh.

Read more…
MappedDivergence_MappedTwoPointVector2D_tSELF_MappedTwoPointVector_2D_tSubroutine

Computes the physical-space divergence of a 2-D split-form vector field on a curvilinear mesh.

Read more…
MappedDivergence_MappedTwoPointVector3DSELF_MappedTwoPointVector_3DSubroutine

GPU implementation of the physical-space split-form divergence for a 3-D two-point vector on a curvilinear mesh.

Read more…
MappedDivergence_MappedTwoPointVector3D_tSELF_MappedTwoPointVector_3D_tSubroutine

Computes the physical-space divergence of a 3-D split-form vector field on a curvilinear mesh.

Read more…
MappedDivergence_MappedVector2DSELF_MappedVector_2DSubroutine
MappedDivergence_MappedVector2D_tSELF_MappedVector_2D_tSubroutine
MappedDivergence_MappedVector3DSELF_MappedVector_3DSubroutine
MappedDivergence_MappedVector3D_tSELF_MappedVector_3D_tSubroutine
MappedGradient_MappedScalar2DSELF_MappedScalar_2DSubroutine

Calculates the gradient of a function using the strong form of the gradient in mapped coordinates.

MappedGradient_MappedScalar2D_tSELF_MappedScalar_2D_tSubroutine

Calculates the gradient of a function using the strong form of the gradient in mapped coordinates.

MappedGradient_MappedScalar3DSELF_MappedScalar_3DSubroutine

Calculates the gradient of a function using the strong form of the gradient in mapped coordinates.

MappedGradient_MappedScalar3D_tSELF_MappedScalar_3D_tSubroutine

Calculates the gradient of a function using the strong form of the gradient in mapped coordinates.

MappedTwoPointVectorDivergence_2D_gpuSELF_GPUInterfacesInterface
MappedTwoPointVectorDivergence_3D_gpuSELF_GPUInterfacesInterface
MoveNextSELF_BoundaryConditionsSubroutine
MPIExchangeAsync_MappedScalar2DSELF_MappedScalar_2DSubroutine
MPIExchangeAsync_MappedScalar2D_tSELF_MappedScalar_2D_tSubroutine
MPIExchangeAsync_MappedScalar3DSELF_MappedScalar_3DSubroutine
MPIExchangeAsync_MappedScalar3D_tSELF_MappedScalar_3D_tSubroutine
MPIExchangeAsync_MappedVector2DSELF_MappedVector_2DSubroutine
MPIExchangeAsync_MappedVector2D_tSELF_MappedVector_2D_tSubroutine
MPIExchangeAsync_MappedVector3DSELF_MappedVector_3DSubroutine
MPIExchangeAsync_MappedVector3D_tSELF_MappedVector_3D_tSubroutine
NewtonInverse_2DSELF_Points_tSubroutine

Newton inverse-map for the 2D SEM element iEl: solve X(xi) = xTarget for the reference coordinate xi in R^2, where X is the high-order interpolant. The Jacobian dX/dxi is taken from geometry%dxds (the covariant basis tensor), interpolated to xi via Lagrange basis.

Read more…
NewtonInverse_3DSELF_Points_tSubroutine

Newton inverse-map for the 3D SEM element iEl. See NewtonInverse_2D.

newunitSELF_SupportRoutinesFunction
NormalWeight_2D_gpuSELF_MappedScalar_2DInterface
NormalWeight_3D_gpuSELF_MappedScalar_3DInterface
Open_HDF5SELF_HDF5Interface
Open_HDF5_parallelSELF_HDF5Subroutine
Open_HDF5_serialSELF_HDF5Subroutine
pbc2d_NoStress_advection_diffusion_2d_tself_advection_diffusion_2d_tSubroutine

No-stress boundary condition for the BR1 diffusive flux. Reflects the interior gradient so that the normal component of the averaged gradient vanishes at the boundary: sigma_ext = sigma_int - 2 (sigma_int . nhat) nhat This gives zero diffusive flux through the wall and is unconditionally stable for Bassi-Rebay.

pbc2d_NoStress_ESAtmo2DSELF_ESAtmo2D_tSubroutine

Parabolic boundary condition: zero diffusive flux normal to the wall (no-stress for momentum, no-heat-flux for rho*theta).

Read more…
pbc2d_nostress_esatmo2d_gpuSELF_ESAtmo2DInterface
pbc2d_NoStress_ESAtmo2D_GPU_wrapperSELF_ESAtmo2DSubroutine

GPU-accelerated parabolic no-stress / no-heat-flux BC for 2D Entropy-Stable Atmosphere.

pbc3d_NoStress_advection_diffusion_3d_tself_advection_diffusion_3d_tSubroutine

No-stress boundary condition for the BR1 diffusive flux. Reflects the interior gradient so that the normal component of the averaged gradient vanishes at the boundary: sigma_ext = sigma_int - 2 (sigma_int . nhat) nhat This gives zero diffusive flux through the wall and is unconditionally stable for Bassi-Rebay.

pbc3d_NoStress_ESAtmo3DSELF_ESAtmo3D_tSubroutine

Parabolic boundary condition: zero diffusive flux normal to the wall (no-stress for momentum, no-heat-flux for rho*theta).

Read more…
pbc3d_nostress_esatmo3d_gpuSELF_ESAtmo3DInterface
pbc3d_NoStress_ESAtmo3D_GPU_wrapperSELF_ESAtmo3DSubroutine

GPU-accelerated parabolic no-stress / no-heat-flux BC for 3D Entropy-Stable Atmosphere. Reflects the normal component of the solution gradient at every wall node so that BR1 averaging gives avgGrad . n = 0 (zero diffusive flux through the wall) for every variable.

PopulateBoundariesSELF_BoundaryConditionsSubroutine

Populate the elements and sides arrays for a registered boundary condition. Called after scanning the mesh to determine which faces belong to each bcid.

PreTendency_ModelSELF_ModelSubroutine

PreTendency is a template routine that is used to house any additional calculations that you want to execute at the beginning of the tendency calculation routine. This default PreTendency simply returns back to the caller without executing any instructions

Read more…
PrintType_ModelSELF_ModelSubroutine
Read_DGModel1D_tSELF_DGModel1D_tSubroutine
Read_DGModel2D_tSELF_DGModel2D_tSubroutine
Read_DGModel3D_tSELF_DGModel3D_tSubroutine
Read_HOHQMesh_Mesh2D_tSELF_Mesh_2D_tSubroutine

Reader for HOHQMesh text mesh files in the ISM and ISM-MM formats. The format is auto-detected from the first line: * Line equal to "ISM-MM" (trimmed) => ISM-MM with per-element material name strings and a 4-int count line that includes an unused nEdges field (the ISM-MM writer in HOHQMesh does NOT emit an edge block). * Anything else is treated as plain ISM: the first line is itself the count line "nNodes nElems polyOrder" and there are no per-element material names.

Read more…
Read_HOPr_Mesh2D_tSELF_Mesh_2D_tSubroutine
Read_HOPr_Mesh3D_tSELF_Mesh_3D_tSubroutine
ReadArray_HDF5SELF_HDF5Interface
ReadArray_HDF5_int32_r1_parallelSELF_HDF5Subroutine
ReadArray_HDF5_int32_r1_serialSELF_HDF5Subroutine
ReadArray_HDF5_int32_r2_parallelSELF_HDF5Subroutine
ReadArray_HDF5_int32_r2_serialSELF_HDF5Subroutine
ReadArray_HDF5_real_r1_parallelSELF_HDF5Subroutine
ReadArray_HDF5_real_r1_serialSELF_HDF5Subroutine
ReadArray_HDF5_real_r2_parallelSELF_HDF5Subroutine
ReadArray_HDF5_real_r2_serialSELF_HDF5Subroutine
ReadArray_HDF5_real_r3_parallelSELF_HDF5Subroutine
ReadArray_HDF5_real_r3_serialSELF_HDF5Subroutine
ReadArray_HDF5_real_r4_parallelSELF_HDF5Subroutine
ReadArray_HDF5_real_r4_serialSELF_HDF5Subroutine
ReadArray_HDF5_real_r5_serialSELF_HDF5Subroutine
ReadAttribute_HDF5SELF_HDF5Interface
ReadAttribute_HDF5_characterSELF_HDF5Subroutine
ReadAttribute_HDF5_int32SELF_HDF5Subroutine
ReadAttribute_HDF5_realSELF_HDF5Subroutine
ReadModelSELF_ModelInterface
RecalculateFlip_Mesh2D_tSELF_Mesh_2D_tSubroutine
RecalculateFlip_Mesh3D_tSELF_Mesh_3D_tSubroutine
RegisterbcMethodSELF_BoundaryConditionsSubroutine

Register a boundary condition function with the given bcid and bcname. If the bcid is already registered, the function pointer is updated. The elements and sides arrays are not allocated here; call PopulateBoundaries after scanning the mesh.

ReportEntropy_ModelSELF_ModelSubroutine

Base method for reporting the entropy of a model to stdout. Only override this procedure if additional reporting is needed. Alternatively, if you think additional reporting would be valuable for all models, open a pull request with modifications to this base method.

ReportMetrics_DGModel2D_tSELF_DGModel2D_tSubroutine

Base method for reporting the entropy of a model to stdout. Only override this procedure if additional reporting is needed. Alternatively, if you think additional reporting would be valuable for all models, open a pull request with modifications to this base method.

ReportMetrics_DGModel3D_tSELF_DGModel3D_tSubroutine

Base method for reporting the entropy of a model to stdout. Only override this procedure if additional reporting is needed. Alternatively, if you think additional reporting would be valuable for all models, open a pull request with modifications to this base method.

ReportMetrics_ModelSELF_ModelSubroutine

Method that can be overridden by users to report their own custom metrics after file io

ReportUserMetrics_ModelSELF_ModelSubroutine

Method that can be overridden by users to report their own custom metrics after file io

ResetBoundaryConditionType_Mesh1DSELF_Mesh_1DSubroutine

This method can be used to reset all of the boundary elements boundary condition type to the desired value.

Read more…
ResetBoundaryConditionType_Mesh2D_tSELF_Mesh_2D_tSubroutine

This method can be used to reset all of the boundary elements boundary condition type to the desired value.

Read more…
ResetBoundaryConditionType_Mesh3D_tSELF_Mesh_3D_tSubroutine

This method can be used to reset all of the boundary elements boundary condition type to the desired value.

Read more…
rewindSELF_BoundaryConditionsSubroutine
riemannflux1d_advection_diffusion_1d_tself_advection_diffusion_1d_tFunction
riemannflux1d_Burgers1D_tself_Burgers1D_tFunction
riemannflux1d_ModelSELF_ModelFunction
riemannflux2d_advection_diffusion_2d_tself_advection_diffusion_2d_tFunction
riemannflux2d_ECAdvection2D_tSELF_ECAdvection2D_tFunction

Local Lax-Friedrichs (Rusanov) Riemann flux for linear advection. Entropy-stable: provides symmetric dissipation at element interfaces. Uses the per-face spectral radius lambda = |u.n|, matching upwind (Godunov) for linear advection: tangential faces (u.n=0) contribute zero flux, avoiding spurious dissipation across element interfaces whose face normal is perpendicular to the velocity.

riemannflux2d_ESAtmo2D_tSELF_ESAtmo2D_tFunction

Local Lax-Friedrichs (Rusanov) Riemann flux. Provided as a fallback; the model overrides BoundaryFlux directly with the LMARS solver.

Read more…
riemannflux2d_LinearEuler2D_tself_LinearEuler2D_tFunction

Characteristic-decomposition (impedance-matched) interface flux for linear acoustics with possibly discontinuous sound speed.

Read more…
riemannflux2d_LinearShallowWater2D_tself_LinearShallowWater2D_tFunction
riemannflux2d_ModelSELF_ModelFunction
riemannflux3d_advection_diffusion_3d_tself_advection_diffusion_3d_tFunction
riemannflux3d_ECAdvection3D_tSELF_ECAdvection3D_tFunction

Local Lax-Friedrichs (Rusanov) Riemann flux for linear advection. Uses the per-face spectral radius lambda = |u.n|, matching upwind (Godunov) for linear advection: tangential faces (u.n=0) contribute zero flux, avoiding spurious dissipation across element interfaces whose face normal is perpendicular to the velocity.

riemannflux3d_ESAtmo3D_tSELF_ESAtmo3D_tFunction

Local Lax-Friedrichs (Rusanov) Riemann flux.

Read more…
riemannflux3D_LinearEuler3D_tself_LinearEuler3D_tFunction

Uses a local lax-friedrich's upwind flux The max eigenvalue is taken as the sound speed

riemannflux3d_ModelSELF_ModelFunction
SELF_bcMethodSELF_BoundaryConditionsInterface
self_blas_matrixop_1dSELF_GPUBLASSubroutine
self_blas_matrixop_1dSELF_GPUBLASSubroutine
self_blas_matrixop_dim1_2dSELF_GPUBLASSubroutine
self_blas_matrixop_dim1_2dSELF_GPUBLASSubroutine
self_blas_matrixop_dim1_3dSELF_GPUBLASSubroutine
self_blas_matrixop_dim1_3dSELF_GPUBLASSubroutine
self_blas_matrixop_dim2_2dSELF_GPUBLASSubroutine
self_blas_matrixop_dim2_2dSELF_GPUBLASSubroutine
self_blas_matrixop_dim2_3dSELF_GPUBLASSubroutine
self_blas_matrixop_dim2_3dSELF_GPUBLASSubroutine
self_blas_matrixop_dim3_3dSELF_GPUBLASSubroutine
self_blas_matrixop_dim3_3dSELF_GPUBLASSubroutine
SELF_timeIntegratorSELF_ModelInterface
setboundarycondition_DGModel1DSELF_DGModel1DSubroutine

Apply boundary conditions for the solution on GPU. Syncs boundary data from device, applies host-side BC dispatch (periodic defaults + registered BCs), then syncs back to device.

setboundarycondition_DGModel1D_tSELF_DGModel1D_tSubroutine

Apply boundary conditions for the solution. Periodic boundaries are set as the default; registered boundary conditions overwrite specific endpoints.

setboundarycondition_DGModel2D_tSELF_DGModel2D_tSubroutine

Apply registered boundary conditions for the solution. Each boundary condition method loops over its own boundary faces.

setboundarycondition_DGModel3D_tSELF_DGModel3D_tSubroutine

Apply registered boundary conditions for the solution.

SetCoriolis_betaplane_LinearShallowWater2D_tself_LinearShallowWater2D_tSubroutine
SetCoriolis_fplane_LinearShallowWater2D_tself_LinearShallowWater2D_tSubroutine
SetDescription_DataObjSELF_DataSubroutine

Set the description of the ivar-th variable

SetDescription_MetadataSELF_MetadataSubroutine
SetDiffusion_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

Set the constant-coefficient Laplacian diffusion coefficients (kinematic momentum diffusivity and thermal diffusivity, both in m^2/s) and the dimensionless SIPG jump penalty. Setting nu or kappa > 0 enables the gradient pipeline so that the diffusive flux methods receive solutionGradient.

Read more…
SetDiffusion_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

Set the constant-coefficient Laplacian diffusion coefficients (kinematic momentum diffusivity and thermal diffusivity, both in m^2/s) and the dimensionless SIPG jump penalty. Setting nu or kappa > 0 enables the gradient pipeline so that the diffusive flux methods receive solutionGradient.

Read more…
SetElemToRank_DomainDecompositionSELF_DomainDecompositionSubroutine
SetElemToRank_DomainDecomposition_tSELF_DomainDecomposition_tSubroutine
SetEquation_DataObjSELF_DataSubroutine

Sets the equation parser for the ivar-th variable

SetEquation_Vector2D_tSELF_Vector_2D_tSubroutine

Sets the equation parser for the idir direction and ivar-th variable

SetEquation_Vector3D_tSELF_Vector_3D_tSubroutine

Sets the equation parser for the idir direction and ivar-th variable

setgradientboundarycondition_DGModel1DSELF_DGModel1DSubroutine

Apply gradient boundary conditions on GPU. Syncs gradient boundary data from device, applies host-side BC dispatch (periodic defaults + registered BCs), then syncs back to device.

setgradientboundarycondition_DGModel1D_tSELF_DGModel1D_tSubroutine

Apply boundary conditions for the solution gradient. Periodic boundaries are set as the default; registered boundary conditions overwrite specific endpoints.

setgradientboundarycondition_DGModel2D_tSELF_DGModel2D_tSubroutine

Apply registered boundary conditions for the solution gradient. Each boundary condition method loops over its own boundary faces.

setgradientboundarycondition_DGModel3D_tSELF_DGModel3D_tSubroutine

Apply registered boundary conditions for the solution gradient.

SetHydrostaticBalance_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

Initialise a hydrostatically balanced atmosphere with uniform potential temperature theta0, zero velocity, and the geopotential Phi = g*y carried as state variable index 5.

Read more…
SetHydrostaticBalance_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

Initialise a hydrostatically balanced atmosphere with uniform potential temperature theta0, zero velocity, and the geopotential Phi = g*z carried as state variable index 6.

Read more…
SetInteriorFromEquation_MappedScalar1DSELF_MappedScalar_1DSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedScalar1D_tSELF_MappedScalar_1D_tSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedScalar2DSELF_MappedScalar_2DSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedScalar2D_tSELF_MappedScalar_2D_tSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedScalar3DSELF_MappedScalar_3DSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedScalar3D_tSELF_MappedScalar_3D_tSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedVector2DSELF_MappedVector_2DSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedVector2D_tSELF_MappedVector_2D_tSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedVector3DSELF_MappedVector_3DSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetInteriorFromEquation_MappedVector3D_tSELF_MappedVector_3D_tSubroutine

Sets the this % interior attribute using the eqn attribute, geometry (for physical positions), and provided simulation time.

SetMetadata_Burgers1D_tself_Burgers1D_tSubroutine
SetMetadata_DGModel1D_tSELF_DGModel1D_tSubroutine
SetMetadata_DGModel2D_tSELF_DGModel2D_tSubroutine
SetMetadata_DGModel3D_tSELF_DGModel3D_tSubroutine
SetMetadata_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine
SetMetadata_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine
SetMetadata_LinearEuler2D_tself_LinearEuler2D_tSubroutine
SetMetadata_LinearEuler3D_tself_LinearEuler3D_tSubroutine
SetMetadata_LinearShallowWater2D_tself_LinearShallowWater2D_tSubroutine
SetName_DataObjSELF_DataSubroutine

Set the name of the ivar-th variable

SetName_MetadataSELF_MetadataSubroutine
SetNumberOfVariables_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

Five conserved variables: (rho, rhou, rhov, rhotheta, Phi), where Phi = gy is the geopotential. Phi has zero flux (volume and surface) so its tendency is identically zero; it is carried in the state vector solely so that the Souza et al. (2023) non-conservative gravity flux differencing in SourceMethod can read it node-locally.

SetNumberOfVariables_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

Six conserved variables: (rho, rhou, rhov, rhow, rhotheta, Phi), where Phi = g*z is the geopotential. Phi has zero flux (volume and surface) so its tendency is identically zero; it is carried in the state vector solely so that the Souza et al. (2023) non-conservative gravity flux differencing in SourceMethod can read it node-locally.

SetNumberOfVariables_LinearEuler2D_tself_LinearEuler2D_tSubroutine
SetNumberOfVariables_LinearEuler3D_tself_LinearEuler3D_tSubroutine
SetNumberOfVariables_LinearShallowWater2D_tself_LinearShallowWater2D_tSubroutine
SetNumberOfVariables_ModelSELF_ModelSubroutine
SetPoints_Points_tSELF_Points_tSubroutine

Copy user-supplied physical coordinates into the cloud. xIn must be shape (nPoints, nDim) matching the init dimensions.

SetSimulationTimeSELF_ModelSubroutine

Sets the model % t attribute with the provided simulation time

SetSolutionFromChar_DGModel1D_tSELF_DGModel1D_tSubroutine
SetSolutionFromChar_DGModel2D_tSELF_DGModel2D_tSubroutine
SetSolutionFromChar_DGModel3D_tSELF_DGModel3D_tSubroutine
SetSolutionFromEqn_DGModel1D_tSELF_DGModel1D_tSubroutine
SetSolutionFromEqn_DGModel2D_tSELF_DGModel2D_tSubroutine
SetSolutionFromEqn_DGModel3D_tSELF_DGModel3D_tSubroutine
SetTimeIntegrator_withCharSELF_ModelSubroutine

Sets the time integrator method, using a character input

Read more…
SetUnits_DataObjSELF_DataSubroutine

Set the units of the ivar-th variable

SetUnits_MetadataSELF_MetadataSubroutine
SideExchange_2D_gpuSELF_GPUInterfacesInterface
SideExchange_3D_gpuSELF_GPUInterfacesInterface
SideExchange_MappedScalar1DSELF_MappedScalar_1DSubroutine
SideExchange_MappedScalar1D_tSELF_MappedScalar_1D_tSubroutine
SideExchange_MappedScalar2DSELF_MappedScalar_2DSubroutine
SideExchange_MappedScalar2D_tSELF_MappedScalar_2D_tSubroutine
SideExchange_MappedScalar3DSELF_MappedScalar_3DSubroutine
SideExchange_MappedScalar3D_tSELF_MappedScalar_3D_tSubroutine
SideExchange_MappedVector2DSELF_MappedVector_2DSubroutine
SideExchange_MappedVector2D_tSELF_MappedVector_2D_tSubroutine
SideExchange_MappedVector3DSELF_MappedVector_3DSubroutine
SideExchange_MappedVector3D_tSELF_MappedVector_3D_tSubroutine
source1d_ModelSELF_ModelFunction
source2d_ModelSELF_ModelFunction
source3d_ModelSELF_ModelFunction
sourcemethod_DGModel1DSELF_DGModel1DSubroutine
sourcemethod_DGModel1D_tSELF_DGModel1D_tSubroutine
sourcemethod_DGModel2DSELF_DGModel2DSubroutine
sourcemethod_DGModel2D_tSELF_DGModel2D_tSubroutine
sourcemethod_DGModel3DSELF_DGModel3DSubroutine
sourcemethod_DGModel3D_tSELF_DGModel3D_tSubroutine
SourceMethod_ECAdvection2DSELF_ECAdvection2DSubroutine

No source term — upload the zero-initialised host array to device.

SourceMethod_ECAdvection3DSELF_ECAdvection3DSubroutine

No source term — upload the zero-initialised host array to device.

SourceMethod_ESAtmo2DSELF_ESAtmo2DSubroutine

Souza et al. (2023) non-conservative gravity flux differencing on GPU. The geopotential lives at solution(:,:,:,5); the source for rho*v is computed via the SBP-EC two-point form using log-mean density and the contravariant metric.

sourcemethod_esatmo2d_gpuSELF_ESAtmo2DInterface
SourceMethod_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

Souza et al. (2023) non-conservative gravity flux differencing.

Read more…
SourceMethod_ESAtmo3DSELF_ESAtmo3DSubroutine

Souza et al. (2023) non-conservative gravity flux differencing on GPU. The geopotential lives at solution(:,:,:,:,6); the source for rho*w is computed via the SBP-EC two-point form using log-mean density and the contravariant metric. Fully device-resident.

sourcemethod_esatmo3d_gpuSELF_ESAtmo3DInterface
SourceMethod_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

Souza et al. (2023) non-conservative gravity flux differencing.

Read more…
sourcemethod_LinearEuler2Dself_LinearEuler2DSubroutine
sourcemethod_LinearEuler3D_tself_LinearEuler3D_tSubroutine
sourcemethod_LinearShallowWater2Dself_LinearShallowWater2DSubroutine
sourcemethod_LinearShallowWater2D_gpuself_LinearShallowWater2DInterface
sourcemethod_LinearShallowWater2D_tself_LinearShallowWater2D_tSubroutine
SphericalSoundWave_LinearEuler2D_tself_LinearEuler2D_tSubroutine

This subroutine sets the initial condition for a weak blast wave problem. The initial condition is given by

Read more…
SphericalSoundWave_LinearEuler3D_tself_LinearEuler3D_tSubroutine

This subroutine sets the initial condition for a weak blast wave problem. The initial condition is given by

Read more…
twopointflux2d_ECAdvection2D_tSELF_ECAdvection2D_tFunction

Arithmetic-mean two-point flux for linear advection. Entropy-conserving with respect to eta(u) = u^2/2.

twopointflux2d_ECDGModel2D_tSELF_ECDGModel2D_tFunction

Entropy-conserving two-point flux function.

Read more…
twopointflux2d_ESAtmo2D_tSELF_ESAtmo2D_tFunction

Souza et al. (2023, JAMES) entropy-conservative two-point flux for 2-D compressible Euler in (rho, rhov, rhotheta) variables with p = p0(rhoRd*theta/p0)^gamma.

Read more…
twopointflux3d_ECAdvection3D_tSELF_ECAdvection3D_tFunction

Arithmetic-mean two-point flux for linear advection. Entropy-conserving with respect to eta(u) = u^2/2.

twopointflux3d_ECDGModel3D_tSELF_ECDGModel3D_tFunction

Entropy-conserving two-point flux function (3-D). flux(ivar, d) is the d-th physical component (d=1:x, d=2:y, d=3:z). Override in concrete models. Stub returns zero.

twopointflux3d_ESAtmo3D_tSELF_ESAtmo3D_tFunction

Souza et al. (2023, JAMES) entropy-conservative two-point flux for compressible Euler in (rho, rhov, rhotheta) variables with p = p0(rhoRd*theta/p0)^gamma.

Read more…
TwoPointFluxMethod_ECAdvection2DSELF_ECAdvection2DSubroutine

Contravariant EC two-point flux on GPU — fully device-resident.

twopointfluxmethod_ecadvection2d_gpuSELF_ECAdvection2DInterface
TwoPointFluxMethod_ECAdvection3DSELF_ECAdvection3DSubroutine

Contravariant EC two-point flux on GPU — fully device-resident.

twopointfluxmethod_ecadvection3d_gpuSELF_ECAdvection3DInterface
TwoPointFluxMethod_ECDGModel2D_tSELF_ECDGModel2D_tSubroutine

Computes pre-projected SCALAR contravariant two-point fluxes for all node pairs and stores them in twoPointFlux%interior(n,i,j,iel,ivar,r).

Read more…
TwoPointFluxMethod_ECDGModel3D_tSELF_ECDGModel3D_tSubroutine

Computes pre-projected SCALAR contravariant two-point fluxes for all node pairs, following Trixi.jl for curved meshes. Each direction r uses the correct partner AND the correct averaged metric Ja^r.

TwoPointFluxMethod_ESAtmo2DSELF_ESAtmo2DSubroutine

Souza et al. (2023) entropy-conservative two-point flux on GPU.

twopointfluxmethod_esatmo2d_gpuSELF_ESAtmo2DInterface
TwoPointFluxMethod_ESAtmo2D_tSELF_ESAtmo2D_tSubroutine

Pre-projected scalar contravariant two-point Souza et al. (2023) EC flux. For each node pair (a, b) along reference direction r:

Read more…
TwoPointFluxMethod_ESAtmo3DSELF_ESAtmo3DSubroutine

Souza et al. (2023) entropy-conservative two-point flux on GPU. Fully device-resident.

twopointfluxmethod_esatmo3d_gpuSELF_ESAtmo3DInterface
TwoPointFluxMethod_ESAtmo3D_tSELF_ESAtmo3D_tSubroutine

Pre-projected scalar contravariant two-point Souza et al. (2023) EC flux. For each node pair (a, b) along reference direction r:

Read more…
TwoPointVectorDivergence_2D_gpuSELF_GPUInterfacesInterface
TwoPointVectorDivergence_3D_gpuSELF_GPUInterfacesInterface
UniformBlockMesh_Mesh1DSELF_Mesh_1DSubroutine
UniformPointsSELF_SupportRoutinesFunction

\addtogroup SELF_SupportRoutines @{ \fn UniformPoints Generates a REAL(prec) array of N points evenly spaced between two points.

Read more…
UniformStructuredMesh_Mesh2D_tSELF_Mesh_2D_tSubroutine

Create a structured mesh and store it in SELF's unstructured mesh format. The mesh is created in tiles of size (tnx,tny). Tiling is used to determine the element ordering.

Read more…
UniformStructuredMesh_Mesh3D_tSELF_Mesh_3D_tSubroutine

Create a structured mesh and store it in SELF's unstructured mesh format. The mesh is created in tiles of size (tnx,tny,tnz). Tiling is used to determine the element ordering.

Read more…
UpdateDevice_Mesh2DSELF_Mesh_2DSubroutine
UpdateDevice_Mesh2D_tSELF_Mesh_2D_tSubroutine
UpdateDevice_Mesh3DSELF_Mesh_3DSubroutine
UpdateDevice_Mesh3D_tSELF_Mesh_3D_tSubroutine
UpdateDevice_PointsSELF_PointsSubroutine

Copy elements, coordinates, and the per-point Lagrange basis cache from host to device. Lazily (re)allocates the cache buffers if their degree changed since the previous call.

UpdateDevice_Scalar1DSELF_Scalar_1DSubroutine
UpdateDevice_Scalar1DSELF_Scalar_1DSubroutine
UpdateDevice_Scalar1D_tSELF_Scalar_1D_tSubroutine
UpdateDevice_Scalar2DSELF_Scalar_2DSubroutine
UpdateDevice_Scalar2D_tSELF_Scalar_2D_tSubroutine
UpdateDevice_Scalar3DSELF_Scalar_3DSubroutine
UpdateDevice_Scalar3D_tSELF_Scalar_3D_tSubroutine
UpdateDevice_Tensor2DSELF_Tensor_2DSubroutine
UpdateDevice_Tensor2D_tSELF_Tensor_2D_tSubroutine
UpdateDevice_Tensor3DSELF_Tensor_3DSubroutine
UpdateDevice_Tensor3D_tSELF_Tensor_3D_tSubroutine
UpdateDevice_TwoPointVector2DSELF_TwoPointVector_2DSubroutine
UpdateDevice_TwoPointVector2D_tSELF_TwoPointVector_2D_tSubroutine
UpdateDevice_TwoPointVector3DSELF_TwoPointVector_3DSubroutine
UpdateDevice_TwoPointVector3D_tSELF_TwoPointVector_3D_tSubroutine
UpdateDevice_Vector2DSELF_Vector_2DSubroutine
UpdateDevice_Vector2D_tSELF_Vector_2D_tSubroutine
UpdateDevice_Vector3DSELF_Vector_3DSubroutine
UpdateDevice_Vector3D_tSELF_Vector_3D_tSubroutine
UpdateGRKSELF_ModelInterface
UpdateGRK2_DGModel1DSELF_DGModel1DSubroutine
UpdateGRK2_DGModel1D_tSELF_DGModel1D_tSubroutine
UpdateGRK2_DGModel2DSELF_DGModel2DSubroutine
UpdateGRK2_DGModel2D_tSELF_DGModel2D_tSubroutine
UpdateGRK2_DGModel3DSELF_DGModel3DSubroutine
UpdateGRK2_DGModel3D_tSELF_DGModel3D_tSubroutine
UpdateGRK3_DGModel1DSELF_DGModel1DSubroutine
UpdateGRK3_DGModel1D_tSELF_DGModel1D_tSubroutine
UpdateGRK3_DGModel2DSELF_DGModel2DSubroutine
UpdateGRK3_DGModel2D_tSELF_DGModel2D_tSubroutine
UpdateGRK3_DGModel3DSELF_DGModel3DSubroutine
UpdateGRK3_DGModel3D_tSELF_DGModel3D_tSubroutine
UpdateGRK4_DGModel1DSELF_DGModel1DSubroutine
UpdateGRK4_DGModel1D_tSELF_DGModel1D_tSubroutine
UpdateGRK4_DGModel2DSELF_DGModel2DSubroutine
UpdateGRK4_DGModel2D_tSELF_DGModel2D_tSubroutine
UpdateGRK4_DGModel3DSELF_DGModel3DSubroutine
UpdateGRK4_DGModel3D_tSELF_DGModel3D_tSubroutine
UpdateGRK_gpuSELF_GPUInterfacesInterface
UpdateHost_Scalar1DSELF_Scalar_1DSubroutine
UpdateHost_Scalar1DSELF_Scalar_1DSubroutine
UpdateHost_Scalar1D_tSELF_Scalar_1D_tSubroutine
UpdateHost_Scalar2DSELF_Scalar_2DSubroutine
UpdateHost_Scalar2D_tSELF_Scalar_2D_tSubroutine
UpdateHost_Scalar3DSELF_Scalar_3DSubroutine
UpdateHost_Scalar3D_tSELF_Scalar_3D_tSubroutine
UpdateHost_Tensor2DSELF_Tensor_2DSubroutine
UpdateHost_Tensor2D_tSELF_Tensor_2D_tSubroutine
UpdateHost_Tensor3DSELF_Tensor_3DSubroutine
UpdateHost_Tensor3D_tSELF_Tensor_3D_tSubroutine
UpdateHost_TwoPointVector2DSELF_TwoPointVector_2DSubroutine
UpdateHost_TwoPointVector2D_tSELF_TwoPointVector_2D_tSubroutine
UpdateHost_TwoPointVector3DSELF_TwoPointVector_3DSubroutine
UpdateHost_TwoPointVector3D_tSELF_TwoPointVector_3D_tSubroutine
UpdateHost_Vector2DSELF_Vector_2DSubroutine
UpdateHost_Vector2D_tSELF_Vector_2D_tSubroutine
UpdateHost_Vector3DSELF_Vector_3DSubroutine
UpdateHost_Vector3D_tSELF_Vector_3D_tSubroutine
UpdateSolutionSELF_ModelInterface
UpdateSolution_DGModel1DSELF_DGModel1DSubroutine

Computes a solution update as , where dt is either provided through the interface or taken as the Model's stored time step size (model % dt)

UpdateSolution_DGModel1D_tSELF_DGModel1D_tSubroutine

Computes a solution update as , where dt is either provided through the interface or taken as the Model's stored time step size (model % dt)

UpdateSolution_DGModel2DSELF_DGModel2DSubroutine

Computes a solution update as , where dt is either provided through the interface or taken as the Model's stored time step size (model % dt)

UpdateSolution_DGModel2D_tSELF_DGModel2D_tSubroutine

Computes a solution update as , where dt is either provided through the interface or taken as the Model's stored time step size (model % dt)

UpdateSolution_DGModel3DSELF_DGModel3DSubroutine

Computes a solution update as , where dt is either provided through the interface or taken as the Model's stored time step size (model % dt)

UpdateSolution_DGModel3D_tSELF_DGModel3D_tSubroutine

Computes a solution update as , where dt is either provided through the interface or taken as the Model's stored time step size (model % dt)

UpdateSolution_gpuSELF_GPUInterfacesInterface
UpperCaseSELF_SupportRoutinesFunction
Write_DGModel1D_tSELF_DGModel1D_tSubroutine
Write_DGModel2D_tSELF_DGModel2D_tSubroutine
Write_DGModel3D_tSELF_DGModel3D_tSubroutine
Write_Geometry1DSELF_Geometry_1DSubroutine
Write_Mesh1DSELF_Mesh_1DSubroutine
Write_Mesh2D_tSELF_Mesh_2D_tSubroutine
Write_Mesh3D_tSELF_Mesh_3D_tSubroutine
WriteArray_HDF5SELF_HDF5Interface
WriteArray_HDF5_int32_r1_serialSELF_HDF5Subroutine
WriteArray_HDF5_int32_r2_serialSELF_HDF5Subroutine
WriteArray_HDF5_int32_r3_serialSELF_HDF5Subroutine
WriteArray_HDF5_int32_r4_serialSELF_HDF5Subroutine
WriteArray_HDF5_real_r1_serialSELF_HDF5Subroutine
WriteArray_HDF5_real_r2_serialSELF_HDF5Subroutine
WriteArray_HDF5_real_r3_parallelSELF_HDF5Subroutine
WriteArray_HDF5_real_r3_serialSELF_HDF5Subroutine
WriteArray_HDF5_real_r4_parallelSELF_HDF5Subroutine
WriteArray_HDF5_real_r4_serialSELF_HDF5Subroutine
WriteArray_HDF5_real_r5_serialSELF_HDF5Subroutine
WriteAttribute_HDF5SELF_HDF5Interface
WriteAttribute_HDF5_int32SELF_HDF5Subroutine
WriteCharacter_HDF5SELF_HDF5Interface
WriteCharacter_HDF5_serialSELF_HDF5Subroutine
WriteHDF5_Lagrange_tSELF_Lagrange_tSubroutine
WriteHDF5_MetadataSELF_MetadataSubroutine

Writes the metadata to a HDF5 file using the fields : * /metadata/{group}/name/{varid} * /metadata/{group}/description/{varid} * /metadata/{group}/units/{varid}

Read more…
WriteHDF5_MPI_Scalar2D_tSELF_Scalar_2D_tSubroutine
WriteHDF5_MPI_Scalar3D_tSELF_Scalar_3D_tSubroutine
WriteHDF5_MPI_Vector2D_tSELF_Vector_2D_tSubroutine
WriteHDF5_MPI_Vector3D_tSELF_Vector_3D_tSubroutine
WriteHDF5_Scalar1D_tSELF_Scalar_1D_tSubroutine
WriteHDF5_Scalar2D_tSELF_Scalar_2D_tSubroutine
WriteHDF5_Scalar3D_tSELF_Scalar_3D_tSubroutine
WriteHDF5_Vector2D_tSELF_Vector_2D_tSubroutine
WriteHDF5_Vector3D_tSELF_Vector_3D_tSubroutine
WriteModelSELF_ModelInterface
WriteTecplotSELF_ModelInterface
WriteTecplot_DGModel1D_tSELF_DGModel1D_tSubroutine
WriteTecplot_DGModel2D_tSELF_DGModel2D_tSubroutine
WriteTecplot_DGModel3D_tSELF_DGModel3D_tSubroutine
WriteTecplot_SEMHexSELF_Geometry_3DSubroutine
WriteTecplot_SEMQuadSELF_Geometry_2DSubroutine
call~~graph~~CallGraph proc~riemannflux1d_burgers1d_t riemannflux1d_Burgers1D_t proc~legendreqandl LegendreQandL interface~hbc2d_nonormalflow_lineareuler2d_gpu hbc2d_nonormalflow_lineareuler2d_gpu proc~flux1d_burgers1d_t flux1d_Burgers1D_t proc~gradient_vector3d Gradient_Vector3D proc~self_blas_matrixop_dim3_3d self_blas_matrixop_dim3_3d proc~gradient_vector3d->proc~self_blas_matrixop_dim3_3d proc~self_blas_matrixop_dim2_3d self_blas_matrixop_dim2_3d proc~gradient_vector3d->proc~self_blas_matrixop_dim2_3d proc~self_blas_matrixop_dim1_3d self_blas_matrixop_dim1_3d proc~gradient_vector3d->proc~self_blas_matrixop_dim1_3d proc~additionalinit_esatmo3d AdditionalInit_ESAtmo3D proc~additionalinit_esatmo3d_t AdditionalInit_ESAtmo3D_t proc~additionalinit_esatmo3d->proc~additionalinit_esatmo3d_t proc~divergence_vector3d Divergence_Vector3D proc~divergence_vector3d->proc~self_blas_matrixop_dim3_3d proc~divergence_vector3d->proc~self_blas_matrixop_dim2_3d proc~divergence_vector3d->proc~self_blas_matrixop_dim1_3d proc~write_mesh3d_t Write_Mesh3D_t interface~open_hdf5 Open_HDF5 proc~write_mesh3d_t->interface~open_hdf5 interface~writeattribute_hdf5 WriteAttribute_HDF5 proc~write_mesh3d_t->interface~writeattribute_hdf5 interface~writearray_hdf5 WriteArray_HDF5 proc~write_mesh3d_t->interface~writearray_hdf5 proc~close_hdf5 Close_HDF5 proc~write_mesh3d_t->proc~close_hdf5 proc~legendregausslobatto LegendreGaussLobatto proc~legendregausslobatto->proc~legendreqandl proc~updatedevice_tensor3d UpdateDevice_Tensor3D interface~hipmemcpy hipMemcpy proc~updatedevice_tensor3d->interface~hipmemcpy proc~gpucheck gpuCheck proc~updatedevice_tensor3d->proc~gpucheck proc~open_hdf5_serial Open_HDF5_serial interface~open_hdf5->proc~open_hdf5_serial proc~open_hdf5_parallel Open_HDF5_parallel interface~open_hdf5->proc~open_hdf5_parallel proc~additionalinit_lineareuler2d AdditionalInit_LinearEuler2D proc~additionalinit_lineareuler2d_t AdditionalInit_LinearEuler2D_t proc~additionalinit_lineareuler2d->proc~additionalinit_lineareuler2d_t proc~legendrepolynomial LegendrePolynomial interface~hbc2d_radiation_lineareuler2d_gpu hbc2d_radiation_lineareuler2d_gpu proc~free_semhex Free_SEMHex proc~generatefrommesh_semhex GenerateFromMesh_SEMHex interface~hbc3d_nonormalflow_esatmo3d_gpu hbc3d_nonormalflow_esatmo3d_gpu proc~calculatecontravariantbasis_semhex CalculateContravariantBasis_SEMHex proc~init_twopointvector3d Init_TwoPointVector3D proc~init_twopointvector3d->proc~gpucheck interface~hipmalloc hipMalloc proc~init_twopointvector3d->interface~hipmalloc equationparser equationparser proc~init_twopointvector3d->equationparser proc~calculatemetricterms_semhex CalculateMetricTerms_SEMHex proc~hbc2d_nonormalflow_lineareuler2d_gpu_wrapper hbc2d_NoNormalFlow_LinearEuler2D_GPU_wrapper proc~hbc2d_nonormalflow_lineareuler2d_gpu_wrapper->interface~hbc2d_nonormalflow_lineareuler2d_gpu interface~fluxmethod_lineareuler2d_gpu fluxmethod_LinearEuler2D_gpu proc~init_lagrange~2 Init_Lagrange proc~uniformpoints UniformPoints proc~init_lagrange~2->proc~uniformpoints proc~init_lagrange~2->interface~hipmemcpy proc~init_lagrange~2->proc~gpucheck proc~gpuavailable GPUAvailable proc~init_lagrange~2->proc~gpuavailable proc~init_lagrange~2->interface~hipmalloc proc~legendrequadrature LegendreQuadrature proc~init_lagrange~2->proc~legendrequadrature proc~chebyshevquadrature ChebyshevQuadrature proc~init_lagrange~2->proc~chebyshevquadrature proc~writeattribute_hdf5_int32 WriteAttribute_HDF5_int32 interface~writeattribute_hdf5->proc~writeattribute_hdf5_int32 proc~associategeometry_mappedscalar2d_t AssociateGeometry_MappedScalar2D_t interface~readattribute_hdf5 ReadAttribute_HDF5 proc~readattribute_hdf5_int32 ReadAttribute_HDF5_int32 interface~readattribute_hdf5->proc~readattribute_hdf5_int32 proc~readattribute_hdf5_real ReadAttribute_HDF5_real interface~readattribute_hdf5->proc~readattribute_hdf5_real proc~readattribute_hdf5_character ReadAttribute_HDF5_character interface~readattribute_hdf5->proc~readattribute_hdf5_character interface~pbc3d_nostress_esatmo3d_gpu pbc3d_nostress_esatmo3d_gpu interface~readarray_hdf5 ReadArray_HDF5 proc~readarray_hdf5_real_r3_serial ReadArray_HDF5_real_r3_serial interface~readarray_hdf5->proc~readarray_hdf5_real_r3_serial proc~readarray_hdf5_real_r1_serial ReadArray_HDF5_real_r1_serial interface~readarray_hdf5->proc~readarray_hdf5_real_r1_serial proc~readarray_hdf5_real_r2_serial ReadArray_HDF5_real_r2_serial interface~readarray_hdf5->proc~readarray_hdf5_real_r2_serial proc~readarray_hdf5_real_r4_serial ReadArray_HDF5_real_r4_serial interface~readarray_hdf5->proc~readarray_hdf5_real_r4_serial proc~readarray_hdf5_real_r5_serial ReadArray_HDF5_real_r5_serial interface~readarray_hdf5->proc~readarray_hdf5_real_r5_serial proc~readarray_hdf5_int32_r1_serial ReadArray_HDF5_int32_r1_serial interface~readarray_hdf5->proc~readarray_hdf5_int32_r1_serial proc~readarray_hdf5_int32_r2_serial ReadArray_HDF5_int32_r2_serial interface~readarray_hdf5->proc~readarray_hdf5_int32_r2_serial proc~readarray_hdf5_real_r1_parallel ReadArray_HDF5_real_r1_parallel interface~readarray_hdf5->proc~readarray_hdf5_real_r1_parallel proc~readarray_hdf5_real_r2_parallel ReadArray_HDF5_real_r2_parallel interface~readarray_hdf5->proc~readarray_hdf5_real_r2_parallel proc~readarray_hdf5_real_r3_parallel ReadArray_HDF5_real_r3_parallel interface~readarray_hdf5->proc~readarray_hdf5_real_r3_parallel proc~readarray_hdf5_real_r4_parallel ReadArray_HDF5_real_r4_parallel interface~readarray_hdf5->proc~readarray_hdf5_real_r4_parallel proc~readarray_hdf5_int32_r1_parallel ReadArray_HDF5_int32_r1_parallel interface~readarray_hdf5->proc~readarray_hdf5_int32_r1_parallel proc~readarray_hdf5_int32_r2_parallel ReadArray_HDF5_int32_r2_parallel interface~readarray_hdf5->proc~readarray_hdf5_int32_r2_parallel proc~writetecplot_semhex WriteTecplot_SEMHex proc~newunit newunit proc~writetecplot_semhex->proc~newunit proc~updatehost_twopointvector3d UpdateHost_TwoPointVector3D proc~updatehost_twopointvector3d->interface~hipmemcpy proc~updatehost_twopointvector3d->proc~gpucheck interface~almostequal AlmostEqual proc~almostequal_r64 AlmostEqual_r64 interface~almostequal->proc~almostequal_r64 proc~free_twopointvector3d Free_TwoPointVector3D interface~hipfree hipFree proc~free_twopointvector3d->interface~hipfree proc~free_twopointvector3d->proc~gpucheck proc~hbc2d_radiation_lineareuler2d_gpu_wrapper hbc2d_Radiation_LinearEuler2D_GPU_wrapper proc~hbc2d_radiation_lineareuler2d_gpu_wrapper->interface~hbc2d_radiation_lineareuler2d_gpu interface~writecharacter_hdf5 WriteCharacter_HDF5 proc~writecharacter_hdf5_serial WriteCharacter_HDF5_serial interface~writecharacter_hdf5->proc~writecharacter_hdf5_serial interface~boundaryflux_lineareuler2d_gpu boundaryflux_LinearEuler2D_gpu proc~free_lagrange~2 Free_Lagrange proc~free_lagrange~2->interface~hipfree proc~free_lagrange~2->proc~gpucheck proc~writearray_hdf5_real_r3_parallel WriteArray_HDF5_real_r3_parallel interface~writearray_hdf5->proc~writearray_hdf5_real_r3_parallel proc~writearray_hdf5_real_r4_parallel WriteArray_HDF5_real_r4_parallel interface~writearray_hdf5->proc~writearray_hdf5_real_r4_parallel proc~writearray_hdf5_int32_r4_serial WriteArray_HDF5_int32_r4_serial interface~writearray_hdf5->proc~writearray_hdf5_int32_r4_serial proc~writearray_hdf5_real_r1_serial WriteArray_HDF5_real_r1_serial interface~writearray_hdf5->proc~writearray_hdf5_real_r1_serial proc~writearray_hdf5_real_r2_serial WriteArray_HDF5_real_r2_serial interface~writearray_hdf5->proc~writearray_hdf5_real_r2_serial proc~writearray_hdf5_real_r3_serial WriteArray_HDF5_real_r3_serial interface~writearray_hdf5->proc~writearray_hdf5_real_r3_serial proc~writearray_hdf5_real_r4_serial WriteArray_HDF5_real_r4_serial interface~writearray_hdf5->proc~writearray_hdf5_real_r4_serial proc~writearray_hdf5_real_r5_serial WriteArray_HDF5_real_r5_serial interface~writearray_hdf5->proc~writearray_hdf5_real_r5_serial proc~writearray_hdf5_int32_r1_serial WriteArray_HDF5_int32_r1_serial interface~writearray_hdf5->proc~writearray_hdf5_int32_r1_serial proc~writearray_hdf5_int32_r2_serial WriteArray_HDF5_int32_r2_serial interface~writearray_hdf5->proc~writearray_hdf5_int32_r2_serial proc~writearray_hdf5_int32_r3_serial WriteArray_HDF5_int32_r3_serial interface~writearray_hdf5->proc~writearray_hdf5_int32_r3_serial proc~sourcemethod_lineareuler2d sourcemethod_LinearEuler2D proc~updatedevice_twopointvector3d UpdateDevice_TwoPointVector3D proc~updatedevice_twopointvector3d->interface~hipmemcpy proc~updatedevice_twopointvector3d->proc~gpucheck proc~boundaryflux_lineareuler2d boundaryflux_LinearEuler2D proc~boundaryflux_lineareuler2d->interface~boundaryflux_lineareuler2d_gpu proc~dissociategeometry_mappedscalar2d_t DissociateGeometry_MappedScalar2D_t proc~divergence_twopointvector3d Divergence_TwoPointVector3D interface~twopointvectordivergence_3d_gpu TwoPointVectorDivergence_3D_gpu proc~divergence_twopointvector3d->interface~twopointvectordivergence_3d_gpu proc~setinteriorfromequation_mappedscalar2d_t SetInteriorFromEquation_MappedScalar2D_t interface~boundaryflux_esatmo3d_gpu boundaryflux_esatmo3d_gpu proc~fluxmethod_lineareuler2d fluxmethod_LinearEuler2D proc~fluxmethod_lineareuler2d->interface~fluxmethod_lineareuler2d_gpu proc~mpiexchangeasync_mappedscalar2d_t MPIExchangeAsync_MappedScalar2D_t mpi_irecv mpi_irecv proc~mpiexchangeasync_mappedscalar2d_t->mpi_irecv mpi_isend mpi_isend proc~mpiexchangeasync_mappedscalar2d_t->mpi_isend proc~calculatetendency_ecdgmodel3d CalculateTendency_ECDGModel3D interface~ecdgsurfacecontribution_3d_gpu ECDGSurfaceContribution_3D_gpu proc~calculatetendency_ecdgmodel3d->interface~ecdgsurfacecontribution_3d_gpu interface~calculatedsdt_gpu CalculateDSDt_gpu proc~calculatetendency_ecdgmodel3d->interface~calculatedsdt_gpu proc~applyflip_mappedscalar2d_t ApplyFlip_MappedScalar2D_t proc~init_vector3d Init_Vector3D proc~init_vector3d->proc~gpucheck proc~init_vector3d->interface~hipmalloc interface~hipblascreate hipblasCreate proc~init_vector3d->interface~hipblascreate proc~hipblascheck hipblasCheck proc~init_vector3d->proc~hipblascheck proc~init_vector3d->equationparser h5open_f h5open_f proc~open_hdf5_serial->h5open_f h5fcreate_f h5fcreate_f proc~open_hdf5_serial->h5fcreate_f h5fopen_f h5fopen_f proc~open_hdf5_serial->h5fopen_f proc~updatesolution_dgmodel3d UpdateSolution_DGModel3D interface~updatesolution_gpu UpdateSolution_gpu proc~updatesolution_dgmodel3d->interface~updatesolution_gpu proc~open_hdf5_parallel->h5open_f proc~open_hdf5_parallel->h5fcreate_f proc~open_hdf5_parallel->h5fopen_f h5pcreate_f h5pcreate_f proc~open_hdf5_parallel->h5pcreate_f h5pset_fapl_mpio_f h5pset_fapl_mpio_f proc~open_hdf5_parallel->h5pset_fapl_mpio_f h5pclose_f h5pclose_f proc~open_hdf5_parallel->h5pclose_f interface~twopointfluxmethod_esatmo3d_gpu twopointfluxmethod_esatmo3d_gpu proc~gradient_vector3d_t Gradient_Vector3D_t proc~forwardshift ForwardShift proc~sideexchange_mappedscalar2d_t SideExchange_MappedScalar2D_t proc~comparearray CompareArray proc~init_ecdgmodel2d_t Init_ECDGModel2D_t proc~init_dgmodel2d_t Init_DGModel2D_t proc~init_ecdgmodel2d_t->proc~init_dgmodel2d_t proc~init_esatmo3d Init_ESAtmo3D proc~init_esatmo3d->interface~hipmemcpy proc~init_esatmo3d->proc~gpucheck proc~init_esatmo3d->interface~hipmalloc proc~init_ecdgmodel3d_t Init_ECDGModel3D_t proc~init_esatmo3d->proc~init_ecdgmodel3d_t proc~updategrk4_dgmodel3d UpdateGRK4_DGModel3D interface~updategrk_gpu UpdateGRK_gpu proc~updategrk4_dgmodel3d->interface~updategrk_gpu interface~diffusiveflux_esatmo3d_gpu diffusiveflux_esatmo3d_gpu h5fclose_f h5fclose_f proc~close_hdf5->h5fclose_f h5close_f h5close_f proc~close_hdf5->h5close_f proc~updategrk2_dgmodel3d UpdateGRK2_DGModel3D proc~updategrk2_dgmodel3d->interface~updategrk_gpu h5aopen_f h5aopen_f proc~readattribute_hdf5_int32->h5aopen_f h5tclose_f h5tclose_f proc~readattribute_hdf5_int32->h5tclose_f h5aget_type_f h5aget_type_f proc~readattribute_hdf5_int32->h5aget_type_f h5aread_f h5aread_f proc~readattribute_hdf5_int32->h5aread_f h5aclose_f h5aclose_f proc~readattribute_hdf5_int32->h5aclose_f proc~uppercase UpperCase proc~updategrk3_dgmodel3d UpdateGRK3_DGModel3D proc~updategrk3_dgmodel3d->interface~updategrk_gpu proc~calculatetendency_ecdgmodel2d_t CalculateTendency_ECDGModel2D_t proc~free_ecdgmodel2d_t Free_ECDGModel2D_t proc~free_dgmodel2d_t Free_DGModel2D_t proc~free_ecdgmodel2d_t->proc~free_dgmodel2d_t proc~mappedgradient_mappedscalar2d_t MappedGradient_MappedScalar2D_t proc~creategroup_hdf5 CreateGroup_HDF5 h5lexists_f h5lexists_f proc~creategroup_hdf5->h5lexists_f h5gcreate_f h5gcreate_f proc~creategroup_hdf5->h5gcreate_f h5gclose_f h5gclose_f proc~creategroup_hdf5->h5gclose_f proc~twopointflux2d_ecdgmodel2d_t twopointflux2d_ECDGModel2D_t proc~boundaryinterp_vector3d BoundaryInterp_Vector3D interface~boundaryinterp_3d_gpu BoundaryInterp_3D_gpu proc~boundaryinterp_vector3d->interface~boundaryinterp_3d_gpu proc~free_vector3d Free_Vector3D proc~free_vector3d->interface~hipfree proc~free_vector3d->proc~gpucheck interface~hipblasdestroy hipblasDestroy proc~free_vector3d->interface~hipblasdestroy proc~free_vector3d->proc~hipblascheck proc~calculatesolutiongradient_dgmodel3d CalculateSolutionGradient_DGModel3D proc~updatehost_vector3d UpdateHost_Vector3D proc~updatehost_vector3d->interface~hipmemcpy proc~updatehost_vector3d->proc~gpucheck interface~hbc2d_nonormalflow_esatmo2d_gpu hbc2d_nonormalflow_esatmo2d_gpu proc~twopointfluxmethod_ecdgmodel2d_t TwoPointFluxMethod_ECDGModel2D_t proc~calculateentropy_dgmodel3d CalculateEntropy_DGModel3D proc~calculateentropy_dgmodel3d->interface~hipmemcpy proc~calculateentropy_dgmodel3d->proc~gpucheck mpi_allreduce mpi_allreduce proc~calculateentropy_dgmodel3d->mpi_allreduce proc~init_scalar1d~2 Init_Scalar1D proc~init_scalar1d~2->proc~gpucheck proc~init_scalar1d~2->proc~gpuavailable proc~init_scalar1d~2->interface~hipmalloc proc~init_scalar1d~2->interface~hipblascreate proc~init_scalar1d~2->proc~hipblascheck proc~readattribute_hdf5_real->h5aopen_f proc~readattribute_hdf5_real->h5tclose_f proc~readattribute_hdf5_real->h5aget_type_f proc~readattribute_hdf5_real->h5aread_f proc~readattribute_hdf5_real->h5aclose_f proc~free_esatmo3d Free_ESAtmo3D proc~free_esatmo3d->interface~hipfree proc~free_esatmo3d->proc~gpucheck proc~free_ecdgmodel3d_t Free_ECDGModel3D_t proc~free_esatmo3d->proc~free_ecdgmodel3d_t proc~updatedevice_vector3d UpdateDevice_Vector3D proc~updatedevice_vector3d->interface~hipmemcpy proc~updatedevice_vector3d->proc~gpucheck interface~diffusiveboundaryflux_esatmo3d_gpu diffusiveboundaryflux_esatmo3d_gpu proc~readattribute_hdf5_character->h5aopen_f proc~readattribute_hdf5_character->h5tclose_f proc~readattribute_hdf5_character->h5aget_type_f proc~readattribute_hdf5_character->h5aread_f proc~readattribute_hdf5_character->h5aclose_f proc~gridinterp_vector3d GridInterp_Vector3D proc~gridinterp_vector3d->proc~self_blas_matrixop_dim3_3d proc~gridinterp_vector3d->proc~self_blas_matrixop_dim2_3d proc~gridinterp_vector3d->proc~self_blas_matrixop_dim1_3d proc~fluxmethod_dgmodel3d fluxmethod_DGModel3D proc~fluxmethod_dgmodel3d->interface~hipmemcpy proc~fluxmethod_dgmodel3d->proc~gpucheck proc~mappeddggradient_mappedscalar2d_t MappedDGGradient_MappedScalar2D_t proc~averagesides_vector3d AverageSides_Vector3D interface~average_gpu Average_gpu proc~averagesides_vector3d->interface~average_gpu proc~init_semhex Init_SEMHex proc~boundaryflux_dgmodel3d BoundaryFlux_DGModel3D proc~boundaryflux_dgmodel3d->interface~hipmemcpy proc~boundaryflux_dgmodel3d->proc~gpucheck interface~pbc2d_nostress_esatmo2d_gpu pbc2d_nostress_esatmo2d_gpu proc~clampcell ClampCell proc~updategrk3_dgmodel2d_t UpdateGRK3_DGModel2D_t proc~mappeddgdivergence_mappedvector2d_t MappedDGDivergence_MappedVector2D_t proc~resetboundaryconditiontype_mesh1d ResetBoundaryConditionType_Mesh1D proc~free_vector3d_t Free_Vector3D_t proc~updatehost_vector3d_t UpdateHost_Vector3D_t proc~hbc3d_radiation_lineareuler3d_gpu_wrapper hbc3d_Radiation_LinearEuler3D_GPU_wrapper interface~hbc3d_radiation_lineareuler3d_gpu hbc3d_radiation_lineareuler3d_gpu proc~hbc3d_radiation_lineareuler3d_gpu_wrapper->interface~hbc3d_radiation_lineareuler3d_gpu interface~fluxmethod_lineareuler3d_gpu fluxmethod_LinearEuler3D_gpu interface~ecdgsurfacecontribution_2d_gpu ECDGSurfaceContribution_2D_gpu proc~buildelementbboxes_2d BuildElementBBoxes_2D proc~updatedevice_scalar2d_t UpdateDevice_Scalar2D_t proc~associategeometry_mappedscalar3d_t AssociateGeometry_MappedScalar3D_t proc~write_mesh1d Write_Mesh1D proc~write_mesh1d->interface~open_hdf5 proc~write_mesh1d->interface~writeattribute_hdf5 proc~write_mesh1d->interface~writearray_hdf5 proc~write_mesh1d->proc~close_hdf5 proc~mappeddivergence_mappedvector2d_t MappedDivergence_MappedVector2D_t proc~boundaryinterp_scalar2d_t BoundaryInterp_Scalar2D_t proc~averagesides_scalar2d_t AverageSides_Scalar2D_t proc~updatedevice_vector3d_t UpdateDevice_Vector3D_t proc~gridinterp_scalar2d_t GridInterp_Scalar2D_t proc~setequation_vector3d_t SetEquation_Vector3D_t proc~setequation_vector3d_t->equationparser proc~updategrk4_dgmodel2d_t UpdateGRK4_DGModel2D_t proc~gridinterp_vector3d_t GridInterp_Vector3D_t proc~calculatesolutiongradient_dgmodel2d_t CalculateSolutionGradient_DGModel2D_t proc~boundaryflux_lineareuler3d boundaryflux_LinearEuler3D interface~boundaryflux_lineareuler3d_gpu boundaryflux_LinearEuler3D_gpu proc~boundaryflux_lineareuler3d->interface~boundaryflux_lineareuler3d_gpu proc~averagesides_vector3d_t AverageSides_Vector3D_t proc~updatehost_vector2d_t UpdateHost_Vector2D_t proc~fluxmethod_lineareuler3d fluxmethod_LinearEuler3D proc~fluxmethod_lineareuler3d->interface~fluxmethod_lineareuler3d_gpu proc~free_vector2d_t Free_Vector2D_t proc~mappedgradient_mappedscalar3d_t MappedGradient_MappedScalar3D_t proc~buildelementbboxes_3d BuildElementBBoxes_3D proc~dissociategeometry_mappedscalar3d_t DissociateGeometry_MappedScalar3D_t proc~self_blas_matrixop_dim3_3d->proc~hipblascheck hipblasgemvstridedbatched hipblasgemvstridedbatched proc~self_blas_matrixop_dim3_3d->hipblasgemvstridedbatched proc~gradient_scalar2d_t Gradient_Scalar2D_t proc~setinteriorfromequation_mappedscalar3d_t SetInteriorFromEquation_MappedScalar3D_t proc~boundaryinterp_vector3d_t BoundaryInterp_Vector3D_t proc~calculateentropy_dgmodel2d_t CalculateEntropy_DGModel2D_t proc~calculateentropy_dgmodel2d_t->mpi_allreduce proc~mpiexchangeasync_mappedscalar3d_t MPIExchangeAsync_MappedScalar3D_t proc~mpiexchangeasync_mappedscalar3d_t->mpi_irecv proc~mpiexchangeasync_mappedscalar3d_t->mpi_isend proc~init_scalar3d Init_Scalar3D proc~init_scalar3d->proc~gpucheck proc~init_scalar3d->interface~hipmalloc proc~init_scalar3d->interface~hipblascreate proc~init_scalar3d->proc~hipblascheck proc~updatedevice_vector2d_t UpdateDevice_Vector2D_t proc~applyflip_mappedscalar3d_t ApplyFlip_MappedScalar3D_t proc~writehdf5_mpi_scalar2d_t WriteHDF5_MPI_Scalar2D_t proc~writehdf5_mpi_scalar2d_t->interface~writearray_hdf5 proc~writehdf5_mpi_scalar2d_t->proc~creategroup_hdf5 proc~setequation_vector2d_t SetEquation_Vector2D_t proc~setequation_vector2d_t->equationparser proc~boundaryflux_dgmodel2d_t BoundaryFlux_DGModel2D_t proc~associategeometry_mappedtwopointvector3d_t AssociateGeometry_MappedTwoPointVector3D_t proc~updategrk4_dgmodel3d_t UpdateGRK4_DGModel3D_t proc~gridinterp_vector2d_t GridInterp_Vector2D_t proc~averagesides_vector2d_t AverageSides_Vector2D_t proc~associategeometry_mappedtwopointvector2d_t AssociateGeometry_MappedTwoPointVector2D_t proc~boundaryflux_dgmodel3d_t BoundaryFlux_DGModel3D_t proc~fluxmethod_dgmodel2d_t fluxmethod_DGModel2D_t proc~dissociategeometry_mappedtwopointvector3d_t DissociateGeometry_MappedTwoPointVector3D_t proc~fluxmethod_dgmodel3d_t fluxmethod_DGModel3D_t proc~boundaryinterp_vector2d_t BoundaryInterp_Vector2D_t proc~mappeddivergence_mappedtwopointvector3d_t MappedDivergence_MappedTwoPointVector3D_t proc~newtoninverse_2d NewtonInverse_2D proc~sourcemethod_dgmodel2d_t sourcemethod_DGModel2D_t proc~writehdf5_scalar2d_t WriteHDF5_Scalar2D_t proc~writehdf5_scalar2d_t->interface~writearray_hdf5 proc~writehdf5_scalar2d_t->proc~creategroup_hdf5 proc~sideexchange_mappedscalar3d_t SideExchange_MappedScalar3D_t proc~dissociategeometry_mappedtwopointvector2d_t DissociateGeometry_MappedTwoPointVector2D_t proc~mappeddivergence_mappedvector3d MappedDivergence_MappedVector3D interface~contravariantprojection_3d_gpu ContravariantProjection_3D_gpu proc~mappeddivergence_mappedvector3d->interface~contravariantprojection_3d_gpu interface~divergence_3d_gpu Divergence_3D_gpu proc~mappeddivergence_mappedvector3d->interface~divergence_3d_gpu interface~jacobianweight_3d_gpu JacobianWeight_3D_gpu proc~mappeddivergence_mappedvector3d->interface~jacobianweight_3d_gpu proc~additionalinit_linearshallowwater2d_t AdditionalInit_LinearShallowWater2D_t proc~mappeddivergence_mappedtwopointvector2d_t MappedDivergence_MappedTwoPointVector2D_t proc~writehdf5_mpi_vector3d_t WriteHDF5_MPI_Vector3D_t proc~writehdf5_mpi_vector3d_t->interface~writearray_hdf5 proc~writehdf5_mpi_vector3d_t->proc~creategroup_hdf5 proc~curl_vector3d_t Curl_Vector3D_t proc~updatehost_scalar3d UpdateHost_Scalar3D proc~updatehost_scalar3d->interface~hipmemcpy proc~updatehost_scalar3d->proc~gpucheck proc~free_scalar3d Free_Scalar3D proc~free_scalar3d->interface~hipfree proc~free_scalar3d->proc~gpucheck proc~free_scalar3d->interface~hipblasdestroy proc~free_scalar3d->proc~hipblascheck proc~gradient_vector2d_t Gradient_Vector2D_t proc~gradient_scalar2d Gradient_Scalar2D proc~self_blas_matrixop_dim1_2d self_blas_matrixop_dim1_2d proc~gradient_scalar2d->proc~self_blas_matrixop_dim1_2d proc~self_blas_matrixop_dim2_2d self_blas_matrixop_dim2_2d proc~gradient_scalar2d->proc~self_blas_matrixop_dim2_2d proc~calculateentropy_dgmodel3d_t CalculateEntropy_DGModel3D_t proc~calculateentropy_dgmodel3d_t->mpi_allreduce proc~mappeddggradient_mappedscalar3d_t MappedDGGradient_MappedScalar3D_t proc~setname_metadata SetName_Metadata proc~setnumberofvariables_esatmo3d_t SetNumberOfVariables_ESAtmo3D_t proc~newtoninverse_3d NewtonInverse_3D proc~setboundarycondition_dgmodel2d_t setboundarycondition_DGModel2D_t proc~updatedevice_scalar3d UpdateDevice_Scalar3D proc~updatedevice_scalar3d->interface~hipmemcpy proc~updatedevice_scalar3d->proc~gpucheck proc~mapboundaryconditions_dgmodel2d_t MapBoundaryConditions_DGModel2D_t proc~additionalinit_ecadvection3d AdditionalInit_ECAdvection3D proc~additionalinit_ecadvection3d_t AdditionalInit_ECAdvection3D_t proc~additionalinit_ecadvection3d->proc~additionalinit_ecadvection3d_t proc~boundaryinterp_scalar3d BoundaryInterp_Scalar3D proc~boundaryinterp_scalar3d->interface~boundaryinterp_3d_gpu proc~divergence_vector2d_t Divergence_Vector2D_t proc~averagesides_scalar3d AverageSides_Scalar3D proc~averagesides_scalar3d->interface~average_gpu proc~divergence_vector3d_t Divergence_Vector3D_t proc~mpiexchangeasync_mappedvector3d MPIExchangeAsync_MappedVector3D proc~mpiexchangeasync_mappedvector3d->mpi_irecv proc~mpiexchangeasync_mappedvector3d->mpi_isend proc~gridinterp_scalar3d GridInterp_Scalar3D proc~gridinterp_scalar3d->proc~self_blas_matrixop_dim3_3d proc~gridinterp_scalar3d->proc~self_blas_matrixop_dim2_3d proc~gridinterp_scalar3d->proc~self_blas_matrixop_dim1_3d proc~calculatesolutiongradient_dgmodel3d_t CalculateSolutionGradient_DGModel3D_t proc~gradient_scalar3d Gradient_Scalar3D proc~gradient_scalar3d->proc~self_blas_matrixop_dim3_3d proc~gradient_scalar3d->proc~self_blas_matrixop_dim2_3d proc~gradient_scalar3d->proc~self_blas_matrixop_dim1_3d proc~entropy_func_advection_diffusion_1d_t entropy_func_advection_diffusion_1d_t proc~setdescription_metadata SetDescription_Metadata proc~averagesides_scalar2d AverageSides_Scalar2D proc~averagesides_scalar2d->interface~average_gpu proc~init_scalar2d_t Init_Scalar2D_t proc~setunits_metadata SetUnits_Metadata proc~init_ecadvection3d Init_ECAdvection3D proc~init_ecadvection3d->interface~hipmemcpy proc~init_ecadvection3d->proc~gpucheck proc~init_ecadvection3d->interface~hipmalloc proc~init_ecadvection3d->proc~init_ecdgmodel3d_t interface~hbc3d_mirror_ecadvection3d_gpu hbc3d_mirror_ecadvection3d_gpu proc~updategrk3_dgmodel3d_t UpdateGRK3_DGModel3D_t proc~writehdf5_metadata WriteHDF5_Metadata proc~writehdf5_metadata->interface~writecharacter_hdf5 proc~writehdf5_metadata->proc~creategroup_hdf5 proc~writehdf5_mpi_vector2d_t WriteHDF5_MPI_Vector2D_t proc~writehdf5_mpi_vector2d_t->interface~writearray_hdf5 proc~writehdf5_mpi_vector2d_t->proc~creategroup_hdf5 proc~riemannflux1d_advection_diffusion_1d_t riemannflux1d_advection_diffusion_1d_t proc~sideexchange_mappedvector3d SideExchange_MappedVector3D interface~sideexchange_3d_gpu SideExchange_3D_gpu proc~sideexchange_mappedvector3d->interface~sideexchange_3d_gpu interface~applyflip_3d_gpu ApplyFlip_3D_gpu proc~sideexchange_mappedvector3d->interface~applyflip_3d_gpu proc~flux1d_advection_diffusion_1d_t flux1d_advection_diffusion_1d_t proc~mapboundaryconditions_dgmodel3d_t MapBoundaryConditions_DGModel3D_t proc~calculatetendency_dgmodel2d_t CalculateTendency_DGModel2D_t proc~writehdf5_vector3d_t WriteHDF5_Vector3D_t proc~writehdf5_vector3d_t->interface~writearray_hdf5 proc~writehdf5_vector3d_t->proc~creategroup_hdf5 proc~setgradientboundarycondition_dgmodel2d_t setgradientboundarycondition_DGModel2D_t proc~init_tensor3d Init_Tensor3D proc~init_tensor3d->proc~gpucheck proc~init_tensor3d->interface~hipmalloc proc~init_tensor3d->interface~hipblascreate proc~init_tensor3d->proc~hipblascheck proc~init_tensor3d->equationparser proc~gridinterp_scalar2d GridInterp_Scalar2D proc~gridinterp_scalar2d->proc~self_blas_matrixop_dim1_2d proc~gridinterp_scalar2d->proc~self_blas_matrixop_dim2_2d proc~free_ecadvection3d Free_ECAdvection3D proc~free_ecadvection3d->interface~hipfree proc~free_ecadvection3d->proc~gpucheck proc~free_ecadvection3d->proc~free_ecdgmodel3d_t proc~setmetadata_burgers1d_t SetMetadata_Burgers1D_t interface~boundaryflux_ecadvection3d_gpu boundaryflux_ecadvection3d_gpu proc~twopointflux3d_esatmo3d_t twopointflux3d_ESAtmo3D_t proc~log_mean~2 log_mean proc~twopointflux3d_esatmo3d_t->proc~log_mean~2 proc~setmetadata_esatmo3d_t SetMetadata_ESAtmo3D_t proc~updatehost_scalar2d_t UpdateHost_Scalar2D_t proc~entropy_func_esatmo3d_t entropy_func_ESAtmo3D_t proc~free_scalar2d_t Free_Scalar2D_t proc~updategrk2_dgmodel3d_t UpdateGRK2_DGModel3D_t proc~sourcemethod_dgmodel3d_t sourcemethod_DGModel3D_t proc~updatehost_tensor3d UpdateHost_Tensor3D proc~updatehost_tensor3d->interface~hipmemcpy proc~updatehost_tensor3d->proc~gpucheck proc~entropy_func_burgers1d_t entropy_func_Burgers1D_t interface~self_timeintegrator SELF_timeIntegrator proc~free_tensor3d Free_Tensor3D proc~free_tensor3d->interface~hipfree proc~free_tensor3d->proc~gpucheck proc~free_tensor3d->interface~hipblasdestroy proc~free_tensor3d->proc~hipblascheck h5kind_to_type h5kind_to_type proc~readarray_hdf5_real_r3_serial->h5kind_to_type h5dread_f h5dread_f proc~readarray_hdf5_real_r3_serial->h5dread_f h5dclose_f h5dclose_f proc~readarray_hdf5_real_r3_serial->h5dclose_f h5dopen_f h5dopen_f proc~readarray_hdf5_real_r3_serial->h5dopen_f h5sselect_hyperslab_f h5sselect_hyperslab_f proc~writearray_hdf5_real_r3_parallel->h5sselect_hyperslab_f proc~writearray_hdf5_real_r3_parallel->h5dclose_f h5pset_dxpl_mpio_f h5pset_dxpl_mpio_f proc~writearray_hdf5_real_r3_parallel->h5pset_dxpl_mpio_f proc~writearray_hdf5_real_r3_parallel->h5pcreate_f h5dcreate_f h5dcreate_f proc~writearray_hdf5_real_r3_parallel->h5dcreate_f h5sclose_f h5sclose_f proc~writearray_hdf5_real_r3_parallel->h5sclose_f h5dwrite_f h5dwrite_f proc~writearray_hdf5_real_r3_parallel->h5dwrite_f proc~writearray_hdf5_real_r3_parallel->h5pclose_f h5screate_simple_f h5screate_simple_f proc~writearray_hdf5_real_r3_parallel->h5screate_simple_f proc~self_blas_matrixop_dim3_3d~2 self_blas_matrixop_dim3_3d proc~hipblascheck~2 hipblasCheck proc~self_blas_matrixop_dim3_3d~2->proc~hipblascheck~2 proc~self_blas_matrixop_dim3_3d~2->hipblasgemvstridedbatched proc~writearray_hdf5_real_r4_parallel->h5sselect_hyperslab_f proc~writearray_hdf5_real_r4_parallel->h5dclose_f proc~writearray_hdf5_real_r4_parallel->h5pset_dxpl_mpio_f proc~writearray_hdf5_real_r4_parallel->h5pcreate_f proc~writearray_hdf5_real_r4_parallel->h5dcreate_f proc~writearray_hdf5_real_r4_parallel->h5sclose_f proc~writearray_hdf5_real_r4_parallel->h5dwrite_f proc~writearray_hdf5_real_r4_parallel->h5pclose_f proc~writearray_hdf5_real_r4_parallel->h5screate_simple_f proc~additionalfree_linearshallowwater2d_t AdditionalFree_LinearShallowWater2D_t interface~hipgetdevicecount hipGetDeviceCount proc~gpuavailable->interface~hipgetdevicecount proc~calculatebarycentricweights CalculateBarycentricWeights proc~free_lagrange_t Free_Lagrange_t proc~calculatederivativematrix CalculateDerivativeMatrix proc~writecharacter_hdf5_serial->h5dclose_f h5tcopy_f h5tcopy_f proc~writecharacter_hdf5_serial->h5tcopy_f proc~writecharacter_hdf5_serial->h5dcreate_f proc~writecharacter_hdf5_serial->h5sclose_f h5tset_strpad_f h5tset_strpad_f proc~writecharacter_hdf5_serial->h5tset_strpad_f h5dwrite_vl_f h5dwrite_vl_f proc~writecharacter_hdf5_serial->h5dwrite_vl_f proc~writecharacter_hdf5_serial->h5screate_simple_f proc~additionalinit_advection_diffusion_3d_t AdditionalInit_advection_diffusion_3d_t proc~calculateinterpolationmatrix CalculateInterpolationMatrix proc~calculateinterpolationmatrix->interface~almostequal proc~calculatelagrangepolynomials CalculateLagrangePolynomials proc~calculatelagrangepolynomials->interface~almostequal proc~init_twopointvector2d Init_TwoPointVector2D proc~init_twopointvector2d->proc~gpucheck proc~init_twopointvector2d->interface~hipmalloc proc~init_twopointvector2d->equationparser interface~hipblassgemm hipblasSgemm proc~hbc3d_nonormalflow_advection_diffusion_3d_t hbc3d_NoNormalFlow_advection_diffusion_3d_t proc~init_bclist Init_BCList proc~pbc3d_nostress_advection_diffusion_3d_t pbc3d_NoStress_advection_diffusion_3d_t proc~free_bclist Free_BCList proc~free_bclist->proc~init_bclist proc~init_lagrange Init_Lagrange proc~init_lagrange->proc~uniformpoints proc~init_lagrange->interface~hipmemcpy proc~init_lagrange->proc~gpucheck proc~init_lagrange->proc~gpuavailable proc~init_lagrange->interface~hipmalloc proc~init_lagrange->proc~legendrequadrature proc~init_lagrange->proc~chebyshevquadrature proc~readarray_hdf5_real_r1_serial->h5kind_to_type proc~readarray_hdf5_real_r1_serial->h5dread_f proc~readarray_hdf5_real_r1_serial->h5dclose_f proc~readarray_hdf5_real_r1_serial->h5dopen_f proc~entropy_func_advection_diffusion_3d_t entropy_func_advection_diffusion_3d_t proc~movenext MoveNext interface~self_bcmethod SELF_bcMethod proc~rewind rewind proc~free_lagrange Free_Lagrange proc~free_lagrange->interface~hipfree proc~free_lagrange->proc~gpucheck proc~getbcforid GetBCForID proc~writehdf5_lagrange_t WriteHDF5_Lagrange_t proc~writehdf5_lagrange_t->interface~writearray_hdf5 proc~writehdf5_lagrange_t->proc~creategroup_hdf5 proc~flux3d_advection_diffusion_3d_t flux3d_advection_diffusion_3d_t proc~registerbcmethod RegisterbcMethod proc~readarray_hdf5_real_r2_serial->h5kind_to_type proc~readarray_hdf5_real_r2_serial->h5dread_f proc~readarray_hdf5_real_r2_serial->h5dclose_f proc~readarray_hdf5_real_r2_serial->h5dopen_f proc~populateboundaries PopulateBoundaries proc~setnumberofvariables_linearshallowwater2d_t SetNumberOfVariables_LinearShallowWater2D_t proc~diagnosegeostrophicvelocity_linearshallowwater2d_t DiagnoseGeostrophicVelocity_LinearShallowWater2D_t interface~hipblasdgemm hipblasDgemm proc~setcoriolis_fplane_linearshallowwater2d_t SetCoriolis_fplane_LinearShallowWater2D_t proc~riemannflux3d_advection_diffusion_3d_t riemannflux3d_advection_diffusion_3d_t proc~readarray_hdf5_real_r4_serial->h5kind_to_type proc~readarray_hdf5_real_r4_serial->h5dread_f proc~readarray_hdf5_real_r4_serial->h5dclose_f proc~readarray_hdf5_real_r4_serial->h5dopen_f interface~hipblassgemvstridedbatched hipblasSgemvStridedBatched interface~hipblasdgemvstridedbatched hipblasDgemvStridedBatched proc~readarray_hdf5_real_r5_serial->h5kind_to_type proc~readarray_hdf5_real_r5_serial->h5dread_f proc~readarray_hdf5_real_r5_serial->h5dclose_f proc~readarray_hdf5_real_r5_serial->h5dopen_f proc~init_scalar1d Init_Scalar1D proc~init_scalar1d->proc~gpucheck proc~init_scalar1d->proc~gpuavailable proc~init_scalar1d->interface~hipmalloc proc~init_scalar1d->interface~hipblascreate proc~init_scalar1d->proc~hipblascheck proc~init_mesh1d Init_Mesh1D proc~readarray_hdf5_int32_r1_serial->h5kind_to_type proc~readarray_hdf5_int32_r1_serial->h5dread_f proc~readarray_hdf5_int32_r1_serial->h5dclose_f proc~readarray_hdf5_int32_r1_serial->h5dopen_f proc~free_scalar1d Free_Scalar1D proc~free_scalar1d->interface~hipfree proc~free_scalar1d->proc~gpucheck proc~free_scalar1d->interface~hipblasdestroy proc~free_scalar1d->proc~hipblascheck proc~updatehost_scalar1d UpdateHost_Scalar1D proc~updatehost_scalar1d->interface~hipmemcpy proc~updatehost_scalar1d->proc~gpucheck proc~setcoriolis_betaplane_linearshallowwater2d_t SetCoriolis_betaplane_LinearShallowWater2D_t proc~associategeometry_mappedscalar1d_t AssociateGeometry_MappedScalar1D_t proc~updatedevice_scalar1d UpdateDevice_Scalar1D proc~updatedevice_scalar1d->interface~hipmemcpy proc~updatedevice_scalar1d->proc~gpucheck proc~readarray_hdf5_int32_r2_serial->h5kind_to_type proc~readarray_hdf5_int32_r2_serial->h5dread_f proc~readarray_hdf5_int32_r2_serial->h5dclose_f proc~readarray_hdf5_int32_r2_serial->h5dopen_f proc~boundaryinterp_scalar1d BoundaryInterp_Scalar1D proc~self_blas_matrixop_1d self_blas_matrixop_1d proc~boundaryinterp_scalar1d->proc~self_blas_matrixop_1d proc~uniformblockmesh_mesh1d UniformBlockMesh_Mesh1D proc~uniformblockmesh_mesh1d->proc~uniformpoints proc~free_mesh1d Free_Mesh1D proc~updatehost_twopointvector2d UpdateHost_TwoPointVector2D proc~updatehost_twopointvector2d->interface~hipmemcpy proc~updatehost_twopointvector2d->proc~gpucheck proc~free_twopointvector2d Free_TwoPointVector2D proc~free_twopointvector2d->interface~hipfree proc~free_twopointvector2d->proc~gpucheck proc~gradient_scalar3d_t Gradient_Scalar3D_t interface~sourcemethod_esatmo3d_gpu sourcemethod_esatmo3d_gpu proc~entropy_func_lineareuler2d_t entropy_func_LinearEuler2D_t proc~init_mappedscalar2d Init_MappedScalar2D proc~init_mappedscalar2d->proc~gpucheck proc~init_mappedscalar2d->interface~hipmalloc hipblascheck hipblascheck proc~init_mappedscalar2d->hipblascheck hipblascreate hipblascreate proc~init_mappedscalar2d->hipblascreate proc~updatesolution_dgmodel1d UpdateSolution_DGModel1D proc~updatesolution_dgmodel1d->interface~updatesolution_gpu interface~hipblascreate~2 hipblasCreate proc~hbc3d_nonormalflow_esatmo3d_gpu_wrapper hbc3d_NoNormalFlow_ESAtmo3D_GPU_wrapper proc~hbc3d_nonormalflow_esatmo3d_gpu_wrapper->interface~hbc3d_nonormalflow_esatmo3d_gpu interface~sourcemethod_linearshallowwater2d_gpu sourcemethod_LinearShallowWater2D_gpu proc~boundaryflux_linearshallowwater2d boundaryflux_LinearShallowWater2D interface~boundaryflux_linearshallowwater2d_gpu boundaryflux_LinearShallowWater2D_gpu proc~boundaryflux_linearshallowwater2d->interface~boundaryflux_linearshallowwater2d_gpu proc~pbc3d_nostress_esatmo3d_gpu_wrapper pbc3d_NoStress_ESAtmo3D_GPU_wrapper proc~pbc3d_nostress_esatmo3d_gpu_wrapper->interface~pbc3d_nostress_esatmo3d_gpu proc~init_tensor3d_t Init_Tensor3D_t proc~init_tensor3d_t->equationparser proc~updatehost_scalar2d UpdateHost_Scalar2D proc~updatehost_scalar2d->interface~hipmemcpy proc~updatehost_scalar2d->proc~gpucheck proc~free_scalar2d Free_Scalar2D proc~free_scalar2d->interface~hipfree proc~free_scalar2d->proc~gpucheck proc~free_scalar2d->interface~hipblasdestroy proc~free_scalar2d->proc~hipblascheck proc~fluxmethod_linearshallowwater2d fluxmethod_LinearShallowWater2D interface~fluxmethod_linearshallowwater2d_gpu fluxmethod_LinearShallowWater2D_gpu proc~fluxmethod_linearshallowwater2d->interface~fluxmethod_linearshallowwater2d_gpu proc~boundaryflux_esatmo3d BoundaryFlux_ESAtmo3D proc~boundaryflux_esatmo3d->interface~boundaryflux_esatmo3d_gpu proc~build_nodecoords_for_element build_nodeCoords_for_element proc~build_nodecoords_for_element->proc~chebyshevquadrature proc~free_mappedscalar2d Free_MappedScalar2D proc~free_mappedscalar2d->interface~hipfree proc~free_mappedscalar2d->proc~gpucheck hipblasdestroy hipblasdestroy proc~free_mappedscalar2d->hipblasdestroy proc~free_mappedscalar2d->hipblascheck interface~contravariantweight_2d_gpu ContravariantWeight_2D_gpu proc~writehdf5_mpi_scalar3d_t WriteHDF5_MPI_Scalar3D_t proc~writehdf5_mpi_scalar3d_t->interface~writearray_hdf5 proc~writehdf5_mpi_scalar3d_t->proc~creategroup_hdf5 proc~sourcemethod_linearshallowwater2d sourcemethod_LinearShallowWater2D proc~sourcemethod_linearshallowwater2d->interface~sourcemethod_linearshallowwater2d_gpu proc~setinteriorfromequation_mappedscalar2d SetInteriorFromEquation_MappedScalar2D proc~setinteriorfromequation_mappedscalar2d->interface~hipmemcpy proc~setinteriorfromequation_mappedscalar2d->proc~gpucheck proc~twopointfluxmethod_esatmo3d TwoPointFluxMethod_ESAtmo3D proc~twopointfluxmethod_esatmo3d->interface~twopointfluxmethod_esatmo3d_gpu proc~recalculateflip_mesh2d_t RecalculateFlip_Mesh2D_t proc~recalculateflip_mesh2d_t->proc~comparearray mpi_waitall mpi_waitall proc~recalculateflip_mesh2d_t->mpi_waitall proc~recalculateflip_mesh2d_t->mpi_irecv proc~recalculateflip_mesh2d_t->mpi_isend proc~sourcemethod_esatmo3d SourceMethod_ESAtmo3D proc~sourcemethod_esatmo3d->interface~sourcemethod_esatmo3d_gpu proc~updategrk4_dgmodel1d UpdateGRK4_DGModel1D proc~updategrk4_dgmodel1d->interface~updategrk_gpu proc~updatedevice_scalar2d UpdateDevice_Scalar2D proc~updatedevice_scalar2d->interface~hipmemcpy proc~updatedevice_scalar2d->proc~gpucheck proc~updategrk2_dgmodel1d UpdateGRK2_DGModel1D proc~updategrk2_dgmodel1d->interface~updategrk_gpu proc~diffusivefluxmethod_esatmo3d DiffusiveFluxMethod_ESAtmo3D proc~diffusivefluxmethod_esatmo3d->interface~diffusiveflux_esatmo3d_gpu proc~updategrk3_dgmodel1d UpdateGRK3_DGModel1D proc~updategrk3_dgmodel1d->interface~updategrk_gpu proc~boundaryinterp_scalar2d BoundaryInterp_Scalar2D interface~boundaryinterp_2d_gpu BoundaryInterp_2D_gpu proc~boundaryinterp_scalar2d->interface~boundaryinterp_2d_gpu proc~diffusiveboundaryflux_esatmo3d DiffusiveBoundaryFlux_ESAtmo3D proc~diffusiveboundaryflux_esatmo3d->interface~diffusiveboundaryflux_esatmo3d_gpu proc~mappeddivergence_mappedtwopointvector2d MappedDivergence_MappedTwoPointVector2D interface~jacobianweight_2d_gpu JacobianWeight_2D_gpu proc~mappeddivergence_mappedtwopointvector2d->interface~jacobianweight_2d_gpu interface~twopointvectordivergence_2d_gpu TwoPointVectorDivergence_2D_gpu proc~mappeddivergence_mappedtwopointvector2d->interface~twopointvectordivergence_2d_gpu interface~normalweight_2d_gpu NormalWeight_2D_gpu proc~calculatetendency_esatmo3d CalculateTendency_ESAtmo3D proc~calculatetendency_esatmo3d->interface~ecdgsurfacecontribution_3d_gpu proc~calculatetendency_esatmo3d->interface~calculatedsdt_gpu interface~accumulatefield_gpu AccumulateField_gpu proc~calculatetendency_esatmo3d->interface~accumulatefield_gpu proc~setnumberofvariables_lineareuler2d_t SetNumberOfVariables_LinearEuler2D_t proc~setboundarycondition_dgmodel3d_t setboundarycondition_DGModel3D_t proc~write_mesh2d_t Write_Mesh2D_t proc~write_mesh2d_t->interface~open_hdf5 proc~write_mesh2d_t->interface~writeattribute_hdf5 proc~write_mesh2d_t->interface~writearray_hdf5 proc~write_mesh2d_t->proc~close_hdf5 proc~hbc2d_nonormalflow_lineareuler2d hbc2d_NoNormalFlow_LinearEuler2D proc~calculatesolutiongradient_dgmodel1d CalculateSolutionGradient_DGModel1D interface~gradientnormal_1d_gpu GradientNormal_1D_gpu proc~calculatesolutiongradient_dgmodel1d->interface~gradientnormal_1d_gpu proc~writehdf5_scalar3d_t WriteHDF5_Scalar3D_t proc~writehdf5_scalar3d_t->interface~writearray_hdf5 proc~writehdf5_scalar3d_t->proc~creategroup_hdf5 proc~init_ecadvection2d Init_ECAdvection2D proc~init_ecadvection2d->proc~init_ecdgmodel2d_t proc~init_ecadvection2d->interface~hipmemcpy proc~init_ecadvection2d->proc~gpucheck proc~init_ecadvection2d->interface~hipmalloc proc~mpiexchangeasync_mappedscalar2d MPIExchangeAsync_MappedScalar2D proc~mpiexchangeasync_mappedscalar2d->mpi_irecv proc~mpiexchangeasync_mappedscalar2d->mpi_isend interface~hbc2d_mirror_ecadvection2d_gpu hbc2d_mirror_ecadvection2d_gpu proc~fluxmethod_advection_diffusion_1d fluxmethod_advection_diffusion_1d interface~fluxmethod_advection_diffusion_1d_gpu fluxmethod_advection_diffusion_1d_gpu proc~fluxmethod_advection_diffusion_1d->interface~fluxmethod_advection_diffusion_1d_gpu proc~calculateentropy_dgmodel1d CalculateEntropy_DGModel1D proc~calculateentropy_dgmodel1d->interface~hipmemcpy proc~calculateentropy_dgmodel1d->proc~gpucheck proc~flux2d_lineareuler2d_t flux2d_LinearEuler2D_t proc~sideexchange_mappedscalar2d SideExchange_MappedScalar2D interface~applyflip_2d_gpu ApplyFlip_2D_gpu proc~sideexchange_mappedscalar2d->interface~applyflip_2d_gpu interface~sideexchange_2d_gpu SideExchange_2D_gpu proc~sideexchange_mappedscalar2d->interface~sideexchange_2d_gpu proc~riemannflux2d_lineareuler2d_t riemannflux2d_LinearEuler2D_t proc~init_dgmodel1d Init_DGModel1D proc~init_dgmodel1d->interface~hipmemcpy proc~init_dgmodel1d->proc~gpucheck proc~init_dgmodel1d->interface~hipmalloc proc~init_dgmodel1d_t Init_DGModel1D_t proc~init_dgmodel1d->proc~init_dgmodel1d_t proc~init_dgmodel3d_t Init_DGModel3D_t proc~init_ecdgmodel3d_t->proc~init_dgmodel3d_t interface~hipblasdestroy~2 hipblasDestroy proc~setmetadata_lineareuler2d_t SetMetadata_LinearEuler2D_t interface~hipblassgemm~2 hipblasSgemm proc~init_vector2d Init_Vector2D proc~init_vector2d->proc~gpucheck proc~init_vector2d->interface~hipmalloc proc~init_vector2d->interface~hipblascreate proc~init_vector2d->proc~hipblascheck proc~init_vector2d->equationparser interface~hipblasdgemm~2 hipblasDgemm proc~free_dgmodel1d Free_DGModel1D proc~free_dgmodel1d->interface~hipfree proc~free_dgmodel1d->proc~gpucheck proc~free_dgmodel1d_t Free_DGModel1D_t proc~free_dgmodel1d->proc~free_dgmodel1d_t proc~boundaryflux_advection_diffusion_1d boundaryflux_advection_diffusion_1d interface~boundaryflux_advection_diffusion_1d_gpu boundaryflux_advection_diffusion_1d_gpu proc~boundaryflux_advection_diffusion_1d->interface~boundaryflux_advection_diffusion_1d_gpu proc~calculatetendency_ecdgmodel3d_t CalculateTendency_ECDGModel3D_t proc~mappeddggradient_mappedscalar2d MappedDGGradient_MappedScalar2D proc~mappeddggradient_mappedscalar2d->interface~contravariantweight_2d_gpu proc~mappeddggradient_mappedscalar2d->interface~normalweight_2d_gpu interface~dg_boundarycontribution_2d_gpu DG_BoundaryContribution_2D_gpu proc~mappeddggradient_mappedscalar2d->interface~dg_boundarycontribution_2d_gpu proc~mappeddggradient_mappedscalar2d->interface~jacobianweight_2d_gpu self_blas_matrixop_dim1_2d self_blas_matrixop_dim1_2d proc~mappeddggradient_mappedscalar2d->self_blas_matrixop_dim1_2d self_blas_matrixop_dim2_2d self_blas_matrixop_dim2_2d proc~mappeddggradient_mappedscalar2d->self_blas_matrixop_dim2_2d proc~free_dgmodel3d_t Free_DGModel3D_t proc~free_ecdgmodel3d_t->proc~free_dgmodel3d_t proc~free_ecadvection2d Free_ECAdvection2D proc~free_ecadvection2d->proc~free_ecdgmodel2d_t proc~free_ecadvection2d->interface~hipfree proc~free_ecadvection2d->proc~gpucheck interface~hipblassgemvstridedbatched~2 hipblasSgemvStridedBatched proc~twopointflux3d_ecdgmodel3d_t twopointflux3d_ECDGModel3D_t interface~boundaryflux_ecadvection2d_gpu boundaryflux_ecadvection2d_gpu proc~mappedgradient_mappedscalar2d MappedGradient_MappedScalar2D proc~mappedgradient_mappedscalar2d->interface~contravariantweight_2d_gpu proc~mappedgradient_mappedscalar2d->interface~jacobianweight_2d_gpu proc~mappedgradient_mappedscalar2d->self_blas_matrixop_dim1_2d proc~mappedgradient_mappedscalar2d->self_blas_matrixop_dim2_2d interface~hipblasdgemvstridedbatched~2 hipblasDgemvStridedBatched proc~sphericalsoundwave_lineareuler2d_t SphericalSoundWave_LinearEuler2D_t proc~twopointfluxmethod_ecdgmodel3d_t TwoPointFluxMethod_ECDGModel3D_t proc~setboundarycondition_dgmodel1d setboundarycondition_DGModel1D proc~setboundarycondition_dgmodel1d->interface~hipmemcpy proc~setboundarycondition_dgmodel1d->proc~gpucheck proc~setboundarycondition_dgmodel1d_t setboundarycondition_DGModel1D_t proc~setboundarycondition_dgmodel1d->proc~setboundarycondition_dgmodel1d_t proc~additionalinit_ecadvection2d AdditionalInit_ECAdvection2D proc~additionalinit_ecadvection2d_t AdditionalInit_ECAdvection2D_t proc~additionalinit_ecadvection2d->proc~additionalinit_ecadvection2d_t proc~setgradientboundarycondition_dgmodel1d setgradientboundarycondition_DGModel1D proc~setgradientboundarycondition_dgmodel1d->interface~hipmemcpy proc~setgradientboundarycondition_dgmodel1d->proc~gpucheck proc~setgradientboundarycondition_dgmodel1d_t setgradientboundarycondition_DGModel1D_t proc~setgradientboundarycondition_dgmodel1d->proc~setgradientboundarycondition_dgmodel1d_t interface~twopointfluxmethod_ecadvection2d_gpu twopointfluxmethod_ecadvection2d_gpu proc~calculatetendency_ecdgmodel2d CalculateTendency_ECDGModel2D proc~calculatetendency_ecdgmodel2d->interface~ecdgsurfacecontribution_2d_gpu proc~calculatetendency_ecdgmodel2d->interface~calculatedsdt_gpu proc~boundaryflux_dgmodel1d BoundaryFlux_DGModel1D proc~boundaryflux_dgmodel1d->interface~hipmemcpy proc~boundaryflux_dgmodel1d->proc~gpucheck proc~init_domaindecomposition_t Init_DomainDecomposition_t mpi_init mpi_init proc~init_domaindecomposition_t->mpi_init mpi_comm_rank mpi_comm_rank proc~init_domaindecomposition_t->mpi_comm_rank mpi_comm_size mpi_comm_size proc~init_domaindecomposition_t->mpi_comm_size proc~free_vector2d Free_Vector2D proc~free_vector2d->interface~hipfree proc~free_vector2d->proc~gpucheck proc~free_vector2d->interface~hipblasdestroy proc~free_vector2d->proc~hipblascheck proc~hbc2d_mirror_ecadvection2d_gpu_wrapper hbc2d_Mirror_ECAdvection2D_GPU_wrapper proc~hbc2d_mirror_ecadvection2d_gpu_wrapper->interface~hbc2d_mirror_ecadvection2d_gpu proc~updatehost_vector2d UpdateHost_Vector2D proc~updatehost_vector2d->interface~hipmemcpy proc~updatehost_vector2d->proc~gpucheck proc~fluxmethod_dgmodel1d fluxmethod_DGModel1D proc~fluxmethod_dgmodel1d->interface~hipmemcpy proc~fluxmethod_dgmodel1d->proc~gpucheck proc~sourcemethod_dgmodel1d sourcemethod_DGModel1D proc~sourcemethod_dgmodel1d->interface~hipmemcpy proc~sourcemethod_dgmodel1d->proc~gpucheck proc~boundaryflux_ecadvection2d BoundaryFlux_ECAdvection2D proc~boundaryflux_ecadvection2d->interface~boundaryflux_ecadvection2d_gpu proc~twopointfluxmethod_ecadvection2d TwoPointFluxMethod_ECAdvection2D proc~twopointfluxmethod_ecadvection2d->interface~twopointfluxmethod_ecadvection2d_gpu proc~updatedevice_vector2d UpdateDevice_Vector2D proc~updatedevice_vector2d->interface~hipmemcpy proc~updatedevice_vector2d->proc~gpucheck proc~sourcemethod_ecadvection2d SourceMethod_ECAdvection2D proc~sourcemethod_ecadvection2d->interface~hipmemcpy proc~sourcemethod_ecadvection2d->proc~gpucheck proc~gridinterp_vector2d GridInterp_Vector2D proc~gridinterp_vector2d->proc~self_blas_matrixop_dim1_2d proc~gridinterp_vector2d->proc~self_blas_matrixop_dim2_2d proc~calculatetendency_dgmodel1d CalculateTendency_DGModel1D proc~calculatetendency_dgmodel1d->interface~calculatedsdt_gpu proc~averagesides_vector2d AverageSides_Vector2D proc~averagesides_vector2d->interface~average_gpu proc~boundaryinterp_vector2d BoundaryInterp_Vector2D proc~boundaryinterp_vector2d->interface~boundaryinterp_2d_gpu proc~gradient_vector2d Gradient_Vector2D proc~gradient_vector2d->proc~self_blas_matrixop_dim1_2d proc~gradient_vector2d->proc~self_blas_matrixop_dim2_2d proc~generatedecomposition_domaindecomposition_t GenerateDecomposition_DomainDecomposition_t proc~free_domaindecomposition_t Free_DomainDecomposition_t mpi_finalize mpi_finalize proc~free_domaindecomposition_t->mpi_finalize proc~init_scalar2d Init_Scalar2D proc~init_scalar2d->proc~gpucheck proc~init_scalar2d->interface~hipmalloc proc~init_scalar2d->interface~hipblascreate proc~init_scalar2d->proc~hipblascheck proc~divergence_vector2d Divergence_Vector2D interface~divergence_2d_gpu Divergence_2D_gpu proc~divergence_vector2d->interface~divergence_2d_gpu proc~init_vector2d_t Init_Vector2D_t proc~init_vector2d_t->equationparser proc~setelemtorank_domaindecomposition_t SetElemToRank_DomainDecomposition_t proc~domaindecomp DomainDecomp proc~setelemtorank_domaindecomposition_t->proc~domaindecomp proc~elemtorank ElemToRank proc~setelemtorank_domaindecomposition_t->proc~elemtorank proc~writetecplot_dgmodel3d_t WriteTecplot_DGModel3D_t proc~writetecplot_dgmodel3d_t->proc~newunit proc~writehdf5_vector2d_t WriteHDF5_Vector2D_t proc~writehdf5_vector2d_t->interface~writearray_hdf5 proc~writehdf5_vector2d_t->proc~creategroup_hdf5 proc~twopointfluxmethod_esatmo3d_t TwoPointFluxMethod_ESAtmo3D_t proc~finalizempiexchangeasync FinalizeMPIExchangeAsync proc~finalizempiexchangeasync->mpi_waitall proc~free_scalar1d~2 Free_Scalar1D proc~free_scalar1d~2->interface~hipfree proc~free_scalar1d~2->proc~gpucheck proc~free_scalar1d~2->interface~hipblasdestroy proc~free_scalar1d~2->proc~hipblascheck proc~init_semquad Init_SEMQuad proc~updatehost_scalar1d~2 UpdateHost_Scalar1D proc~updatehost_scalar1d~2->interface~hipmemcpy proc~updatehost_scalar1d~2->proc~gpucheck proc~sethydrostaticbalance_esatmo3d_t SetHydrostaticBalance_ESAtmo3D_t interface~hipmemcpy~2 hipMemcpy proc~updatedevice_scalar1d~2 UpdateDevice_Scalar1D proc~updatedevice_scalar1d~2->interface~hipmemcpy proc~updatedevice_scalar1d~2->proc~gpucheck proc~gpucheck~2 gpuCheck proc~averagesides_scalar1d AverageSides_Scalar1D proc~averagesides_scalar1d->interface~average_gpu proc~mappeddgderivative_mappedscalar1d MappedDGDerivative_MappedScalar1D proc~mappeddgderivative_mappedscalar1d->proc~self_blas_matrixop_1d interface~dgderivative_boundarycontribution_1d_gpu DGDerivative_BoundaryContribution_1D_gpu proc~mappeddgderivative_mappedscalar1d->interface~dgderivative_boundarycontribution_1d_gpu interface~jacobianweight_1d_gpu JacobianWeight_1D_gpu proc~mappeddgderivative_mappedscalar1d->interface~jacobianweight_1d_gpu proc~riemannflux3d_esatmo3d_t riemannflux3d_ESAtmo3D_t proc~boundaryinterp_scalar1d~2 BoundaryInterp_Scalar1D proc~boundaryinterp_scalar1d~2->proc~self_blas_matrixop_1d proc~sourcemethod_esatmo3d_t SourceMethod_ESAtmo3D_t proc~sourcemethod_esatmo3d_t->proc~log_mean~2 proc~setname_dataobj SetName_DataObj proc~gridinterp_scalar1d GridInterp_Scalar1D proc~gridinterp_scalar1d->proc~self_blas_matrixop_1d interface~hipmalloc~2 hipMalloc proc~reportmetrics_dgmodel3d_t ReportMetrics_DGModel3D_t proc~derivative_scalar1d Derivative_Scalar1D proc~derivative_scalar1d->proc~self_blas_matrixop_1d proc~init_mesh2d_t Init_Mesh2D_t proc~free_semquad Free_SEMQuad proc~setnumberofvariables_lineareuler3d_t SetNumberOfVariables_LinearEuler3D_t proc~generatefrommesh_semquad GenerateFromMesh_SEMQuad proc~mappeddivergence_mappedtwopointvector3d MappedDivergence_MappedTwoPointVector3D proc~mappeddivergence_mappedtwopointvector3d->interface~jacobianweight_3d_gpu proc~mappeddivergence_mappedtwopointvector3d->interface~twopointvectordivergence_3d_gpu proc~setmetadata_dgmodel3d_t SetMetadata_DGModel3D_t proc~setgradientboundarycondition_dgmodel3d_t setgradientboundarycondition_DGModel3D_t proc~gpuavailable~2 GPUAvailable interface~hipgetdevicecount~2 hipGetDeviceCount proc~gpuavailable~2->interface~hipgetdevicecount~2 proc~setsolutionfromeqn_dgmodel3d_t SetSolutionFromEqn_DGModel3D_t proc~addthermalbubble_esatmo3d_t AddThermalBubble_ESAtmo3D_t proc~calculatecontravariantbasis_semquad CalculateContravariantBasis_SEMQuad proc~calculatetendency_dgmodel3d_t CalculateTendency_DGModel3D_t proc~calculatemetricterms_semquad CalculateMetricTerms_SEMQuad proc~init_twopointvector3d_t Init_TwoPointVector3D_t proc~init_twopointvector3d_t->equationparser proc~setdescription_dataobj SetDescription_DataObj proc~flux3d_lineareuler3d_t flux3D_LinearEuler3D_t proc~setmetadata_lineareuler3d_t SetMetadata_LinearEuler3D_t proc~entropy_func_lineareuler3d_t entropy_func_LinearEuler3D_t proc~sourcemethod_lineareuler3d_t sourcemethod_LinearEuler3D_t proc~setunits_dataobj SetUnits_DataObj proc~updatehost_twopointvector3d_t UpdateHost_TwoPointVector3D_t proc~writetecplot_semquad WriteTecplot_SEMQuad proc~writetecplot_semquad->proc~newunit proc~sphericalsoundwave_lineareuler3d_t SphericalSoundWave_LinearEuler3D_t proc~additionalinit_advection_diffusion_2d_t AdditionalInit_advection_diffusion_2d_t proc~free_twopointvector3d_t Free_TwoPointVector3D_t proc~init_geometry1d Init_Geometry1D proc~init_mesh2d Init_Mesh2D proc~init_mesh2d->proc~gpucheck proc~init_mesh2d->interface~hipmalloc proc~setequation_dataobj SetEquation_DataObj proc~setequation_dataobj->equationparser proc~riemannflux3d_lineareuler3d_t riemannflux3D_LinearEuler3D_t proc~boundaryflux_esatmo3d_t BoundaryFlux_ESAtmo3D_t proc~free_mesh2d Free_Mesh2D proc~free_mesh2d->interface~hipfree proc~free_mesh2d->proc~gpucheck proc~setmetadata_linearshallowwater2d_t SetMetadata_LinearShallowWater2D_t proc~entropy_func_advection_diffusion_2d_t entropy_func_advection_diffusion_2d_t proc~updatedevice_twopointvector3d_t UpdateDevice_TwoPointVector3D_t proc~setsolutionfromchar_dgmodel3d_t SetSolutionFromChar_DGModel3D_t proc~hbc2d_nonormalflow_advection_diffusion_2d_t hbc2d_NoNormalFlow_advection_diffusion_2d_t proc~legendrequadrature->proc~legendregausslobatto proc~legendregauss LegendreGauss proc~legendrequadrature->proc~legendregauss proc~flux2d_linearshallowwater2d_t flux2d_LinearShallowWater2D_t proc~read_hopr_mesh2d_t Read_HOPr_Mesh2D_t proc~read_hopr_mesh2d_t->interface~open_hdf5 proc~read_hopr_mesh2d_t->interface~readattribute_hdf5 proc~read_hopr_mesh2d_t->interface~readarray_hdf5 proc~read_hopr_mesh2d_t->proc~close_hdf5 proc~pbc2d_nostress_advection_diffusion_2d_t pbc2d_NoStress_advection_diffusion_2d_t proc~free_mesh2d_t Free_Mesh2D_t proc~divergence_twopointvector3d_t Divergence_TwoPointVector3D_t proc~free_geometry1d Free_Geometry1D proc~updatedevice_mesh2d_t UpdateDevice_Mesh2D_t proc~generatefrommesh_geometry1d GenerateFromMesh_Geometry1D proc~write_geometry1d Write_Geometry1D proc~write_geometry1d->interface~open_hdf5 proc~write_geometry1d->interface~writearray_hdf5 proc~write_geometry1d->proc~close_hdf5 proc~write_geometry1d->proc~creategroup_hdf5 proc~updatesolution_dgmodel3d_t UpdateSolution_DGModel3D_t proc~entropy_func_ecadvection2d_t entropy_func_ECAdvection2D_t proc~calculatemetricterms_geometry1d CalculateMetricTerms_Geometry1D proc~resetboundaryconditiontype_mesh2d_t ResetBoundaryConditionType_Mesh2D_t proc~pbc3d_nostress_esatmo3d pbc3d_NoStress_ESAtmo3D proc~flux2d_advection_diffusion_2d_t flux2d_advection_diffusion_2d_t proc~additionalinit_lineareuler3d AdditionalInit_LinearEuler3D proc~uniformstructuredmesh_mesh2d_t UniformStructuredMesh_Mesh2D_t proc~init_vector3d_t Init_Vector3D_t proc~init_vector3d_t->equationparser proc~riemannflux2d_ecadvection2d_t riemannflux2d_ECAdvection2D_t proc~read_hohqmesh_mesh2d_t Read_HOHQMesh_Mesh2D_t proc~read_hohqmesh_mesh2d_t->proc~build_nodecoords_for_element proc~corner_pair_for_side corner_pair_for_side proc~read_hohqmesh_mesh2d_t->proc~corner_pair_for_side proc~twopointflux2d_ecadvection2d_t twopointflux2d_ECAdvection2D_t proc~riemannflux2d_linearshallowwater2d_t riemannflux2d_LinearShallowWater2D_t proc~init_points_t Init_Points_t proc~chebyshevgauss ChebyshevGauss proc~updatedevice_mesh2d UpdateDevice_Mesh2D proc~updatedevice_mesh2d->interface~hipmemcpy proc~updatedevice_mesh2d->proc~gpucheck proc~chebyshevquadrature->proc~chebyshevgauss proc~chebyshevgausslobatto ChebyshevGaussLobatto proc~chebyshevquadrature->proc~chebyshevgausslobatto proc~riemannflux2d_advection_diffusion_2d_t riemannflux2d_advection_diffusion_2d_t proc~sourcemethod_linearshallowwater2d_t sourcemethod_LinearShallowWater2D_t proc~hbc2d_nonormalflow_ecadvection2d hbc2d_NoNormalFlow_ECAdvection2D proc~init_lagrange_t Init_Lagrange_t proc~init_lagrange_t->proc~uniformpoints proc~init_lagrange_t->proc~legendrequadrature proc~init_lagrange_t->proc~chebyshevquadrature proc~legendregauss->proc~legendrepolynomial interface~hipsetdevice hipSetDevice proc~hbc2d_nonormalflow_linearshallowwater2d hbc2d_NoNormalFlow_LinearShallowWater2D interface~hipfree~2 hipFree proc~associategeometry_mappedvector3d_t AssociateGeometry_MappedVector3D_t proc~entropy_func_linearshallowwater2d_t entropy_func_LinearShallowWater2D_t proc~setpoints_points_t SetPoints_Points_t proc~free_points_t Free_Points_t proc~locatepoints_3d_points_t LocatePoints_3D_Points_t proc~locatepoints_3d_points_t->proc~clampcell proc~locatepoints_3d_points_t->proc~buildelementbboxes_3d proc~locatepoints_3d_points_t->proc~newtoninverse_3d proc~diffusiveboundaryflux_esatmo2d_t DiffusiveBoundaryFlux_ESAtmo2D_t proc~writearray_hdf5_int32_r4_serial->h5dclose_f proc~writearray_hdf5_int32_r4_serial->h5dcreate_f proc~writearray_hdf5_int32_r4_serial->h5sclose_f proc~writearray_hdf5_int32_r4_serial->h5dwrite_f proc~writearray_hdf5_int32_r4_serial->h5screate_simple_f proc~writehdf5_scalar1d_t WriteHDF5_Scalar1D_t proc~writehdf5_scalar1d_t->interface~writearray_hdf5 proc~writehdf5_scalar1d_t->proc~creategroup_hdf5 proc~settimeintegrator_withchar SetTimeIntegrator_withChar proc~settimeintegrator_withchar->proc~uppercase proc~init_twopointvector2d_t Init_TwoPointVector2D_t proc~init_twopointvector2d_t->equationparser proc~getsimulationtime GetSimulationTime proc~locatepoints_2d_points_t LocatePoints_2D_Points_t proc~locatepoints_2d_points_t->proc~clampcell proc~locatepoints_2d_points_t->proc~buildelementbboxes_2d proc~locatepoints_2d_points_t->proc~newtoninverse_2d proc~fluxmethod_advection_diffusion_2d fluxmethod_advection_diffusion_2d interface~fluxmethod_advection_diffusion_2d_gpu fluxmethod_advection_diffusion_2d_gpu proc~fluxmethod_advection_diffusion_2d->interface~fluxmethod_advection_diffusion_2d_gpu h5screate_f h5screate_f proc~writeattribute_hdf5_int32->h5screate_f h5acreate_f h5acreate_f proc~writeattribute_hdf5_int32->h5acreate_f h5awrite_f h5awrite_f proc~writeattribute_hdf5_int32->h5awrite_f proc~writeattribute_hdf5_int32->h5sclose_f proc~writeattribute_hdf5_int32->h5aclose_f proc~evalscalar_3d_dev_points EvalScalar_3D_dev_Points interface~evalscalarpoints_3d_gpu EvalScalarPoints_3D_gpu proc~evalscalar_3d_dev_points->interface~evalscalarpoints_3d_gpu proc~setsimulationtime SetSimulationTime proc~mappeddivergence_mappedvector3d_t MappedDivergence_MappedVector3D_t proc~updatehost_twopointvector2d_t UpdateHost_TwoPointVector2D_t proc~self_blas_matrixop_1d->proc~hipblascheck hipblasgemm hipblasgemm proc~self_blas_matrixop_1d->hipblasgemm proc~dissociategeometry_mappedvector3d_t DissociateGeometry_MappedVector3D_t proc~evalscalar_2d_points_t EvalScalar_2D_Points_t proc~free_twopointvector2d_t Free_TwoPointVector2D_t proc~setinteriorfromequation_mappedvector3d_t SetInteriorFromEquation_MappedVector3D_t proc~additionalfree_esatmo2d_t AdditionalFree_ESAtmo2D_t proc~locatepoints_3d_points LocatePoints_3D_Points proc~lowstoragerk2_timeintegrator LowStorageRK2_timeIntegrator proc~updatedevice_points UpdateDevice_Points proc~updatedevice_points->interface~hipfree proc~updatedevice_points->interface~hipmemcpy proc~updatedevice_points->proc~gpucheck proc~updatedevice_points->interface~hipmalloc proc~mpiexchangeasync_mappedvector3d_t MPIExchangeAsync_MappedVector3D_t proc~mpiexchangeasync_mappedvector3d_t->mpi_irecv proc~mpiexchangeasync_mappedvector3d_t->mpi_isend proc~writearray_hdf5_real_r1_serial->h5dclose_f proc~writearray_hdf5_real_r1_serial->h5dcreate_f proc~writearray_hdf5_real_r1_serial->h5sclose_f proc~writearray_hdf5_real_r1_serial->h5dwrite_f proc~writearray_hdf5_real_r1_serial->h5screate_simple_f proc~applyflip_mappedvector3d_t ApplyFlip_MappedVector3D_t proc~calculateentropy_model CalculateEntropy_Model proc~updatedevice_twopointvector2d_t UpdateDevice_TwoPointVector2D_t proc~evalscalar_2d_dev_points EvalScalar_2D_dev_Points interface~evalscalarpoints_2d_gpu EvalScalarPoints_2D_gpu proc~evalscalar_2d_dev_points->interface~evalscalarpoints_2d_gpu proc~boundaryflux_advection_diffusion_2d boundaryflux_advection_diffusion_2d interface~boundaryflux_advection_diffusion_2d_gpu boundaryflux_advection_diffusion_2d_gpu proc~boundaryflux_advection_diffusion_2d->interface~boundaryflux_advection_diffusion_2d_gpu proc~divergence_twopointvector2d_t Divergence_TwoPointVector2D_t proc~reportentropy_model ReportEntropy_Model proc~init_mesh3d_t Init_Mesh3D_t proc~setdiffusion_esatmo2d_t SetDiffusion_ESAtmo2D_t proc~writearray_hdf5_real_r2_serial->h5dclose_f proc~writearray_hdf5_real_r2_serial->h5dcreate_f proc~writearray_hdf5_real_r2_serial->h5sclose_f proc~writearray_hdf5_real_r2_serial->h5dwrite_f proc~writearray_hdf5_real_r2_serial->h5screate_simple_f proc~reportmetrics_model ReportMetrics_Model proc~reportusermetrics_model ReportUserMetrics_Model proc~diffusivefluxmethod_esatmo2d_t DiffusiveFluxMethod_ESAtmo2D_t proc~calculatetendency_esatmo2d_t CalculateTendency_ESAtmo2D_t proc~self_blas_matrixop_dim1_2d->proc~hipblascheck proc~self_blas_matrixop_dim1_2d->hipblasgemm proc~sideexchange_mappedvector3d_t SideExchange_MappedVector3D_t proc~forwardstep_model ForwardStep_Model timer timer proc~forwardstep_model->timer proc~self_blas_matrixop_dim2_3d->proc~hipblascheck proc~self_blas_matrixop_dim2_3d->hipblasgemvstridedbatched proc~writearray_hdf5_real_r3_serial->h5dclose_f proc~writearray_hdf5_real_r3_serial->h5dcreate_f proc~writearray_hdf5_real_r3_serial->h5sclose_f proc~writearray_hdf5_real_r3_serial->h5dwrite_f proc~writearray_hdf5_real_r3_serial->h5screate_simple_f proc~euler_timeintegrator Euler_timeIntegrator proc~hbc2d_nonormalflow_esatmo2d hbc2d_NoNormalFlow_ESAtmo2D proc~init_scalar1d_t Init_Scalar1D_t proc~writearray_hdf5_real_r4_serial->h5dclose_f proc~writearray_hdf5_real_r4_serial->h5dcreate_f proc~writearray_hdf5_real_r4_serial->h5sclose_f proc~writearray_hdf5_real_r4_serial->h5dwrite_f proc~writearray_hdf5_real_r4_serial->h5screate_simple_f proc~hbc2d_radiation_linearshallowwater2d_gpu_wrapper hbc2d_Radiation_LinearShallowWater2D_GPU_wrapper interface~hbc2d_radiation_linearshallowwater2d_gpu hbc2d_radiation_linearshallowwater2d_gpu proc~hbc2d_radiation_linearshallowwater2d_gpu_wrapper->interface~hbc2d_radiation_linearshallowwater2d_gpu proc~addthermalbubble_esatmo2d_t AddThermalBubble_ESAtmo2D_t proc~evalscalar_3d_points_t EvalScalar_3D_Points_t proc~free_mesh3d_t Free_Mesh3D_t proc~writearray_hdf5_real_r5_serial->h5dclose_f proc~writearray_hdf5_real_r5_serial->h5dcreate_f proc~writearray_hdf5_real_r5_serial->h5sclose_f proc~writearray_hdf5_real_r5_serial->h5dwrite_f proc~writearray_hdf5_real_r5_serial->h5screate_simple_f proc~elementid elementid proc~lowstoragerk3_timeintegrator LowStorageRK3_timeIntegrator proc~updatedevice_mesh3d_t UpdateDevice_Mesh3D_t proc~self_blas_matrixop_dim2_2d->proc~hipblascheck proc~self_blas_matrixop_dim2_2d->hipblasgemvstridedbatched interface~hbc2d_nonormalflow_linearshallowwater2d_gpu hbc2d_nonormalflow_linearshallowwater2d_gpu proc~lowstoragerk4_timeintegrator LowStorageRK4_timeIntegrator proc~sethydrostaticbalance_esatmo2d_t SetHydrostaticBalance_ESAtmo2D_t proc~writearray_hdf5_int32_r1_serial->h5dclose_f proc~writearray_hdf5_int32_r1_serial->h5dcreate_f proc~writearray_hdf5_int32_r1_serial->h5sclose_f proc~writearray_hdf5_int32_r1_serial->h5dwrite_f proc~writearray_hdf5_int32_r1_serial->h5screate_simple_f proc~resetboundaryconditiontype_mesh3d_t ResetBoundaryConditionType_Mesh3D_t proc~derivative_scalar1d_t Derivative_Scalar1D_t proc~free_scalar1d_t Free_Scalar1D_t proc~recalculateflip_mesh3d_t RecalculateFlip_Mesh3D_t proc~updatehost_scalar1d_t UpdateHost_Scalar1D_t proc~mappeddgdivergence_mappedvector3d_t MappedDGDivergence_MappedVector3D_t proc~writearray_hdf5_int32_r2_serial->h5dclose_f proc~writearray_hdf5_int32_r2_serial->h5dcreate_f proc~writearray_hdf5_int32_r2_serial->h5sclose_f proc~writearray_hdf5_int32_r2_serial->h5dwrite_f proc~writearray_hdf5_int32_r2_serial->h5screate_simple_f proc~updatedevice_scalar1d_t UpdateDevice_Scalar1D_t proc~self_blas_matrixop_dim1_3d->proc~hipblascheck proc~self_blas_matrixop_dim1_3d->hipblasgemm proc~averagesides_scalar1d_t AverageSides_Scalar1D_t proc~uniformstructuredmesh_mesh3d_t UniformStructuredMesh_Mesh3D_t proc~uniformstructuredmesh_mesh3d_t->proc~elementid proc~boundaryinterp_scalar1d_t BoundaryInterp_Scalar1D_t proc~gridinterp_scalar1d_t GridInterp_Scalar1D_t proc~writearray_hdf5_int32_r3_serial->h5dclose_f proc~writearray_hdf5_int32_r3_serial->h5dcreate_f proc~writearray_hdf5_int32_r3_serial->h5sclose_f proc~writearray_hdf5_int32_r3_serial->h5dwrite_f proc~writearray_hdf5_int32_r3_serial->h5screate_simple_f proc~additionalinit_linearshallowwater2d AdditionalInit_LinearShallowWater2D proc~additionalinit_linearshallowwater2d->proc~additionalinit_linearshallowwater2d_t proc~read_hopr_mesh3d_t Read_HOPr_Mesh3D_t proc~read_hopr_mesh3d_t->interface~open_hdf5 proc~read_hopr_mesh3d_t->interface~readattribute_hdf5 proc~read_hopr_mesh3d_t->interface~readarray_hdf5 proc~read_hopr_mesh3d_t->proc~close_hdf5 proc~hbc2d_nonormalflow_linearshallowwater2d_gpu_wrapper hbc2d_NoNormalFlow_LinearShallowWater2D_GPU_wrapper proc~hbc2d_nonormalflow_linearshallowwater2d_gpu_wrapper->interface~hbc2d_nonormalflow_linearshallowwater2d_gpu proc~read_dgmodel2d_t Read_DGModel2D_t proc~read_dgmodel2d_t->interface~open_hdf5 proc~read_dgmodel2d_t->interface~readarray_hdf5 proc~read_dgmodel2d_t->proc~close_hdf5 proc~sourcemethod_esatmo2d_t SourceMethod_ESAtmo2D_t proc~log_mean log_mean proc~sourcemethod_esatmo2d_t->proc~log_mean proc~self_blas_matrixop_1d~2 self_blas_matrixop_1d proc~self_blas_matrixop_1d~2->proc~hipblascheck~2 proc~self_blas_matrixop_1d~2->hipblasgemm proc~write_dgmodel2d_t Write_DGModel2D_t proc~write_dgmodel2d_t->interface~open_hdf5 proc~write_dgmodel2d_t->proc~close_hdf5 proc~write_dgmodel2d_t->proc~creategroup_hdf5 proc~setinteriorfromequation_mappedvector2d SetInteriorFromEquation_MappedVector2D proc~setinteriorfromequation_mappedvector2d->interface~hipmemcpy proc~setinteriorfromequation_mappedvector2d->proc~gpucheck proc~mapboundaryconditions_dgmodel1d_t MapBoundaryConditions_DGModel1D_t proc~mpiexchangeasync_mappedvector2d MPIExchangeAsync_MappedVector2D proc~mpiexchangeasync_mappedvector2d->mpi_irecv proc~mpiexchangeasync_mappedvector2d->mpi_isend proc~entropy_func_ecadvection3d_t entropy_func_ECAdvection3D_t proc~writetecplot_dgmodel2d_t WriteTecplot_DGModel2D_t proc~writetecplot_dgmodel2d_t->proc~newunit proc~init_mappedscalar3d Init_MappedScalar3D proc~init_mappedscalar3d->proc~gpucheck proc~init_mappedscalar3d->interface~hipmalloc proc~init_mappedscalar3d->hipblascheck proc~init_mappedscalar3d->hipblascreate interface~boundaryflux_esatmo2d_gpu boundaryflux_esatmo2d_gpu proc~sideexchange_mappedvector2d SideExchange_MappedVector2D proc~sideexchange_mappedvector2d->interface~applyflip_2d_gpu proc~sideexchange_mappedvector2d->interface~sideexchange_2d_gpu proc~riemannflux3d_ecadvection3d_t riemannflux3d_ECAdvection3D_t interface~contravariantprojection_2d_gpu ContravariantProjection_2D_gpu proc~twopointflux3d_ecadvection3d_t twopointflux3d_ECAdvection3D_t proc~boundaryflux_esatmo2d_t BoundaryFlux_ESAtmo2D_t proc~self_blas_matrixop_dim1_2d~2 self_blas_matrixop_dim1_2d proc~self_blas_matrixop_dim1_2d~2->proc~hipblascheck~2 proc~self_blas_matrixop_dim1_2d~2->hipblasgemm proc~free_mappedscalar3d Free_MappedScalar3D proc~free_mappedscalar3d->interface~hipfree proc~free_mappedscalar3d->proc~gpucheck proc~free_mappedscalar3d->hipblasdestroy proc~free_mappedscalar3d->hipblascheck interface~contravariantweight_3d_gpu ContravariantWeight_3D_gpu proc~setinteriorfromequation_mappedscalar3d SetInteriorFromEquation_MappedScalar3D proc~setinteriorfromequation_mappedscalar3d->interface~hipmemcpy proc~setinteriorfromequation_mappedscalar3d->proc~gpucheck proc~boundaryflux_dgmodel1d_t BoundaryFlux_DGModel1D_t proc~mappeddgdivergence_mappedvector2d MappedDGDivergence_MappedVector2D proc~mappeddgdivergence_mappedvector2d->interface~dg_boundarycontribution_2d_gpu proc~mappeddgdivergence_mappedvector2d->interface~jacobianweight_2d_gpu proc~mappeddgdivergence_mappedvector2d->interface~divergence_2d_gpu proc~mappeddgdivergence_mappedvector2d->interface~contravariantprojection_2d_gpu proc~fluxmethod_dgmodel1d_t fluxmethod_DGModel1D_t interface~twopointfluxmethod_esatmo2d_gpu twopointfluxmethod_esatmo2d_gpu proc~mappeddivergence_mappedvector2d MappedDivergence_MappedVector2D proc~mappeddivergence_mappedvector2d->interface~jacobianweight_2d_gpu proc~mappeddivergence_mappedvector2d->interface~divergence_2d_gpu proc~mappeddivergence_mappedvector2d->interface~contravariantprojection_2d_gpu proc~hbc3d_nonormalflow_ecadvection3d hbc3d_NoNormalFlow_ECAdvection3D proc~mappeddggradient_mappedscalar3d MappedDGGradient_MappedScalar3D proc~mappeddggradient_mappedscalar3d->interface~contravariantweight_3d_gpu interface~normalweight_3d_gpu NormalWeight_3D_gpu proc~mappeddggradient_mappedscalar3d->interface~normalweight_3d_gpu interface~dg_boundarycontribution_3d_gpu DG_BoundaryContribution_3D_gpu proc~mappeddggradient_mappedscalar3d->interface~dg_boundarycontribution_3d_gpu proc~mappeddggradient_mappedscalar3d->interface~jacobianweight_3d_gpu self_blas_matrixop_dim1_3d self_blas_matrixop_dim1_3d proc~mappeddggradient_mappedscalar3d->self_blas_matrixop_dim1_3d self_blas_matrixop_dim2_3d self_blas_matrixop_dim2_3d proc~mappeddggradient_mappedscalar3d->self_blas_matrixop_dim2_3d self_blas_matrixop_dim3_3d self_blas_matrixop_dim3_3d proc~mappeddggradient_mappedscalar3d->self_blas_matrixop_dim3_3d proc~write_dgmodel3d_t Write_DGModel3D_t proc~write_dgmodel3d_t->interface~open_hdf5 proc~write_dgmodel3d_t->proc~close_hdf5 proc~write_dgmodel3d_t->proc~creategroup_hdf5 proc~init_esatmo2d Init_ESAtmo2D proc~init_esatmo2d->proc~init_ecdgmodel2d_t proc~init_esatmo2d->interface~hipmemcpy proc~init_esatmo2d->proc~gpucheck proc~init_esatmo2d->interface~hipmalloc proc~sourcemethod_dgmodel1d_t sourcemethod_DGModel1D_t interface~diffusiveflux_esatmo2d_gpu diffusiveflux_esatmo2d_gpu proc~self_blas_matrixop_dim2_2d~2 self_blas_matrixop_dim2_2d proc~self_blas_matrixop_dim2_2d~2->proc~hipblascheck~2 proc~self_blas_matrixop_dim2_2d~2->hipblasgemvstridedbatched proc~mpiexchangeasync_mappedscalar3d MPIExchangeAsync_MappedScalar3D proc~mpiexchangeasync_mappedscalar3d->mpi_irecv proc~mpiexchangeasync_mappedscalar3d->mpi_isend proc~sideexchange_mappedscalar3d SideExchange_MappedScalar3D proc~sideexchange_mappedscalar3d->interface~sideexchange_3d_gpu proc~sideexchange_mappedscalar3d->interface~applyflip_3d_gpu proc~calculatetendency_dgmodel1d_t CalculateTendency_DGModel1D_t proc~write_dgmodel1d_t Write_DGModel1D_t proc~write_dgmodel1d_t->interface~open_hdf5 proc~write_dgmodel1d_t->proc~close_hdf5 proc~write_dgmodel1d_t->proc~creategroup_hdf5 proc~associategeometry_mappedvector2d_t AssociateGeometry_MappedVector2D_t proc~init_scalar3d_t Init_Scalar3D_t proc~read_dgmodel1d_t Read_DGModel1D_t proc~read_dgmodel1d_t->interface~open_hdf5 proc~read_dgmodel1d_t->interface~readarray_hdf5 proc~read_dgmodel1d_t->proc~close_hdf5 proc~free_esatmo2d Free_ESAtmo2D proc~free_esatmo2d->proc~free_ecdgmodel2d_t proc~free_esatmo2d->interface~hipfree proc~free_esatmo2d->proc~gpucheck interface~diffusiveboundaryflux_esatmo2d_gpu diffusiveboundaryflux_esatmo2d_gpu proc~mappedgradient_mappedscalar3d MappedGradient_MappedScalar3D proc~mappedgradient_mappedscalar3d->interface~contravariantweight_3d_gpu proc~mappedgradient_mappedscalar3d->interface~jacobianweight_3d_gpu proc~mappedgradient_mappedscalar3d->self_blas_matrixop_dim1_3d proc~mappedgradient_mappedscalar3d->self_blas_matrixop_dim2_3d proc~mappedgradient_mappedscalar3d->self_blas_matrixop_dim3_3d proc~self_blas_matrixop_dim1_3d~2 self_blas_matrixop_dim1_3d proc~self_blas_matrixop_dim1_3d~2->proc~hipblascheck~2 proc~self_blas_matrixop_dim1_3d~2->hipblasgemm proc~pbc2d_nostress_esatmo2d pbc2d_NoStress_ESAtmo2D proc~init_tensor2d Init_Tensor2D proc~init_tensor2d->proc~gpucheck proc~init_tensor2d->interface~hipmalloc proc~init_tensor2d->interface~hipblascreate proc~init_tensor2d->proc~hipblascheck proc~init_tensor2d->equationparser proc~dissociategeometry_mappedvector2d_t DissociateGeometry_MappedVector2D_t proc~setinteriorfromequation_mappedvector2d_t SetInteriorFromEquation_MappedVector2D_t proc~writetecplot_dgmodel1d_t WriteTecplot_DGModel1D_t proc~writetecplot_dgmodel1d_t->proc~newunit proc~setinteriorfromequation_mappedvector3d SetInteriorFromEquation_MappedVector3D proc~setinteriorfromequation_mappedvector3d->interface~hipmemcpy proc~setinteriorfromequation_mappedvector3d->proc~gpucheck proc~additionalinit_esatmo2d AdditionalInit_ESAtmo2D proc~additionalinit_esatmo2d_t AdditionalInit_ESAtmo2D_t proc~additionalinit_esatmo2d->proc~additionalinit_esatmo2d_t interface~sourcemethod_esatmo2d_gpu sourcemethod_esatmo2d_gpu proc~mpiexchangeasync_mappedvector2d_t MPIExchangeAsync_MappedVector2D_t proc~mpiexchangeasync_mappedvector2d_t->mpi_irecv proc~mpiexchangeasync_mappedvector2d_t->mpi_isend proc~updatehost_tensor2d UpdateHost_Tensor2D proc~updatehost_tensor2d->interface~hipmemcpy proc~updatehost_tensor2d->proc~gpucheck proc~free_tensor2d Free_Tensor2D proc~free_tensor2d->interface~hipfree proc~free_tensor2d->proc~gpucheck proc~free_tensor2d->interface~hipblasdestroy proc~free_tensor2d->proc~hipblascheck proc~applyflip_mappedvector2d_t ApplyFlip_MappedVector2D_t proc~hbc2d_nonormalflow_esatmo2d_gpu_wrapper hbc2d_NoNormalFlow_ESAtmo2D_GPU_wrapper proc~hbc2d_nonormalflow_esatmo2d_gpu_wrapper->interface~hbc2d_nonormalflow_esatmo2d_gpu proc~free_scalar3d_t Free_Scalar3D_t proc~pbc2d_nostress_esatmo2d_gpu_wrapper pbc2d_NoStress_ESAtmo2D_GPU_wrapper proc~pbc2d_nostress_esatmo2d_gpu_wrapper->interface~pbc2d_nostress_esatmo2d_gpu proc~updatehost_scalar3d_t UpdateHost_Scalar3D_t proc~self_blas_matrixop_dim2_3d~2 self_blas_matrixop_dim2_3d proc~self_blas_matrixop_dim2_3d~2->proc~hipblascheck~2 proc~self_blas_matrixop_dim2_3d~2->hipblasgemvstridedbatched proc~boundaryflux_esatmo2d BoundaryFlux_ESAtmo2D proc~boundaryflux_esatmo2d->interface~boundaryflux_esatmo2d_gpu proc~updatedevice_tensor2d UpdateDevice_Tensor2D proc~updatedevice_tensor2d->interface~hipmemcpy proc~updatedevice_tensor2d->proc~gpucheck proc~updatedevice_scalar3d_t UpdateDevice_Scalar3D_t proc~twopointfluxmethod_esatmo2d TwoPointFluxMethod_ESAtmo2D proc~twopointfluxmethod_esatmo2d->interface~twopointfluxmethod_esatmo2d_gpu proc~sideexchange_mappedvector2d_t SideExchange_MappedVector2D_t proc~boundaryinterp_scalar3d_t BoundaryInterp_Scalar3D_t proc~sourcemethod_esatmo2d SourceMethod_ESAtmo2D proc~sourcemethod_esatmo2d->interface~sourcemethod_esatmo2d_gpu proc~averagesides_scalar3d_t AverageSides_Scalar3D_t proc~diffusivefluxmethod_esatmo2d DiffusiveFluxMethod_ESAtmo2D proc~diffusivefluxmethod_esatmo2d->interface~diffusiveflux_esatmo2d_gpu proc~gridinterp_scalar3d_t GridInterp_Scalar3D_t proc~diffusiveboundaryflux_esatmo2d DiffusiveBoundaryFlux_ESAtmo2D proc~diffusiveboundaryflux_esatmo2d->interface~diffusiveboundaryflux_esatmo2d_gpu proc~calculatetendency_esatmo2d CalculateTendency_ESAtmo2D proc~calculatetendency_esatmo2d->interface~ecdgsurfacecontribution_2d_gpu proc~calculatetendency_esatmo2d->interface~calculatedsdt_gpu proc~calculatetendency_esatmo2d->interface~accumulatefield_gpu h5dget_space_f h5dget_space_f proc~readarray_hdf5_real_r1_parallel->h5dget_space_f proc~readarray_hdf5_real_r1_parallel->h5dread_f proc~readarray_hdf5_real_r1_parallel->h5sselect_hyperslab_f proc~readarray_hdf5_real_r1_parallel->h5dclose_f proc~readarray_hdf5_real_r1_parallel->h5pset_dxpl_mpio_f proc~readarray_hdf5_real_r1_parallel->h5tclose_f proc~readarray_hdf5_real_r1_parallel->h5pcreate_f proc~readarray_hdf5_real_r1_parallel->h5sclose_f proc~readarray_hdf5_real_r1_parallel->h5pclose_f proc~readarray_hdf5_real_r1_parallel->h5dopen_f h5dget_type_f h5dget_type_f proc~readarray_hdf5_real_r1_parallel->h5dget_type_f proc~readarray_hdf5_real_r1_parallel->h5screate_simple_f proc~determinant_tensor3d_t Determinant_Tensor3D_t proc~mappedderivative_mappedscalar1d_t MappedDerivative_MappedScalar1D_t proc~updatehost_tensor3d_t UpdateHost_Tensor3D_t proc~dissociategeometry_mappedscalar1d_t DissociateGeometry_MappedScalar1D_t proc~setinteriorfromequation_mappedscalar1d_t SetInteriorFromEquation_MappedScalar1D_t proc~updatedevice_twopointvector2d UpdateDevice_TwoPointVector2D proc~updatedevice_twopointvector2d->interface~hipmemcpy proc~updatedevice_twopointvector2d->proc~gpucheck interface~updategrk UpdateGRK proc~readarray_hdf5_real_r2_parallel->h5dget_space_f proc~readarray_hdf5_real_r2_parallel->h5dread_f proc~readarray_hdf5_real_r2_parallel->h5sselect_hyperslab_f proc~readarray_hdf5_real_r2_parallel->h5dclose_f proc~readarray_hdf5_real_r2_parallel->h5pset_dxpl_mpio_f proc~readarray_hdf5_real_r2_parallel->h5tclose_f proc~readarray_hdf5_real_r2_parallel->h5pcreate_f proc~readarray_hdf5_real_r2_parallel->h5sclose_f proc~readarray_hdf5_real_r2_parallel->h5pclose_f proc~readarray_hdf5_real_r2_parallel->h5dopen_f proc~readarray_hdf5_real_r2_parallel->h5dget_type_f proc~readarray_hdf5_real_r2_parallel->h5screate_simple_f proc~divergence_twopointvector2d Divergence_TwoPointVector2D proc~divergence_twopointvector2d->interface~twopointvectordivergence_2d_gpu interface~twopointfluxmethod_ecadvection3d_gpu twopointfluxmethod_ecadvection3d_gpu proc~sideexchange_mappedscalar1d_t SideExchange_MappedScalar1D_t proc~sourcemethod_dgmodel3d sourcemethod_DGModel3D proc~sourcemethod_dgmodel3d->interface~hipmemcpy proc~sourcemethod_dgmodel3d->proc~gpucheck proc~mappeddgderivative_mappedscalar1d_t MappedDGDerivative_MappedScalar1D_t proc~setelemtorank_domaindecomposition SetElemToRank_DomainDecomposition proc~setelemtorank_domaindecomposition->interface~hipmemcpy proc~setelemtorank_domaindecomposition->proc~gpucheck proc~setelemtorank_domaindecomposition->interface~hipmalloc proc~setelemtorank_domaindecomposition->proc~domaindecomp proc~setelemtorank_domaindecomposition->proc~elemtorank interface~updatesolution UpdateSolution proc~setinteriorfromequation_mappedscalar1d SetInteriorFromEquation_MappedScalar1D proc~setinteriorfromequation_mappedscalar1d->interface~hipmemcpy proc~setinteriorfromequation_mappedscalar1d->proc~gpucheck proc~hbc3d_mirror_ecadvection3d_gpu_wrapper hbc3d_Mirror_ECAdvection3D_GPU_wrapper proc~hbc3d_mirror_ecadvection3d_gpu_wrapper->interface~hbc3d_mirror_ecadvection3d_gpu proc~setnumberofvariables_esatmo2d_t SetNumberOfVariables_ESAtmo2D_t proc~readarray_hdf5_real_r3_parallel->h5dget_space_f proc~readarray_hdf5_real_r3_parallel->h5dread_f proc~readarray_hdf5_real_r3_parallel->h5sselect_hyperslab_f proc~readarray_hdf5_real_r3_parallel->h5dclose_f proc~readarray_hdf5_real_r3_parallel->h5pset_dxpl_mpio_f proc~readarray_hdf5_real_r3_parallel->h5tclose_f proc~readarray_hdf5_real_r3_parallel->h5pcreate_f proc~readarray_hdf5_real_r3_parallel->h5sclose_f proc~readarray_hdf5_real_r3_parallel->h5pclose_f proc~readarray_hdf5_real_r3_parallel->h5dopen_f proc~readarray_hdf5_real_r3_parallel->h5dget_type_f proc~readarray_hdf5_real_r3_parallel->h5screate_simple_f proc~boundaryflux_ecadvection3d BoundaryFlux_ECAdvection3D proc~boundaryflux_ecadvection3d->interface~boundaryflux_ecadvection3d_gpu interface~calculatetendency CalculateTendency proc~updatesolution_dgmodel2d UpdateSolution_DGModel2D proc~updatesolution_dgmodel2d->interface~updatesolution_gpu proc~free_dgmodel3d Free_DGModel3D proc~free_dgmodel3d->interface~hipfree proc~free_dgmodel3d->proc~gpucheck proc~free_dgmodel3d->proc~free_dgmodel3d_t proc~twopointfluxmethod_ecadvection3d TwoPointFluxMethod_ECAdvection3D proc~twopointfluxmethod_ecadvection3d->interface~twopointfluxmethod_ecadvection3d_gpu proc~init_dgmodel3d Init_DGModel3D proc~init_dgmodel3d->interface~hipmemcpy proc~init_dgmodel3d->proc~gpucheck proc~init_dgmodel3d->interface~hipmalloc proc~init_dgmodel3d->proc~init_dgmodel3d_t proc~boundaryinterp_tensor3d_t BoundaryInterp_Tensor3D_t proc~incrementiocounter IncrementIOCounter interface~writemodel WriteModel proc~sourcemethod_ecadvection3d SourceMethod_ECAdvection3D proc~sourcemethod_ecadvection3d->interface~hipmemcpy proc~sourcemethod_ecadvection3d->proc~gpucheck proc~readarray_hdf5_real_r4_parallel->h5dget_space_f proc~readarray_hdf5_real_r4_parallel->h5dread_f proc~readarray_hdf5_real_r4_parallel->h5sselect_hyperslab_f proc~readarray_hdf5_real_r4_parallel->h5dclose_f proc~readarray_hdf5_real_r4_parallel->h5pset_dxpl_mpio_f proc~readarray_hdf5_real_r4_parallel->h5tclose_f proc~readarray_hdf5_real_r4_parallel->h5pcreate_f proc~readarray_hdf5_real_r4_parallel->h5sclose_f proc~readarray_hdf5_real_r4_parallel->h5pclose_f proc~readarray_hdf5_real_r4_parallel->h5dopen_f proc~readarray_hdf5_real_r4_parallel->h5dget_type_f proc~readarray_hdf5_real_r4_parallel->h5screate_simple_f proc~free_tensor3d_t Free_Tensor3D_t proc~setnumberofvariables_model SetNumberOfVariables_Model proc~updatedevice_tensor3d_t UpdateDevice_Tensor3D_t interface~readmodel ReadModel proc~riemannflux2d_model riemannflux2d_Model proc~init_mesh3d Init_Mesh3D proc~init_mesh3d->proc~gpucheck proc~init_mesh3d->interface~hipmalloc proc~sideexchange_mappedscalar1d SideExchange_MappedScalar1D proc~sideexchange_mappedscalar1d->interface~hipmemcpy proc~sideexchange_mappedscalar1d->proc~gpucheck proc~updategrk4_dgmodel2d UpdateGRK4_DGModel2D proc~updategrk4_dgmodel2d->interface~updategrk_gpu proc~additionalinit_model AdditionalInit_Model proc~updategrk2_dgmodel2d UpdateGRK2_DGModel2D proc~updategrk2_dgmodel2d->interface~updategrk_gpu interface~writetecplot WriteTecplot proc~updategrk3_dgmodel2d UpdateGRK3_DGModel2D proc~updategrk3_dgmodel2d->interface~updategrk_gpu proc~additionalfree_model AdditionalFree_Model proc~free_mesh3d Free_Mesh3D proc~free_mesh3d->interface~hipfree proc~free_mesh3d->proc~gpucheck proc~readarray_hdf5_int32_r1_parallel->h5dget_space_f proc~readarray_hdf5_int32_r1_parallel->h5dread_f proc~readarray_hdf5_int32_r1_parallel->h5sselect_hyperslab_f proc~readarray_hdf5_int32_r1_parallel->h5dclose_f proc~readarray_hdf5_int32_r1_parallel->h5pset_dxpl_mpio_f proc~readarray_hdf5_int32_r1_parallel->h5tclose_f proc~readarray_hdf5_int32_r1_parallel->h5pcreate_f proc~readarray_hdf5_int32_r1_parallel->h5sclose_f proc~readarray_hdf5_int32_r1_parallel->h5pclose_f proc~readarray_hdf5_int32_r1_parallel->h5dopen_f proc~readarray_hdf5_int32_r1_parallel->h5dget_type_f proc~readarray_hdf5_int32_r1_parallel->h5screate_simple_f proc~additionaloutput_model AdditionalOutput_Model proc~updatedevice_mesh3d UpdateDevice_Mesh3D proc~updatedevice_mesh3d->interface~hipmemcpy proc~updatedevice_mesh3d->proc~gpucheck proc~diffusiveboundaryflux_esatmo3d_t DiffusiveBoundaryFlux_ESAtmo3D_t proc~printtype_model PrintType_Model proc~calculatesolutiongradient_dgmodel2d CalculateSolutionGradient_DGModel2D proc~pretendency_model PreTendency_Model proc~calculatetendency_dgmodel3d CalculateTendency_DGModel3D proc~calculatetendency_dgmodel3d->interface~calculatedsdt_gpu proc~calculateentropy_dgmodel2d CalculateEntropy_DGModel2D proc~calculateentropy_dgmodel2d->interface~hipmemcpy proc~calculateentropy_dgmodel2d->proc~gpucheck proc~calculateentropy_dgmodel2d->mpi_allreduce proc~entropy_func_model entropy_func_Model proc~riemannflux1d_model riemannflux1d_Model proc~boundaryflux_dgmodel2d BoundaryFlux_DGModel2D proc~boundaryflux_dgmodel2d->interface~hipmemcpy proc~boundaryflux_dgmodel2d->proc~gpucheck proc~setsolutionfromeqn_dgmodel1d_t SetSolutionFromEqn_DGModel1D_t proc~init_tensor2d_t Init_Tensor2D_t proc~init_tensor2d_t->equationparser proc~riemannflux3d_model riemannflux3d_Model proc~setmetadata_dgmodel1d_t SetMetadata_DGModel1D_t proc~readarray_hdf5_int32_r2_parallel->h5dget_space_f proc~readarray_hdf5_int32_r2_parallel->h5dread_f proc~readarray_hdf5_int32_r2_parallel->h5sselect_hyperslab_f proc~readarray_hdf5_int32_r2_parallel->h5dclose_f proc~readarray_hdf5_int32_r2_parallel->h5pset_dxpl_mpio_f proc~readarray_hdf5_int32_r2_parallel->h5tclose_f proc~readarray_hdf5_int32_r2_parallel->h5pcreate_f proc~readarray_hdf5_int32_r2_parallel->h5sclose_f proc~readarray_hdf5_int32_r2_parallel->h5pclose_f proc~readarray_hdf5_int32_r2_parallel->h5dopen_f proc~readarray_hdf5_int32_r2_parallel->h5dget_type_f proc~readarray_hdf5_int32_r2_parallel->h5screate_simple_f proc~fluxmethod_dgmodel2d fluxmethod_DGModel2D proc~fluxmethod_dgmodel2d->interface~hipmemcpy proc~fluxmethod_dgmodel2d->proc~gpucheck proc~flux1d_model flux1d_Model proc~sourcemethod_dgmodel2d sourcemethod_DGModel2D proc~sourcemethod_dgmodel2d->interface~hipmemcpy proc~sourcemethod_dgmodel2d->proc~gpucheck proc~fluxmethod_advection_diffusion_3d fluxmethod_advection_diffusion_3d interface~fluxmethod_advection_diffusion_3d_gpu fluxmethod_advection_diffusion_3d_gpu proc~fluxmethod_advection_diffusion_3d->interface~fluxmethod_advection_diffusion_3d_gpu proc~updatesolution_dgmodel1d_t UpdateSolution_DGModel1D_t proc~additionalfree_esatmo3d_t AdditionalFree_ESAtmo3D_t proc~free_domaindecomposition Free_DomainDecomposition proc~free_domaindecomposition->interface~hipfree proc~free_domaindecomposition->proc~gpucheck proc~free_domaindecomposition->mpi_finalize proc~twopointfluxmethod_esatmo2d_t TwoPointFluxMethod_ESAtmo2D_t proc~setmetadata_esatmo2d_t SetMetadata_ESAtmo2D_t proc~setsolutionfromchar_dgmodel1d_t SetSolutionFromChar_DGModel1D_t proc~updatehost_tensor2d_t UpdateHost_Tensor2D_t proc~entropy_func_esatmo2d_t entropy_func_ESAtmo2D_t proc~free_tensor2d_t Free_Tensor2D_t proc~flux2d_model flux2d_Model proc~updategrk2_dgmodel1d_t UpdateGRK2_DGModel1D_t proc~init_domaindecomposition Init_DomainDecomposition proc~init_domaindecomposition->interface~hipgetdevicecount proc~init_domaindecomposition->mpi_init proc~init_domaindecomposition->mpi_comm_rank proc~init_domaindecomposition->mpi_comm_size mpi_abort mpi_abort proc~init_domaindecomposition->mpi_abort hipsetdevice hipsetdevice proc~init_domaindecomposition->hipsetdevice proc~twopointflux2d_esatmo2d_t twopointflux2d_ESAtmo2D_t proc~twopointflux2d_esatmo2d_t->proc~log_mean proc~reportmetrics_dgmodel2d_t ReportMetrics_DGModel2D_t proc~updategrk4_dgmodel1d_t UpdateGRK4_DGModel1D_t proc~read_dgmodel3d_t Read_DGModel3D_t proc~read_dgmodel3d_t->interface~open_hdf5 proc~read_dgmodel3d_t->interface~readarray_hdf5 proc~read_dgmodel3d_t->proc~close_hdf5 proc~setmetadata_dgmodel2d_t SetMetadata_DGModel2D_t proc~setdiffusion_esatmo3d_t SetDiffusion_ESAtmo3D_t proc~updatedevice_tensor2d_t UpdateDevice_Tensor2D_t proc~flux3d_model flux3d_Model proc~boundaryflux_advection_diffusion_3d boundaryflux_advection_diffusion_3d interface~boundaryflux_advection_diffusion_3d_gpu boundaryflux_advection_diffusion_3d_gpu proc~boundaryflux_advection_diffusion_3d->interface~boundaryflux_advection_diffusion_3d_gpu proc~updategrk3_dgmodel1d_t UpdateGRK3_DGModel1D_t proc~diffusivefluxmethod_esatmo3d_t DiffusiveFluxMethod_ESAtmo3D_t proc~boundaryinterp_tensor2d_t BoundaryInterp_Tensor2D_t proc~free_dgmodel2d Free_DGModel2D proc~free_dgmodel2d->interface~hipfree proc~free_dgmodel2d->proc~gpucheck proc~free_dgmodel2d->proc~free_dgmodel2d_t proc~init_dgmodel2d Init_DGModel2D proc~init_dgmodel2d->interface~hipmemcpy proc~init_dgmodel2d->proc~gpucheck proc~init_dgmodel2d->interface~hipmalloc proc~init_dgmodel2d->proc~init_dgmodel2d_t interface~mappedtwopointvectordivergence_2d_gpu MappedTwoPointVectorDivergence_2D_gpu proc~determinant_tensor2d_t Determinant_Tensor2D_t proc~init_points Init_Points proc~init_points->proc~gpucheck proc~init_points->interface~hipmalloc proc~source1d_model source1d_Model proc~locatepoints_2d_points LocatePoints_2D_Points proc~mappeddgdivergence_mappedvector3d MappedDGDivergence_MappedVector3D proc~mappeddgdivergence_mappedvector3d->interface~contravariantprojection_3d_gpu proc~mappeddgdivergence_mappedvector3d->interface~divergence_3d_gpu proc~mappeddgdivergence_mappedvector3d->interface~dg_boundarycontribution_3d_gpu proc~mappeddgdivergence_mappedvector3d->interface~jacobianweight_3d_gpu proc~setsolutionfromeqn_dgmodel2d_t SetSolutionFromEqn_DGModel2D_t proc~calculatesolutiongradient_dgmodel1d_t CalculateSolutionGradient_DGModel1D_t proc~calculatetendency_esatmo3d_t CalculateTendency_ESAtmo3D_t proc~setsolutionfromchar_dgmodel2d_t SetSolutionFromChar_DGModel2D_t proc~source2d_model source2d_Model proc~mappedderivative_mappedscalar1d MappedDerivative_MappedScalar1D proc~mappedderivative_mappedscalar1d->interface~jacobianweight_1d_gpu interface~mappedtwopointvectordivergence_3d_gpu MappedTwoPointVectorDivergence_3D_gpu proc~riemannflux2d_esatmo2d_t riemannflux2d_ESAtmo2D_t proc~calculateentropy_dgmodel1d_t CalculateEntropy_DGModel1D_t proc~source3d_model source3d_Model proc~free_points Free_Points proc~free_points->interface~hipfree proc~free_points->proc~gpucheck proc~updatesolution_dgmodel2d_t UpdateSolution_DGModel2D_t proc~hbc3d_nonormalflow_esatmo3d hbc3d_NoNormalFlow_ESAtmo3D proc~updategrk2_dgmodel2d_t UpdateGRK2_DGModel2D_t proc~calculatetendency_dgmodel2d CalculateTendency_DGModel2D proc~calculatetendency_dgmodel2d->interface~calculatedsdt_gpu
Help