From bcdef7cf89a94b1a80be9df415dbd1d6e44ad239 Mon Sep 17 00:00:00 2001 From: Markus Wolff <markus.wolff@twt-gmbh.de> Date: Fri, 7 Jan 2011 16:14:09 +0000 Subject: [PATCH] bugs in boundary condition functions fixed - combination of neumannPress() and neumannSat() to neumann() git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@4975 2fb0f335-1f38-0410-981e-8018bf24f1b0 --- .../msm/buckleyleverett/buckleyleverettproblem.hh | 12 ++++-------- appl/lecture/msm/mcwhorter/mcwhorterproblem.hh | 12 ++++-------- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/appl/lecture/msm/buckleyleverett/buckleyleverettproblem.hh b/appl/lecture/msm/buckleyleverett/buckleyleverettproblem.hh index 42d7dd162e..12c06bff33 100644 --- a/appl/lecture/msm/buckleyleverett/buckleyleverettproblem.hh +++ b/appl/lecture/msm/buckleyleverett/buckleyleverettproblem.hh @@ -259,8 +259,10 @@ public: BoundaryConditions::Flags bctypeSat(const GlobalPosition& globalPos, const Intersection& intersection) const { - if (globalPos[0]> (upperRight_[0] - eps_) || globalPos[0] < eps_) + if (globalPos[0] < eps_) return Dumux::BoundaryConditions::dirichlet; + else if (globalPos[0] > upperRight_[0] - eps_) + return Dumux::BoundaryConditions::outflow; else return Dumux::BoundaryConditions::neumann; } @@ -281,7 +283,7 @@ public: return 0.2; } - std::vector<Scalar> neumannPress(const GlobalPosition& globalPos, const Intersection& intersection) const + std::vector<Scalar> neumann(const GlobalPosition& globalPos, const Intersection& intersection) const { std::vector<Scalar> neumannFlux(2, 0.0); if (globalPos[0]> upperRight_[0] - eps_) @@ -294,12 +296,6 @@ public: return neumannFlux; } - Scalar neumannSat(const GlobalPosition& globalPos, const Intersection& intersection, Scalar factor) const - { - if (globalPos[0] > upperRight_[0] - eps_) - return factor; - return 0; - } Scalar initSat(const GlobalPosition& globalPos, const Element& element) const { if (globalPos[0] < eps_) diff --git a/appl/lecture/msm/mcwhorter/mcwhorterproblem.hh b/appl/lecture/msm/mcwhorter/mcwhorterproblem.hh index 02d421e694..e07bd42b42 100644 --- a/appl/lecture/msm/mcwhorter/mcwhorterproblem.hh +++ b/appl/lecture/msm/mcwhorter/mcwhorterproblem.hh @@ -29,7 +29,7 @@ #include <dumux/decoupled/2p/transport/fv/fvsaturation2p.hh> #include <dumux/decoupled/2p/transport/fv/capillarydiffusion.hh> #include <dumux/decoupled/2p/transport/fv/gravitypart.hh> - +#include<dumux/decoupled/2p/transport/fv/evalcflflux_coats.hh> #include "mcwhorter_spatialparams.hh" #include "mcwhorter_analytic.hh" @@ -111,7 +111,8 @@ public: // Disable gravity SET_BOOL_PROP(McWhorterProblem, EnableGravity, false); -SET_SCALAR_PROP(McWhorterProblem, CFLFactor, 0.1); +SET_TYPE_PROP(McWhorterProblem, EvalCflFluxFunction, Dumux::EvalCflFluxCoats<TypeTag>); +SET_SCALAR_PROP(McWhorterProblem, CFLFactor, 0.8); } //! \ingroup transportProblems @@ -245,16 +246,11 @@ public: return 0.0; } - std::vector<Scalar> neumannPress(const GlobalPosition& globalPos, const Intersection& intersection) const + std::vector<Scalar> neumann(const GlobalPosition& globalPos, const Intersection& intersection) const { return std::vector<Scalar>(2,0.0); } - Scalar neumannSat(const GlobalPosition& globalPos, const Intersection& intersection, Scalar factor) const - { - return 0; - } - Scalar initSat (const GlobalPosition& globalPos, const Element& element) const { return 0.0; -- GitLab