API

Public

Dante.setInitRiemannFunction
setInitRiemann(RiemannProblemType, Verbose)

Set the initial conditions of Riemann problems. Note that currently tEnd and CFL number can only be set in PARAM.toml, and cannot be changed afterwards.

source
Dante.solveFunction
solve(paramFile)

Run the model given input parameter file paramFile.

source

Private

Dante.calc_face_value!Method
calc_face_value!(param, state_GV, faceState, faceGradient)

Type instability for the return type is introduced, but it seems ok. I don't know how to modify faceState for views in 1st order.

source
Dante.divergence!Method

divergence!(param, vec, div)

Calculate the divergence of vectors specialized to my grid size. Always assume starting with i -> j -> k for 1/2/3D! Right now do nothing for the ghost cells. Maybe needed later! Take central differences on interior points.

source
Dante.getEulerExactSolMethod
getEulerExactSol(ρ1, u1, p1, ρ4, u4, p4, tEnd, n)

Classical Gas Exact Riemann Solver for shock tube problems. This programs is based on the code of Principles Of Computational Fluid Dynamics by P. Wesseling.

Note

A Cavitation Check is incorporated in the code. It further prevents plotting for possible but physically unlikely case of expansion shocks.

Arguments

  • ρ1::Float64: left density at t=0.
  • u1::Float64: left velocity at t=0.
  • p1::Float64: left pressure at t=0.
  • ρ4::Float64: right density at t=0.
  • u4::Float64: right velocity at t=0.
  • p4::Float64: right pressure at t=0.
  • tEnd::Float64: final solution time.
  • n::Integer64: the gas Degree of freedom.

Coded by Manuel Diaz, IAM, NTU 03/09/2011. Migrated by Hongyang Zhou from MATLAB to Julia, 11/05/2019

source
Dante.minmodMethod
minmod(a, b, c)

For three inputs, use Harten's generalized definition. Return zero if opposite sign, otherwise the one of smaller magnitude.

source
Dante.minmodMethod
minmod(a, b)

Return zero if opposite sign, otherwise the one of smaller magnitude.

source