Commit 419715b4 authored by Timo Koch's avatar Timo Koch
Browse files

[common] Fix missing includes

parent fae92010
......@@ -24,6 +24,9 @@
#ifndef DUMUX_BOUNDARY_TYPES_HH
#define DUMUX_BOUNDARY_TYPES_HH
#include <algorithm>
#include <array>
namespace Dumux
{
......
......@@ -24,6 +24,10 @@
#ifndef DUMUX_ENTITY_INDEX_MAP_HH
#define DUMUX_ENTITY_INDEX_MAP_HH
#include <vector>
#include <utility>
#include <dune/geometry/dimension.hh>
namespace Dumux {
/*!
......
......@@ -32,8 +32,10 @@
#include <vector>
#include <array>
#include <algorithm>
#include <memory>
#include <numeric>
#include <type_traits>
#include <iostream>
#include <dune/common/promotiontraits.hh>
#include <dune/common/timer.hh>
......
......@@ -30,7 +30,7 @@
#include <dune/grid/common/rangegenerators.hh>
#include <dune/common/version.hh>
#include <dumux/common/properties.hh>
namespace Dumux
{
......@@ -39,6 +39,7 @@ namespace Dumux
* \ingroup Common
* \brief defines a standard intersection mapper for mapping of global DOFs assigned
* to faces. It only works for conforming grids, without hanging nodes.
* \todo This shouldn't depend on type tag but gridview only
*/
template<class TypeTag>
class ConformingGridIntersectionMapper
......@@ -84,6 +85,7 @@ private:
* \ingroup Common
* \brief defines an intersection mapper for mapping of global DOFs assigned
* to faces which also works for non-conforming grids and corner-point grids.
* \todo This shouldn't depend on type tag but gridview only
*/
template<class TypeTag>
class NonConformingGridIntersectionMapper
......
......@@ -24,6 +24,8 @@
#ifndef DUMUX_INTEGER_RANGE_HH
#define DUMUX_INTEGER_RANGE_HH
#include <cassert>
namespace Dumux {
/*!
......
......@@ -186,7 +186,9 @@ NEW_PROP_TAG(NumEqCellCenter); //!< The number of equations
NEW_PROP_TAG(NumEqFace); //!< The number of equations for face dofs
NEW_PROP_TAG(CellCenterSolutionVector); //!< The solution vector type for cell-centered dofs
NEW_PROP_TAG(FaceSolutionVector); //!< The solution vector type for face dofs
NEW_PROP_TAG(StaggeredFaceSolution); //!< The solution on the face
NEW_PROP_TAG(GlobalFaceVars); //!< Class containing face-related data
NEW_PROP_TAG(ElementFaceVariables); //!< Face data per element
NEW_PROP_TAG(CellCenterPrimaryVariables); //!< The primary variables container type for cell-centered dofs
NEW_PROP_TAG(FacePrimaryVariables); //!< The primary variables container type for face dofs
NEW_PROP_TAG(IntersectionMapper); //!< Specifies the intersection mapper
......@@ -196,6 +198,7 @@ NEW_PROP_TAG(StaggeredPrimaryVariables); //!< The hybrid primary varia
NEW_PROP_TAG(BaseEpsilon); //!< A base epsilon for numerical differentiation, can contain multiple values
NEW_PROP_TAG(FaceVariables); //!< Class containing local face-related data
NEW_PROP_TAG(BoundaryValues); //!< Class containing local boundary data
NEW_PROP_TAG(EnableGlobalFaceVariablesCache); //!< If the face variables are cached on the gridview
/////////////////////////////////////////////////////////////
// Properties used by the mpnc model
......
......@@ -24,11 +24,16 @@
#ifndef DUMUX_STAGGERD_FV_PROBLEM_HH
#define DUMUX_STAGGERD_FV_PROBLEM_HH
#include <dune/common/version.hh>
#if DUNE_VERSION_NEWER(DUNE_COMMON,2,6)
#include <dune/common/rangeutilities.hh>
#endif
#include <dumux/common/properties.hh>
#include <dumux/common/fvproblem.hh>
namespace Dumux
{
namespace Dumux {
/*!
* \ingroup Problems
* \ingroup Common
......
// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
// vi: set et ts=4 sw=4 sts=4:
/*****************************************************************************
* See the file COPYING for full copying permissions. *
* *
* This program is free software: you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation, either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
*****************************************************************************/
/*!
* \file
* \ingroup Common
* \brief Manages the handling of time dependent problems
*/
#ifndef DUMUX_TIME_STEPPING_SCHEME_HH
#define DUMUX_TIME_STEPPING_SCHEME_HH
#include "parameters.hh"
namespace Dumux
{
/*!
* \ingroup Common
* \brief The abstract time stepping parameter interface
*/
template <class Scalar>
class TimeSteppingParams
{
public:
//! Pure abstract base classes have virtual destructor
virtual ~TimeSteppingScheme () {}
//! Returns if the time stepping scheme is implicit
virtual constexpr bool implicit() const = 0;
//! The number of stages in the time stepping scheme
virtual std::size_t numStages() const = 0;
//! The a parameters of the time stepping scheme
virtual Scalar a(int stage, int i) const = 0;
//! The b parameters of the time stepping scheme
virtual Scalar b(int stage, int i) const = 0;
//! The d parameters of the time stepping scheme
virtual Scalar d(int i) const = 0;
//! The name of the time stepping scheme
virtual std::string name() const = 0;
};
/*!
* \ingroup Common
* \brief The time stepping scheme class
*/
template <class Scalar>
class TimeSteppingScheme
{
public:
TimeSteppingScheme(std::shared_ptr<TimeSteppingParams> method)
: method_(method)
{}
private:
std::shared_ptr<TimeSteppingParams> method_;
};
} // end namespace Dumux
#endif
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment