From 3f6862bbd7f7198f914cbfb197f3ec51a1f4fd85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halvor=20M=C3=B8ll=20Nilsen?= Date: Thu, 4 Oct 2012 13:13:40 +0200 Subject: [PATCH] Removed the forcing of gravity to be zero. Added option use_gravity. The gravity is set to the standard value --- dune/upscaling/SteadyStateUpscaler.hpp | 1 + dune/upscaling/SteadyStateUpscalerImplicit_impl.hpp | 9 +++++++-- dune/upscaling/SteadyStateUpscaler_impl.hpp | 10 +++++++--- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/dune/upscaling/SteadyStateUpscaler.hpp b/dune/upscaling/SteadyStateUpscaler.hpp index 93d7c0c..d2342bb 100644 --- a/dune/upscaling/SteadyStateUpscaler.hpp +++ b/dune/upscaling/SteadyStateUpscaler.hpp @@ -106,6 +106,7 @@ namespace Dune // ------- Data members ------- std::vector last_saturation_state_; + bool use_gravity_; bool output_vtk_; bool print_inoutflows_; int simulation_steps_; diff --git a/dune/upscaling/SteadyStateUpscalerImplicit_impl.hpp b/dune/upscaling/SteadyStateUpscalerImplicit_impl.hpp index 427141c..955cf40 100644 --- a/dune/upscaling/SteadyStateUpscalerImplicit_impl.hpp +++ b/dune/upscaling/SteadyStateUpscalerImplicit_impl.hpp @@ -53,6 +53,7 @@ namespace Dune template inline SteadyStateUpscalerImplicit::SteadyStateUpscalerImplicit() : Super(), + use_gravity_(false), output_vtk_(false), print_inoutflows_(false), simulation_steps_(10), @@ -73,6 +74,7 @@ namespace Dune inline void SteadyStateUpscalerImplicit::initImpl(const Opm::parameter::ParameterGroup& param) { Super::initImpl(param); + use_gravity_ = param.getDefault("output_vtk", use_gravity_); output_vtk_ = param.getDefault("output_vtk", output_vtk_); print_inoutflows_ = param.getDefault("print_inoutflows", print_inoutflows_); simulation_steps_ = param.getDefault("simulation_steps", simulation_steps_); @@ -147,9 +149,12 @@ namespace Dune Opm::SparseVector injection(num_cells); // Gravity. FieldVector gravity(0.0); - // gravity[2] = -Opm::unit::gravity; + if(use_gravity_){ + gravity[2] = -Opm::unit::gravity; + } + if (gravity.two_norm() > 0.0) { - MESSAGE("Warning: Gravity not yet handled by flow solver."); + MESSAGE("Warning: Gravity is experimental for flow solver."); } // Set up initial saturation profile. diff --git a/dune/upscaling/SteadyStateUpscaler_impl.hpp b/dune/upscaling/SteadyStateUpscaler_impl.hpp index cd5c3f9..62e0060 100644 --- a/dune/upscaling/SteadyStateUpscaler_impl.hpp +++ b/dune/upscaling/SteadyStateUpscaler_impl.hpp @@ -41,7 +41,7 @@ #include #include #include - +#include #include namespace Dune @@ -52,6 +52,7 @@ namespace Dune template inline SteadyStateUpscaler::SteadyStateUpscaler() : Super(), + use_gravity_(false), output_vtk_(false), print_inoutflows_(false), simulation_steps_(10), @@ -69,6 +70,7 @@ namespace Dune inline void SteadyStateUpscaler::initImpl(const Opm::parameter::ParameterGroup& param) { Super::initImpl(param); + use_gravity_ = param.getDefault("use_gravity", use_gravity_); output_vtk_ = param.getDefault("output_vtk", output_vtk_); print_inoutflows_ = param.getDefault("print_inoutflows", print_inoutflows_); simulation_steps_ = param.getDefault("simulation_steps", simulation_steps_); @@ -141,9 +143,11 @@ namespace Dune Opm::SparseVector injection(num_cells); // Gravity. FieldVector gravity(0.0); - // gravity[2] = -Opm::unit::gravity; + if(use_gravity_){ + gravity[2] = -Opm::unit::gravity; + } if (gravity.two_norm() > 0.0) { - MESSAGE("Warning: Gravity not yet handled by flow solver."); + MESSAGE("Warning: Gravity is experimental for flow solver."); } // Set up initial saturation profile.