version 3.11-dev
Loading...
Searching...
No Matches
Control-volume Finite Element Methods

Control-volume finite element schemes (e.g. box method) Control-volume finite element schemes are based on finite element basis functions for interpolation but define control volumes to construct a finite volume scheme. They can be interpreted both as finite volume or as (Petrov-Galerkin) finite element scheme. More...

Description

Topics

 Diamond discretization scheme
 Face-centered finite-volume scheme based on non-conforming finite-element spaces.
 PQ1 CVFE (Box) scheme
 The box method is a collocated finite volume scheme with control volumes centered at grid nodes.
 PQ1-B CVFE scheme
 Control-volume finite element scheme based on P1/Q1 basis function with enrichment by a bubble function.
 PQ2 CVFE scheme
 Control-volume finite element scheme based on P2/Q2 basis function.
 PQ3 CVFE scheme
 Control-volume finite element scheme based on P3/Q3 basis function.

Classes

class  Dumux::CVFELocalAssemblerBase< TypeTag, Assembler, Implementation, implicit >
 A base class for all local CVFE assemblers. More...
class  Dumux::CVFELocalAssembler< TypeTag, Assembler, diffMethod, implicit, Implementation >
 An assembler for Jacobian and residual contribution per element (CVFE methods). More...
class  Dumux::CVFELocalAssembler< TypeTag, Assembler, DiffMethod::numeric, true, Implementation >
 Control volume finite element local assembler using numeric differentiation and implicit time discretization. More...
class  Dumux::CVFELocalAssembler< TypeTag, Assembler, DiffMethod::numeric, false, Implementation >
 Control volume finite element local assembler using numeric differentiation and explicit time discretization. More...
class  Dumux::CVFELocalAssembler< TypeTag, Assembler, DiffMethod::analytic, true, Implementation >
 Control volume finite element local assembler using analytic differentiation and implicit time discretization. More...
class  Dumux::CVFELocalAssembler< TypeTag, Assembler, DiffMethod::analytic, false, Implementation >
 Control volume finite element local assembler using analytic differentiation and explicit time discretization. More...
class  Dumux::CVFELocalResidual< TypeTag >
 The element-wise residual for control-volume finite element schemes. More...
class  Dumux::CVFEElementBoundaryTypes< BTypes >
 This class stores an array of BoundaryTypes objects. More...
class  Dumux::CVFEElementFluxVariablesCacheImpl< GFVC, cachingEnabled, ScvfQuadratureRule >
 The flux variables caches for an element. More...
class  Dumux::CVFEElementFluxVariablesCacheImpl< GFVC, true, ScvfQR >
 The flux variables caches for an element with caching enabled (for general quadrature rules). More...
class  Dumux::CVFEElementFluxVariablesCacheImpl< GFVC, false, QuadratureRules::MidpointQuadrature >
 The flux variables caches for an element with caching disabled (MidpointQuadrature). More...
class  Dumux::CVFEElementFluxVariablesCacheImpl< GFVC, false, ScvfQR >
 The flux variables caches for an element with caching disabled (general quadrature). More...
class  Dumux::CVFEElementSolution< FVElementGeometry, PV >
 The element solution vector. More...
class  Dumux::Detail::CVFE::CVFEElementVariables< GVC, cachingEnabled >
 The (stencil) element variables class for control-volume finite element. More...
class  Dumux::Detail::CVFE::CVFEElementVariables< GVC, true >
 The (stencil) element variables class for control-volume finite element with caching. More...
class  Dumux::Detail::CVFE::CVFEElementVariables< GVC, false >
 The local (stencil) element variables class for control-volume finite element without caching. More...
class  Dumux::CVFEElementVolumeVariables< GVV, cachingEnabled >
 The local (stencil) volume variables class for control-volume finite element. More...
class  Dumux::CVFEElementVolumeVariables< GVV, true >
 The local (stencil) volume variables class for control-volume finite element with caching. More...
class  Dumux::CVFEElementVolumeVariables< GVV, false >
 The local (stencil) volume variables class for control-volume finite element without caching. More...
class  Dumux::CVFEFluxVariablesCache< Scalar, GridGeometry >
 Flux variables cache class for control-volume finite element schemes. For control-volume finite element schemes, this class does not contain any physics-/process-dependent data. It solely stores disretization-/grid-related data. More...
struct  Dumux::CVFEDefaultGridFVCTraits< P, FVC >
 Flux variable caches traits. More...
class  Dumux::CVFEGridFluxVariablesCacheImpl< Problem, FluxVariablesCache, cachingEnabled, Traits, ScvfQuadratureRule >
 Flux variable caches implementation on a gridview. More...
class  Dumux::CVFEGridFluxVariablesCacheImpl< P, FVC, true, Traits, QuadratureRules::MidpointQuadrature >
 Flux variable caches on a gridview with grid caching enabled (MidpointQuadrature specialization). More...
