www.mooseframework.org
AEFVUpwindInternalSideFlux.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "InternalSideFluxBase.h"
13 
14 // Forward Declarations
16 
17 template <>
19 
26 {
27 public:
28  AEFVUpwindInternalSideFlux(const InputParameters & parameters);
30 
31  virtual void calcFlux(unsigned int iside,
32  dof_id_type ielem,
33  dof_id_type ineig,
34  const std::vector<Real> & uvec1,
35  const std::vector<Real> & uvec2,
36  const RealVectorValue & dwave,
37  std::vector<Real> & flux) const override;
38 
39  virtual void calcJacobian(unsigned int iside,
40  dof_id_type ielem,
41  dof_id_type ineig,
42  const std::vector<Real> & uvec1,
43  const std::vector<Real> & uvec2,
44  const RealVectorValue & dwave,
45  DenseMatrix<Real> & jac1,
46  DenseMatrix<Real> & jac2) const override;
47 
48 protected:
50  const Real _velocity;
51 };
52 
InternalSideFluxBase.h
AEFVUpwindInternalSideFlux
Upwind numerical flux scheme for the advection equation using a cell-centered finite volume method.
Definition: AEFVUpwindInternalSideFlux.h:25
AEFVUpwindInternalSideFlux::AEFVUpwindInternalSideFlux
AEFVUpwindInternalSideFlux(const InputParameters &parameters)
Definition: AEFVUpwindInternalSideFlux.C:25
validParams< AEFVUpwindInternalSideFlux >
InputParameters validParams< AEFVUpwindInternalSideFlux >()
Definition: AEFVUpwindInternalSideFlux.C:16
AEFVUpwindInternalSideFlux::~AEFVUpwindInternalSideFlux
virtual ~AEFVUpwindInternalSideFlux()
Definition: AEFVUpwindInternalSideFlux.C:30
AEFVUpwindInternalSideFlux::_velocity
const Real _velocity
advective velocity
Definition: AEFVUpwindInternalSideFlux.h:50
InternalSideFluxBase
A base class for computing and caching internal side flux.
Definition: InternalSideFluxBase.h:32
AEFVUpwindInternalSideFlux::calcFlux
virtual void calcFlux(unsigned int iside, dof_id_type ielem, dof_id_type ineig, const std::vector< Real > &uvec1, const std::vector< Real > &uvec2, const RealVectorValue &dwave, std::vector< Real > &flux) const override
Solve the Riemann problem.
Definition: AEFVUpwindInternalSideFlux.C:33
AEFVUpwindInternalSideFlux::calcJacobian
virtual void calcJacobian(unsigned int iside, dof_id_type ielem, dof_id_type ineig, const std::vector< Real > &uvec1, const std::vector< Real > &uvec2, const RealVectorValue &dwave, DenseMatrix< Real > &jac1, DenseMatrix< Real > &jac2) const override
Compute the Jacobian matrix.
Definition: AEFVUpwindInternalSideFlux.C:66