version 3.10.0
Loading...
Searching...
No Matches
Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints > Class Template Reference

A C++ wrapper for a Python PorousMediumFlow problem.

#include <dumux/python/porousmediumflow/problem.hh>

Inheritance diagram for Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >:

Public Types

using GridGeometry = GridGeometry_
 
using SpatialParams = SpatialParams_
 
using Scalar = typename PrimaryVariables::value_type
 
using NumEqVector = Dune::FieldVector<Scalar, PrimaryVariables::dimension>
 
using Element = typename GridGeometry::GridView::template Codim<0>::Entity
 
using FVElementGeometry = typename GridGeometry::LocalView
 
using SubControlVolume = typename GridGeometry::SubControlVolume
 
using SubControlVolumeFace = typename GridGeometry::SubControlVolumeFace
 
using GlobalPosition = typename Element::Geometry::GlobalCoordinate
 
using BoundaryTypes = Dumux::BoundaryTypes<PrimaryVariables::dimension>
 
using PointSource
 
using PointSourceMap
 

Public Member Functions

 PorousMediumFlowProblem (std::shared_ptr< const GridGeometry > gridGeometry, std::shared_ptr< const SpatialParams > spatialParams, pybind11::object pyProblem)
 
const SpatialParamsspatialParams () const
 
const std::string & name () const
 
const std::string & name () const
 
const std::string & paramGroup () const
 
const std::string & paramGroup () const
 
BoundaryTypes boundaryTypes (const Element &element, const SubControlVolume &scv) const
 
BoundaryTypes boundaryTypes (const Element &element, const SubControlVolumeFace &scvf) const
 
BoundaryTypes boundaryTypes (const Element &element, const SubControlVolume &scv) const
 
BoundaryTypes boundaryTypes (const Element &element, const SubControlVolumeFace &scvf) const
 
PrimaryVariables dirichlet (const Element &element, const SubControlVolume &scv) const
 
PrimaryVariables dirichlet (const Element &element, const SubControlVolumeFace &scvf) const
 
PrimaryVariables dirichlet (const Element &element, const SubControlVolume &scv) const
 
PrimaryVariables dirichlet (const Element &element, const SubControlVolumeFace &scvf) const
 
NumEqVector neumann (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const ElementFluxVariablesCache &elemFluxVarsCache, const SubControlVolumeFace &scvf) const
 
NumEqVector neumann (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const ElementFluxVariablesCache &elemFluxVarsCache, const SubControlVolumeFace &scvf) const
 
NumEqVector source (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolume &scv) const
 
NumEqVector source (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolume &scv) const
 
NumEqVector sourceAtPos (const GlobalPosition &globalPos) const
 
NumEqVector sourceAtPos (const GlobalPosition &globalPos) const
 
NumEqVector scvPointSources (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolume &scv) const
 
NumEqVector scvPointSources (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const SubControlVolume &scv) const
 
const PointSourceMappointSourceMap () const
 
const PointSourceMappointSourceMap () const
 
PrimaryVariables initial (const Entity &entity) const
 
PrimaryVariables initial (const Entity &entity) const
 
void addSourceDerivatives (MatrixBlock &block, const Element &element, const FVElementGeometry &fvGeometry, const VolumeVariables &volVars, const SubControlVolume &scv) const
 Add source term derivative to the Jacobian.
 
void addSourceDerivatives (MatrixBlock &block, const Element &element, const FVElementGeometry &fvGeometry, const VolumeVariables &volVars, const SubControlVolume &scv) const
 Add source term derivative to the Jacobian.
 
const GridGeometrygridGeometry () const
 
const GridGeometrygridGeometry () const
 

Static Public Member Functions

static constexpr bool enableInternalDirichletConstraints ()
 
static constexpr bool enableInternalDirichletConstraints ()
 

Static Public Attributes

static constexpr bool isBox = GridGeometry::discMethod == DiscretizationMethods::box
 
static constexpr std::size_t numEq = static_cast<std::size_t>(PrimaryVariables::dimension)
 

Member Typedef Documentation

◆ BoundaryTypes

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::BoundaryTypes = Dumux::BoundaryTypes<PrimaryVariables::dimension>

◆ Element

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::Element = typename GridGeometry::GridView::template Codim<0>::Entity

◆ FVElementGeometry

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::FVElementGeometry = typename GridGeometry::LocalView

◆ GlobalPosition

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::GlobalPosition = typename Element::Geometry::GlobalCoordinate

◆ GridGeometry

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::GridGeometry = GridGeometry_

◆ NumEqVector

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::NumEqVector = Dune::FieldVector<Scalar, PrimaryVariables::dimension>

◆ PointSource

using Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::PointSource
inherited

◆ PointSourceMap

using Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::PointSourceMap
inherited

◆ Scalar

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::Scalar = typename PrimaryVariables::value_type

◆ SpatialParams

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::SpatialParams = SpatialParams_

◆ SubControlVolume

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::SubControlVolume = typename GridGeometry::SubControlVolume

◆ SubControlVolumeFace

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
using Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::SubControlVolumeFace = typename GridGeometry::SubControlVolumeFace

Constructor & Destructor Documentation

◆ PorousMediumFlowProblem()

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::PorousMediumFlowProblem ( std::shared_ptr< const GridGeometry > gridGeometry,
std::shared_ptr< const SpatialParams > spatialParams,
pybind11::object pyProblem )
inline

Member Function Documentation

◆ addSourceDerivatives() [1/2]

void Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::addSourceDerivatives ( MatrixBlock & block,
const Element & element,
const FVElementGeometry & fvGeometry,
const VolumeVariables & volVars,
const SubControlVolume & scv ) const
inlineinherited
Note
Only needed in case of analytic differentiation and solution dependent sources

