Path: blob/main/src/equations/equations_parabolic.jl
2802 views
# specify transformation of conservative variables prior to taking gradients.1# specialize this function to compute gradients e.g., of primitive variables instead of conservative2gradient_variable_transformation(::AbstractEquationsParabolic) = cons2cons34# By default, the gradients are taken with respect to the conservative variables.5# this is reflected by the type parameter `GradientVariablesConservative` in the abstract6# type `AbstractEquationsParabolic{NDIMS, NVARS, GradientVariablesConservative}`.7struct GradientVariablesConservative end89# Linear scalar diffusion for use in linear scalar advection-diffusion problems10abstract type AbstractLaplaceDiffusion{NDIMS, NVARS} <:11AbstractEquationsParabolic{NDIMS, NVARS, GradientVariablesConservative} end1213"""14have_constant_diffusivity(::AbstractLaplaceDiffusion)1516# Returns17- `True()`1819Used in diffusive CFL condition computation (see [`StepsizeCallback`](@ref)) to indicate that the20diffusivity is constant in space and that [`max_diffusivity`](@ref) needs **not** to be re-computed21at every node in every element.2223Also employed in [`linear_structure`](@ref) and [`linear_structure_parabolic`](@ref) to check24if the diffusion term is linear in the variables/constant.25"""26@inline have_constant_diffusivity(::AbstractLaplaceDiffusion) = True()2728"""29max_diffusivity(equations_parabolic::AbstractLaplaceDiffusion)3031# Returns32- `equations_parabolic.diffusivity`3334Returns isotropic diffusion coefficient for use in diffusive CFL condition computation,35see [`StepsizeCallback`](@ref).36"""37@inline function max_diffusivity(equations_parabolic::AbstractLaplaceDiffusion)38return equations_parabolic.diffusivity39end4041include("laplace_diffusion_1d.jl")42include("laplace_diffusion_2d.jl")43include("laplace_diffusion_3d.jl")4445include("laplace_diffusion_entropy_variables.jl")46include("laplace_diffusion_entropy_variables_1d.jl")47include("laplace_diffusion_entropy_variables_2d.jl")48include("laplace_diffusion_entropy_variables_3d.jl")4950# Compressible Navier-Stokes equations51abstract type AbstractCompressibleNavierStokesDiffusion{NDIMS, NVARS, GradientVariables} <:52AbstractEquationsParabolic{NDIMS, NVARS, GradientVariables} end53include("compressible_navier_stokes.jl")54include("compressible_navier_stokes_1d.jl")55include("compressible_navier_stokes_2d.jl")56include("compressible_navier_stokes_3d.jl")575859