class  Dumux::CVFEGridFluxVariablesCacheImpl< P, FVC, true, Traits, ScvfQR >
 Flux variable caches on a gridview with grid caching enabled (general quadrature specialization). More...
class  Dumux::CVFEGridFluxVariablesCacheImpl< P, FVC, false, Traits, ScvfQR >
 Flux variable caches on a gridview with grid caching disabled. More...
class  Dumux::Detail::CVFE::CVFEGridVariablesCache< Traits, enableCaching >
 Base class for the grid local variables. More...
class  Dumux::CVFEGridVolumeVariables< Traits, enableCaching >
 Base class for the grid volume variables. More...
class  Dumux::HybridCVFEElementFluxVariablesCache< GFVC, cachingEnabled >
 The flux variables caches for an element when using hybrid CVFE discretizations. More...
class  Dumux::HybridCVFEElementFluxVariablesCache< GFVC, true >
 The flux variables caches for an element with caching enabled (for general quadrature rules). More...
class  Dumux::HybridCVFEElementFluxVariablesCache< GFVC, false >
 The flux variables caches for an element with caching disabled (general quadrature). More...
class  Dumux::Experimental::CVFE::HybridCVFEElementVariables< GVC, cachingEnabled >
 The (stencil) element variables class for hybrid control-volume finite element. More...
class  Dumux::Experimental::CVFE::HybridCVFEElementVariables< GVC, true >
 The (stencil) element variables class for hybrid control-volume finite element with caching. More...
class  Dumux::Experimental::CVFE::HybridCVFEElementVariables< GVC, false >
 The local (stencil) element variables class for control-volume finite element without caching. More...
class  Dumux::HybridCVFEFluxVariablesCache< Scalar, GridGeometry >
 Flux variables cache class for control-volume finite element schemes. For control-volume finite element schemes, this class does not contain any physics-/process-dependent data. It solely stores disretization-/grid-related data. More...
struct  Dumux::HybridCVFEDefaultGridFVCTraits< P, FVC >
 Flux variable caches traits. More...
class  Dumux::HybridCVFEGridFluxVariablesCache< Problem, FluxVariablesCache, cachingEnabled, Traits >
 Flux variable caches implementation on a gridview. More...
class  Dumux::HybridCVFEGridFluxVariablesCache< P, FVC, true, Traits >
 Flux variable caches on a gridview with grid caching enabled (general quadrature specialization). More...
class  Dumux::HybridCVFEGridFluxVariablesCache< P, FVC, false, Traits >
 Flux variable caches on a gridview with grid caching disabled. More...
class  Dumux::Experimental::CVFE::HybridCVFEGridVariablesCache< Traits, enableCaching >
 The grid variables cache class for hybrid control-volume finite element methods. More...
class  Dumux::CVFE::InterpolationPointData< LocalPos, GlobalPos >
 An interpolation point related to an element that includes global and local positions. More...
class  Dumux::CVFE::LocalDofInterpolationPointData< LocalPosition, GlobalPosition, LocalIndex >
 An interpolation point related to a localDof of an element, giving its global and local positions. More...
class  Dumux::CVFE::InterpolationPointDataLocalMapping< LocalMapping, GlobalPos >
 An interpolation point related to a global position of an element, giving its local positions by a mapping. More...
class  Dumux::CVFE::FaceInterpolationPointData< BaseClass, LocalIndex >
 An interpolation point related to a face of an element. More...
class  Dumux::CVFE::IndexedQuadratureInterpolationPointData< IpData >
 Wraps interpolation point data and adds a quadrature point index for use in quadrature loops. More...
class  Dumux::CVFE::LocalBasisInterpolationPointData< GridGeometry >
 Interpolation point data related to a local basis. More...
class  Dumux::CVFE::LocalDof< LocalIndex, GridIndex >
 A local degree of freedom from an element perspective. More...
class  Dumux::Detail::CVFE::VariablesAdapter< VolumeVariables >
 A class for providing the new update interface of variables. This allows to still use the VolumesVariables. More...
class  Dumux::Experimental::CVFELocalAssemblerBase< TypeTag, Assembler, Implementation >
 A base class for all local CVFE assemblers. More...
class  Dumux::Experimental::CVFELocalAssembler< TypeTag, Assembler, diffMethod, Implementation >
 An assembler for Jacobian and residual contribution per element (CVFE methods). More...
class  Dumux::Experimental::CVFELocalAssembler< TypeTag, Assembler, DiffMethod::numeric, Implementation >
 Control volume finite element local assembler using numeric differentiation. More...
class  Dumux::Experimental::SubDomainCVFELocalAssemblerBase< id, TypeTag, Assembler, Implementation, dm >
 A base class for all CVFE subdomain local assemblers. More...
