3.6-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Modules | Files | Classes | Functions
Cell-centered FV scheme

Finite volume schemes with degrees of freedom located at grid cell centers. More...

Description

Finite volume schemes with degrees of freedom located at grid cell centers.

Modules

 Two-point flux approximation (Tpfa)
 A cell-centered finite volume scheme with two-point flux approximation.
 
 Multi-point flux approximation (Mpfa)
 A cell-centered finite volume scheme with multi-point flux approximation.
 

Files

file  cclocalassembler.hh
 An assembler for Jacobian and residual contribution per element (cell-centered methods)
 
file  cclocalresidual.hh
 Calculates the element-wise residual for cell-centered discretization schemes.
 
file  cellcentered/connectivitymap.hh
 Stores the face indices corresponding to the neighbors of an element that contribute to the derivative calculation. This is used for finite-volume schemes with symmetric sparsity pattern in the global matrix.
 
file  cellcentered/elementboundarytypes.hh
 Boundary types gathered on an element.
 
file  cellcentered/elementsolution.hh
 The local element solution class for cell-centered methods.
 
file  cellcentered/gridvolumevariables.hh
 The grid volume variables class for cell centered models.
 
file  discretization/cellcentered/subcontrolvolume.hh
 Sub control volumes for cell-centered discretization schemes.
 
file  subdomaincclocalassembler.hh
 A multidomain local assembler for Jacobian and residual contribution per element (cell-centered methods)
 

Classes

class  Dumux::CCLocalAssemblerBase< TypeTag, Assembler, Implementation, implicit >
 A base class for all local cell-centered assemblers. More...
 
class  Dumux::CCLocalAssembler< TypeTag, Assembler, diffMethod, implicit >
 An assembler for Jacobian and residual contribution per element (cell-centered methods) More...
 
class  Dumux::CCLocalAssembler< TypeTag, Assembler, DiffMethod::numeric, true >
 Cell-centered scheme local assembler using numeric differentiation and implicit time discretization. More...
 
class  Dumux::CCLocalAssembler< TypeTag, Assembler, DiffMethod::numeric, false >
 Cell-centered scheme local assembler using numeric differentiation and explicit time discretization. More...
 
class  Dumux::CCLocalAssembler< TypeTag, Assembler, DiffMethod::analytic, true >
 Cell-centered scheme local assembler using analytic (hand-coded) differentiation and implicit time discretization. More...
 
class  Dumux::CCLocalAssembler< TypeTag, Assembler, DiffMethod::analytic, false >
 Cell-centered scheme local assembler using analytic (hand-coded) differentiation and explicit time discretization. More...
 
class  Dumux::CCLocalResidual< TypeTag >
 Calculates the element-wise residual for the cell-centered discretization schemes. More...
 
class  Dumux::CCSimpleConnectivityMap< GridGeometry >
 A simple version of the connectivity map for cellcentered schemes. This implementation works for schemes in which for a given cell I only those cells J have to be prepared in whose stencil the cell I appears. This means that for the flux calculations in the cells J (in order to compute the derivatives with respect to cell I), we do not need data on any additional cells J to compute these fluxes. The same holds for scvfs in the cells J, i.e. we need only those scvfs in the cells J in which the cell I is in the stencil. More...
 
class  Dumux::CCElementBoundaryTypes
 Boundary types gathered on an element. More...
 
class  Dumux::CCElementSolution< FVElementGeometry, PV >
 The element solution vector. More...
 
class  Dumux::CCGridVolumeVariables< Traits, cachingEnabled >
 Base class for the grid volume variables. More...
 
struct  Dumux::CCDefaultScvGeometryTraits< GridView >
 Default traits class to be used for the sub-control volumes for the cell-centered finite volume scheme using TPFA. More...
 
class  Dumux::CCSubControlVolume< GV, T >
 Sub control volumes for cell-centered discretization schemes. More...
 
class  Dumux::SubDomainCCLocalAssemblerBase< id, TypeTag, Assembler, Implementation, implicit >
 A base class for all multidomain local assemblers. More...
 
class  Dumux::SubDomainCCLocalAssembler< id, TypeTag, Assembler, DM, implicit >
 The cell-centered scheme multidomain local assembler. More...
 
class  Dumux::SubDomainCCLocalAssembler< id, TypeTag, Assembler, DiffMethod::numeric, true >
 Cell-centered scheme multidomain local assembler using numeric differentiation and implicit time discretization. More...
 
class  Dumux::SubDomainCCLocalAssembler< id, TypeTag, Assembler, DiffMethod::numeric, false >
 Cell-centered scheme multidomain local assembler using numeric differentiation and explicit time discretization. More...
 
class  Dumux::SubDomainCCLocalAssembler< id, TypeTag, Assembler, DiffMethod::analytic, true >
 Cell-centered scheme local assembler using analytic differentiation and implicit time discretization. More...
 

Functions

template<class FVElementGeometry , class PrimaryVariables >
auto Dumux::elementSolution (PrimaryVariables &&priVars) -> std::enable_if_t< FVElementGeometry::GridGeometry::discMethod==DiscretizationMethods::cctpfa||FVElementGeometry::GridGeometry::discMethod==DiscretizationMethods::ccmpfa, CCElementSolution< FVElementGeometry, PrimaryVariables > >
 Make an element solution for cell-centered schemes. More...
 
template<class FVElementGeometry , class PrimaryVariables >
auto Dumux::elementSolution (const PrimaryVariables &priVars) -> std::enable_if_t< FVElementGeometry::GridGeometry::discMethod==DiscretizationMethods::cctpfa||FVElementGeometry::GridGeometry::discMethod==DiscretizationMethods::ccmpfa, CCElementSolution< FVElementGeometry, PrimaryVariables > >
 Make an element solution for cell-centered schemes. More...
 

Function Documentation

◆ elementSolution() [1/2]

template<class FVElementGeometry , class PrimaryVariables >
auto Dumux::elementSolution ( const PrimaryVariables &  priVars) -> std::enable_if_t<FVElementGeometry::GridGeometry::discMethod == DiscretizationMethods::cctpfa || FVElementGeometry::GridGeometry::discMethod == DiscretizationMethods::ccmpfa, CCElementSolution<FVElementGeometry, PrimaryVariables>>

Make an element solution for cell-centered schemes.

Note
This is e.g. used to construct an element solution at Dirichlet boundaries

◆ elementSolution() [2/2]

template<class FVElementGeometry , class PrimaryVariables >
auto Dumux::elementSolution ( PrimaryVariables &&  priVars) -> std::enable_if_t<FVElementGeometry::GridGeometry::discMethod == DiscretizationMethods::cctpfa || FVElementGeometry::GridGeometry::discMethod == DiscretizationMethods::ccmpfa, CCElementSolution<FVElementGeometry, PrimaryVariables>>

Make an element solution for cell-centered schemes.

Make an element solution for staggered schemes.

Make an element solution for face-centered staggered schemes.

Note
This is e.g. used to construct an element solution at Dirichlet boundaries