@@ -90,6 +90,7 @@ create_cache(mesh, equations, ::VolumeIntegralWeakForm, dg, uEltype) = NamedTupl
9090
9191"""
9292 VolumeIntegralFluxDifferencing(volume_flux)
93+ VolumeIntegralFluxDifferencing(; volume_flux = flux_central)
9394
9495Volume integral type for DG methods based on SBP operators and flux differencing
9596using a symmetric two-point `volume_flux`. This `volume_flux` needs to satisfy
@@ -117,6 +118,10 @@ struct VolumeIntegralFluxDifferencing{VolumeFlux} <: AbstractVolumeIntegral
117118 volume_flux:: VolumeFlux
118119end
119120
121+ function VolumeIntegralFluxDifferencing (; volume_flux = flux_central)
122+ return VolumeIntegralFluxDifferencing {typeof(volume_flux)} (volume_flux)
123+ end
124+
120125function Base. show (io:: IO , :: MIME"text/plain" , integral:: VolumeIntegralFluxDifferencing )
121126 @nospecialize integral # reduce precompilation time
122127
@@ -192,6 +197,7 @@ abstract type AbstractVolumeIntegralPureLGLFiniteVolume <: AbstractVolumeIntegra
192197
193198"""
194199 VolumeIntegralPureLGLFiniteVolume(volume_flux_fv)
200+ VolumeIntegralPureLGLFiniteVolume(; volume_flux_fv = flux_lax_friedrichs)
195201
196202A volume integral that only uses the subcell finite volume schemes of the
197203[`VolumeIntegralShockCapturingHG`](@ref).
@@ -214,6 +220,10 @@ struct VolumeIntegralPureLGLFiniteVolume{VolumeFluxFV} <:
214220end
215221# TODO : Figure out if this can also be used for Gauss nodes, not just LGL, and adjust the name accordingly
216222
223+ function VolumeIntegralPureLGLFiniteVolume (; volume_flux_fv = flux_lax_friedrichs)
224+ return VolumeIntegralPureLGLFiniteVolume {typeof(volume_flux_fv)} (volume_flux_fv)
225+ end
226+
217227function Base. show (io:: IO , :: MIME"text/plain" ,
218228 integral:: VolumeIntegralPureLGLFiniteVolume )
219229 @nospecialize integral # reduce precompilation time
@@ -229,7 +239,8 @@ function Base.show(io::IO, ::MIME"text/plain",
229239end
230240
231241"""
232- VolumeIntegralPureLGLFiniteVolumeO2(basis::Basis, volume_flux_fv;
242+ VolumeIntegralPureLGLFiniteVolumeO2(basis::Basis;
243+ volume_flux_fv = flux_lax_friedrichs,
233244 reconstruction_mode = reconstruction_O2_full,
234245 slope_limiter = minmod)
235246
@@ -275,7 +286,8 @@ struct VolumeIntegralPureLGLFiniteVolumeO2{RealT <: Real, Basis, VolumeFluxFV,
275286 slope_limiter:: Limiter # which type of slope limiter function
276287end
277288
278- function VolumeIntegralPureLGLFiniteVolumeO2 (basis:: Basis , volume_flux_fv;
289+ function VolumeIntegralPureLGLFiniteVolumeO2 (basis:: Basis ;
290+ volume_flux_fv = flux_lax_friedrichs,
279291 reconstruction_mode = reconstruction_O2_full,
280292 slope_limiter = minmod) where {Basis}
281293 # Suffices to store only the intermediate boundaries of the sub-cell elements
309321
310322"""
311323 VolumeIntegralSubcellLimiting(limiter;
312- volume_flux_dg, volume_flux_fv)
324+ volume_flux_dg = flux_central,
325+ volume_flux_fv = flux_lax_friedrichs)
313326
314327A subcell limiting volume integral type for DG methods based on subcell blending approaches
315328with a low-order FV method. Used with limiter [`SubcellLimiterIDP`](@ref).
@@ -327,8 +340,9 @@ struct VolumeIntegralSubcellLimiting{VolumeFluxDG, VolumeFluxFV, Limiter} <:
327340 limiter:: Limiter
328341end
329342
330- function VolumeIntegralSubcellLimiting (limiter; volume_flux_dg,
331- volume_flux_fv)
343+ function VolumeIntegralSubcellLimiting (limiter;
344+ volume_flux_dg = flux_central,
345+ volume_flux_fv = flux_lax_friedrichs)
332346 VolumeIntegralSubcellLimiting{typeof (volume_flux_dg), typeof (volume_flux_fv),
333347 typeof (limiter)}(volume_flux_dg, volume_flux_fv,
334348 limiter)
0 commit comments