◆ addSourceDerivatives() [2/2]

void Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::addSourceDerivatives ( MatrixBlock & block,
const Element & element,
const FVElementGeometry & fvGeometry,
const VolumeVariables & volVars,
const SubControlVolume & scv ) const
inlineinherited
Note
Only needed in case of analytic differentiation and solution dependent sources

◆ boundaryTypes() [1/4]

BoundaryTypes Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::boundaryTypes ( const Element & element,
const SubControlVolume & scv ) const
inlineinherited

◆ boundaryTypes() [2/4]

BoundaryTypes Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::boundaryTypes ( const Element & element,
const SubControlVolume & scv ) const
inlineinherited

◆ boundaryTypes() [3/4]

BoundaryTypes Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::boundaryTypes ( const Element & element,
const SubControlVolumeFace & scvf ) const
inlineinherited

◆ boundaryTypes() [4/4]

BoundaryTypes Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::boundaryTypes ( const Element & element,
const SubControlVolumeFace & scvf ) const
inlineinherited

◆ dirichlet() [1/4]

PrimaryVariables Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::dirichlet ( const Element & element,
const SubControlVolume & scv ) const
inlineinherited

◆ dirichlet() [2/4]

PrimaryVariables Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::dirichlet ( const Element & element,
const SubControlVolume & scv ) const
inlineinherited

◆ dirichlet() [3/4]

PrimaryVariables Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::dirichlet ( const Element & element,
const SubControlVolumeFace & scvf ) const
inlineinherited

◆ dirichlet() [4/4]

PrimaryVariables Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::dirichlet ( const Element & element,
const SubControlVolumeFace & scvf ) const
inlineinherited

◆ enableInternalDirichletConstraints() [1/2]

static constexpr bool Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::enableInternalDirichletConstraints ( )
inlinestaticconstexprinherited

◆ enableInternalDirichletConstraints() [2/2]

static constexpr bool Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::enableInternalDirichletConstraints ( )
inlinestaticconstexprinherited

◆ gridGeometry() [1/2]

const GridGeometry & Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::gridGeometry ( ) const
inlineinherited

◆ gridGeometry() [2/2]

const GridGeometry & Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::gridGeometry ( ) const
inlineinherited

◆ initial() [1/2]

PrimaryVariables Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::initial ( const Entity & entity) const
inlineinherited

◆ initial() [2/2]

PrimaryVariables Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::initial ( const Entity & entity) const
inlineinherited

◆ name() [1/2]

const std::string & Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::name ( ) const
inlineinherited

◆ name() [2/2]

const std::string & Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::name ( ) const
inlineinherited

◆ neumann() [1/2]

NumEqVector Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::neumann ( const Element & element,
const FVElementGeometry & fvGeometry,
const ElementVolumeVariables & elemVolVars,
const ElementFluxVariablesCache & elemFluxVarsCache,
const SubControlVolumeFace & scvf ) const
inlineinherited

◆ neumann() [2/2]

NumEqVector Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::neumann ( const Element & element,
const FVElementGeometry & fvGeometry,
const ElementVolumeVariables & elemVolVars,
const ElementFluxVariablesCache & elemFluxVarsCache,
const SubControlVolumeFace & scvf ) const
inlineinherited

◆ paramGroup() [1/2]

const std::string & Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::paramGroup ( ) const
inlineinherited

◆ paramGroup() [2/2]

const std::string & Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::paramGroup ( ) const
inlineinherited

◆ pointSourceMap() [1/2]

const PointSourceMap & Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::pointSourceMap ( ) const
inlineinherited

◆ pointSourceMap() [2/2]

const PointSourceMap & Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::pointSourceMap ( ) const
inlineinherited

◆ scvPointSources() [1/2]

NumEqVector Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::scvPointSources ( const Element & element,
const FVElementGeometry & fvGeometry,
const ElementVolumeVariables & elemVolVars,
const SubControlVolume & scv ) const
inlineinherited

◆ scvPointSources() [2/2]

NumEqVector Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::scvPointSources ( const Element & element,
const FVElementGeometry & fvGeometry,
const ElementVolumeVariables & elemVolVars,
const SubControlVolume & scv ) const
inlineinherited

◆ source() [1/2]

NumEqVector Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::source ( const Element & element,
const FVElementGeometry & fvGeometry,
const ElementVolumeVariables & elemVolVars,
const SubControlVolume & scv ) const
inlineinherited

◆ source() [2/2]

NumEqVector Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::source ( const Element & element,
const FVElementGeometry & fvGeometry,
const ElementVolumeVariables & elemVolVars,
const SubControlVolume & scv ) const
inlineinherited

◆ sourceAtPos() [1/2]

NumEqVector Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::sourceAtPos ( const GlobalPosition & globalPos) const
inlineinherited

◆ sourceAtPos() [2/2]

NumEqVector Dumux::Python::FVProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints_ >::sourceAtPos ( const GlobalPosition & globalPos) const
inlineinherited

◆ spatialParams()

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
const SpatialParams & Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::spatialParams ( ) const
inline

Member Data Documentation

◆ isBox

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
bool Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::isBox = GridGeometry::discMethod == DiscretizationMethods::box
staticconstexpr

◆ numEq

template<class GridGeometry_, class SpatialParams_, class PrimaryVariables, bool enableInternalDirichletConstraints>
std::size_t Dumux::Python::PorousMediumFlowProblem< GridGeometry_, SpatialParams_, PrimaryVariables, enableInternalDirichletConstraints >::numEq = static_cast<std::size_t>(PrimaryVariables::dimension)
staticconstexpr

The documentation for this class was generated from the following file: