Commit 214fb590 authored by Markus Wolff's avatar Markus Wolff
Browse files

doxygen documentation + clean up



git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@4972 2fb0f335-1f38-0410-981e-8018bf24f1b0
parent 0502ad5c
......@@ -35,18 +35,13 @@ namespace Dumux
* @brief Class for defining the diffusive capillary pressure term of a saturation equation
*
* Defines the diffusive capillary pressure term of the form
* \f[
* \bar \lambda \boldsymbol{K} \text{grad} \, p_c,
* \f]
*
* \f[\bar \lambda \boldsymbol{K} \text{grad} \, p_c,\f]
*
* where \f$\bar \lambda = \lambda_w f_n = \lambda_n f_w\f$ and \f$\lambda\f$ is a phase mobility and \f$f\f$ a phase fractional flow function,
* \f$\boldsymbol{K}\f$ is the intrinsic permeability and \f$p_c = p_c(S_w) \f$ the capillary pressure.
*
* Template parameters are:
- GridView a DUNE gridview type
- Scalar type used for scalar quantities
- VC type of a class containing different variables of the model
- Problem class defining the physical problem
* @tparam TypeTag The Type Tag
*/
template<class TypeTag>
class CapillaryDiffusion: public DiffusivePart<TypeTag>
......
......@@ -33,10 +33,7 @@ namespace Dumux
/*!\ingroup Saturation2p
* @brief Base class for defining the convective part of an advection-diffusion equation
*
* Template parameters are:
- GridView a DUNE gridview type
- Scalar type used for scalar quantities
* @tparam TypeTag The Type Tag
*/
template<class TypeTag>
......@@ -55,8 +52,8 @@ public:
//! Returns convective term
/*! Returns convective term for current element face
* @param[in] element entity of codim 0
* @param[in] sat saturation of current element
* @param[in] indexInInside face index in reference element
* @param[in] sat saturation of current element
* \return convective term of an advection-diffusion equation
*/
Scalar operator() (const Element& element, const int indexInInside, const Scalar sat) const
......@@ -67,9 +64,9 @@ public:
//! Returns convective term
/*! Returns convective term for current element face
* @param[in] element entity of codim 0
* @param[in] indexInInside face index in reference element
* @param[in] satI saturation of current element
* @param[in] satJ saturation of neighbor element
* @param[in] indexInInside face index in reference element
* \return convective term of an advection-diffusion equation
*/
Dune::FieldVector<Scalar, dimWorld> operator() (const Element& element, const int indexInInside, const Scalar satI, const Scalar satJ) const
......@@ -78,6 +75,10 @@ public:
return trivial;
}
//! The constructor
/*
* \param problem object including the problem definition
*/
ConvectivePart(Problem& problem)
{}
......
......@@ -32,10 +32,7 @@ namespace Dumux
/*!\ingroup Saturation2p
* @brief Base class for defining the diffusive part of an advection-diffusion equation
*
* Template parameters are:
- GridView a DUNE gridview type
- Scalar type used for scalar quantities
* @tparam TypeTag The Type Tag
*/
template<class TypeTag>
class DiffusivePart
......@@ -101,6 +98,10 @@ public:
}
//! The constructor
/*
* \param problem object including the problem definition
*/
DiffusivePart(Problem& problem)
{}
//! always define virtual destructor in abstract base class
......
......@@ -33,16 +33,13 @@ namespace Dumux
*
* Base class for implementations of different kinds of fluxes to evaluate a CFL-Condition of the form
*
* \f[
* \frac{F_i \Delta t}{V_p_i} < 1
* \f]
* where \f(V_p_i\f) is the pore volume of cell i and
* \f[\frac{F_i \Delta t}{V_{p_i}} < 1\f]
*
* \f[
* F_i = \sum f_{ij}
* \f]
* where \f$ V_{p_i} \f$ is the pore volume of cell i and
*
* with \f(f_{ij}\f) being the CFL-flux over edge \f(ij\f).
* \f[F_i = \sum f_{ij}\f]
*
* with \f$f_{ij}\f$ being the CFL-flux over edge \f$ij\f$.
*
* Template parameters are:
......@@ -65,28 +62,38 @@ private:
typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
public:
//! adds a flux to the cfl-criterion evaluation
/*!
* \param lambdaW wetting phase mobility
* \param lambdaNW non-wetting phase mobility
* \param viscosityW wetting phase viscosity
* \param viscosityNW non-wetting phase viscosity
* \param flux flux to add
* \param intersection intersection corresponding to the flux
* \param phaseIdx index of the phase (wetting, non-wetting)
*/
void addFlux(Scalar& lambdaW, Scalar& lambdaNW, Scalar& viscosityW, Scalar& viscosityNW, Scalar flux, const Intersection& intersection, int phaseIdx)
{}
//! adds a flux to the cfl-criterion evaluation
/*!
* \param lambdaW wetting phase mobility
* \param lambdaNW non-wetting phase mobility
* \param viscosityW wetting phase viscosity
* \param viscosityNW non-wetting phase viscosity
* \param flux flux to add
* \param element element corresponding to the flux
* \param phaseIdx index of the phase (wetting, non-wetting)
*/
void addFlux(Scalar& lambdaW, Scalar& lambdaNW, Scalar& viscosityW, Scalar& viscosityNW, Scalar flux, const Element& element, int phaseIdx)
{}
Scalar getCFLFluxFunction(int phaseIdx = 0)
{
return 0.0;
}
Scalar getCFLFluxIn(int phaseIdx = 0)
{
return 0.0;
}
Scalar getCFLFluxOut(int phaseIdx = 0)
{
return 0.0;
}
//! adds a flux to the cfl-criterion evaluation
/*!
* \param globalPos global position
* \param element element on which the CFL-criterion is evaluated
* \return fluxFunction for the calculation of the CFL-time step (\f$ 1/F_i\f$)
*/
Scalar getCFLFluxFunction(const GlobalPosition& globalPos, const Element& element)
{
return 0.0;
......@@ -95,8 +102,6 @@ public:
/*! @brief Constructs a EvalCflFlux instance */
EvalCflFlux ()
{}
private:
};
}
......
......@@ -455,12 +455,6 @@ public:
return 1e100;
}
void reset()
{
ParentType::reset();
cflFluxFunction_ = 0;
}
EvalCflFluxCoats(Problem& problem) :
ParentType(problem), problem_(problem)
{
......@@ -468,6 +462,12 @@ public:
}
private:
void reset()
{
ParentType::reset();
cflFluxFunction_ = 0;
}
Problem& problem_;//problem data
Scalar cflFluxFunction_;
static const int pressureType_ = GET_PROP_VALUE(TypeTag, PTAG(PressureFormulation));
......
......@@ -34,6 +34,7 @@ namespace Dumux
/*!\ingroup Saturation2p
* @brief Default implementation of cfl-fluxes to evaluate a CFL-Condition
*
* Compares the maximum of inflow and outflow to the element volume weighted by relative permeability and viscosity ratios.
*
* Template parameters are:
......@@ -88,6 +89,16 @@ public:
addFlux(lambdaW, lambdaNW, viscosityW, viscosityNW, flux, phaseIdx);
}
Scalar getCflFluxFunction(const GlobalPosition& globalPos, const Element& element);
EvalCflFluxDefault (Problem& problem)
: problem_(problem)
{
reset();
}
private:
void addFlux(Scalar& lambdaW, Scalar& lambdaNW, Scalar& viscosityW, Scalar& viscosityNW, Scalar flux, int phaseIdx = -1)
{
Scalar krSum = lambdaW * viscosityW + lambdaNW * viscosityNW;
......@@ -174,8 +185,10 @@ public:
return fluxOut_;
}
Scalar getCflFluxFunction(const GlobalPosition& globalPos, const Element& element);
protected:
//! resets the accumulated CFL-fluxes to zero
void reset()
{
fluxWettingOut_ = 0;
......@@ -184,12 +197,6 @@ public:
fluxOut_ = 0;
}
EvalCflFluxDefault (Problem& problem)
: problem_(problem)
{
reset();
}
private:
Problem& problem_;//problem data
Scalar fluxWettingOut_;
......
......@@ -36,19 +36,13 @@ namespace Dumux
* @brief Class for defining the gravity term of a saturation equation
*
* Defines the gravity term of the form
* \f[
* \bar \lambda \boldsymbol{K} \, (\rho_n - \rho_w) \, g \, \text{grad} \, z,
* \f]
*
* \f[\bar \lambda \boldsymbol{K} \, (\rho_n - \rho_w) \, g \, \text{grad} \, z,\f]
*
* where \f$\bar \lambda = \lambda_w f_n = \lambda_n f_w\f$ and \f$\lambda\f$ is a phase mobility and \f$f\f$ a phase fractional flow function,
* \f$ \boldsymbol{K} \f$ is the intrinsic permeability, \f$\rho\f$ is a phase density and \f$g\f$ is the gravity constant.
* Template parameters are:
- GridView a DUNE gridview type
- Scalar type used for scalar quantities
- VC type of a class containing different variables of the model
- Problem class defining the physical problem
*
* @tparam TypeTag The Type Tag
*/
template<class TypeTag>
class GravityPart: public ConvectivePart<TypeTag>
......@@ -86,9 +80,9 @@ public:
//! Returns the gravity term
/*! Returns convective term for current element face
* @param[in] element entity of codim 0
* @param[in] indexInInside face index in reference element
* @param[in] satI saturation of current element
* @param[in] satJ saturation of neighbor element
* @param[in] indexInInside face index in reference element
* \return gravity term of a saturation equation
*/
FieldVector operator() (const Element& element, const int indexInInside, const Scalar satI, const Scalar satJ) const
......
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