class  Dumux::Experimental::SubDomainCVFELocalAssembler< id, TypeTag, Assembler, DM >
 The CVFE scheme multidomain local assembler. More...
class  Dumux::Experimental::SubDomainCVFELocalAssembler< id, TypeTag, Assembler, DiffMethod::numeric >
 CVFE scheme multi domain local assembler using numeric differentiation. More...
class  Dumux::SubDomainCVFELocalAssemblerBase< id, TypeTag, Assembler, Implementation, dm, implicit >
 A base class for all CVFE subdomain local assemblers. More...
class  Dumux::SubDomainCVFELocalAssembler< id, TypeTag, Assembler, DM, implicit >
 The CVFE scheme multidomain local assembler. More...
class  Dumux::SubDomainCVFELocalAssembler< id, TypeTag, Assembler, DiffMethod::numeric, true >
 CVFE scheme multi domain local assembler using numeric differentiation and implicit time discretization. More...
class  Dumux::SubDomainCVFELocalAssembler< id, TypeTag, Assembler, DiffMethod::numeric, false >
 CVFE scheme multi domain local assembler using numeric differentiation and explicit time discretization. More...

Typedefs

template<class GFVC, bool cachingEnabled>
using Dumux::CVFEElementFluxVariablesCache = CVFEElementFluxVariablesCacheImpl<GFVC, cachingEnabled, Detail::ScvfQuadratureRuleOrDefault_t<typename GFVC::FluxVariablesCache>>
 The flux variables caches for an element.
template<class Problem, class FluxVariablesCache, bool cachingEnabled = false, class Traits = CVFEDefaultGridFVCTraits<Problem, FluxVariablesCache>>
using Dumux::CVFEGridFluxVariablesCache
 Flux variable caches on a gridview.

Files

file  cvfelocalassembler.hh
 An assembler for Jacobian and residual contribution per element (CVFE methods).
file  cvfelocalresidual.hh
 Calculates the element-wise residual for control-volume finite element schemes.
file  elementboundarytypes.hh
 Boundary types gathered on an element.
file  elementfluxvariablescache.hh
 Global flux variable cache.
file  elementsolution.hh
 The local element solution class for control-volume finite element methods.
file  elementvariables.hh
 The element variables class.
file  elementvolumevariables.hh
 The local volume variables class.
file  fluxvariablescache.hh
 Flux variables cache class for control-volume finite element schemes.
file  gridfluxvariablescache.hh
 Global flux variable cache.
file  gridvariablescache.hh
 The grid local variables class for control-volume finite element methods.
file  gridvolumevariables.hh
 The grid volume variables class for control-volume finite element methods.
file  elementfluxvariablescache.hh
 Global flux variable cache.
file  elementvariables.hh
 The element variables class for hybrid control-volume finite element methods.
file  fluxvariablescache.hh
 Flux variables cache class for control-volume finite element schemes.
file  gridfluxvariablescache.hh
 Global flux variable cache.
file  gridvariablescache.hh
 The grid variables cache class for hybrid control-volume finite element methods.
file  interpolationpointdata.hh
 Classes representing interpolation point data for control-volume finite element schemes.
file  localdof.hh
 Class representing dofs on elements for control-volume finite element schemes.
file  variablesadapter.hh
file  variablesdeflectionpolicy.hh
 Variables deflection policy.
file  cvfelocalassembler.hh
 An assembler for Jacobian and residual contribution per element (CVFE methods).
file  subdomaincvfelocalassembler.hh
 An assembler for Jacobian and residual contribution per element (CVFE methods) for multidomain problems.
file  subdomaincvfelocalassembler.hh
 An assembler for Jacobian and residual contribution per element (CVFE methods) for multidomain problems.

Typedef Documentation

◆ CVFEElementFluxVariablesCache

template<class GFVC, bool cachingEnabled>
using Dumux::CVFEElementFluxVariablesCache = CVFEElementFluxVariablesCacheImpl<GFVC, cachingEnabled, Detail::ScvfQuadratureRuleOrDefault_t<typename GFVC::FluxVariablesCache>>

◆ CVFEGridFluxVariablesCache

template<class Problem, class FluxVariablesCache, bool cachingEnabled = false, class Traits = CVFEDefaultGridFVCTraits<Problem, FluxVariablesCache>>
using Dumux::CVFEGridFluxVariablesCache
Initial value:
CVFEGridFluxVariablesCacheImpl<Problem, FluxVariablesCache, cachingEnabled,
Flux variable caches implementation on a gridview.
Definition discretization/cvfe/gridfluxvariablescache.hh:48
Dune::Std::detected_or_t< QuadratureRules::MidpointQuadrature, DefinesScvfQuadratureRule, FluxVariablesCache > ScvfQuadratureRuleOrDefault_t
Definition discretization/cvfe/elementfluxvariablescache.hh:32