rbmatlab  1.16.09
 All Classes Namespaces Files Functions Variables Modules Pages
Functions
fv_num_conv_flux_lax_friedrichs.m File Reference

Function computing a numerical convective Lax-Friedrichs flux matrix. More...

Go to the source code of this file.

Functions

function
num_flux = 
fv_num_conv_flux_lax_friedrichs (model, model_data, U, NU_ind)
 Function computing a numerical convective Lax-Friedrichs flux matrix. More...
 

Detailed Description

Function computing a numerical convective Lax-Friedrichs flux matrix.

Definition in file fv_num_conv_flux_lax_friedrichs.m.

Function Documentation

function num_flux = fv_num_conv_flux_lax_friedrichs (   model,
  model_data,
  U,
  NU_ind 
)

Function computing a numerical convective Lax-Friedrichs flux matrix.

Dirichlet-boundary treatment is performed, but Neumann-values are set to nan. They must be performed by the calling function.

Lax-Friedrichs-Flux

\[g_{jl}(u,v) = \frac12 (f(u,x_{jl}) + f(v,x_{jl})) \cdot \nu_{jl} - \frac{|S_{jl}|}{2 \lambda_{jl}} (v-u)\]

or equivalently

\[g_{jl}(u,v) = \frac12 |S_{jl}| \left( (f(u)+f(v)) \cdot n_{jl} - \frac{1}{\lambda_{jl}} (v-u) \right)\]

with \(\lambda_{jl} := \frac{\Delta t}{|m_j - m_l|}\).
Parameters
modelmodel
model_datamodel data
UU
NU_indNU ind
Return values
num_fluxnum flux
Required fields of model:
  • lxf_lambda —  (inverse of) numerical diffusion in Lax-Friedrichs flux
  • flux_quad_degree —  flux quad degree
  • divclean_mode —  divclean mode
  • dirichlet_values_ptr —  dirichlet values ptr
  • verbose —  flag indicating the verbosity level of informative output
  • filecache_velocity_matrixfile_extract —  filecache velocity matrixfile extract
  • conv_flux_ptr —  conv flux ptr
Required fields of model_data:
  • grid —  a structure containing geometry information of a mesh used for discretizations
Generated fields of num_flux:
  • Lg —  Lipschitz constant satisfying

    \[|g_{ij}(w,v) - g_{ij}(w',v')| \leq Lg |S_{ij}| ( |w'-w| + |v'-v| )\]

  • G —  the matrix of numerical flux values across the edges. boundary treatment is performed as follows:
    • in dirichlet-boundary points, the neighbour-values are simply set to this value and the flux is computed.
    • Neumann-treatment is not performed here

Definition at line 17 of file fv_num_conv_flux_lax_friedrichs.m.

Here is the call graph for this function:

Here is the caller graph for this function: