From fb808fe13762dced13c1e3282b1a809f018de7d2 Mon Sep 17 00:00:00 2001 From: Bernd Flemisch <bernd@iws.uni-stuttgart.de> Date: Fri, 10 Aug 2012 15:15:39 +0000 Subject: [PATCH] box 3p3cni columnxylolproblem: avoid uninitialized warning, enhance readability of initial condition. git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@8838 2fb0f335-1f38-0410-981e-8018bf24f1b0 --- test/boxmodels/3p3cni/columnxylolproblem.hh | 83 ++++++++++++--------- 1 file changed, 49 insertions(+), 34 deletions(-) diff --git a/test/boxmodels/3p3cni/columnxylolproblem.hh b/test/boxmodels/3p3cni/columnxylolproblem.hh index 80047050ba..93913f28f4 100644 --- a/test/boxmodels/3p3cni/columnxylolproblem.hh +++ b/test/boxmodels/3p3cni/columnxylolproblem.hh @@ -1,7 +1,7 @@ // -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- // vi: set et ts=4 sw=4 sts=4: /***************************************************************************** - * Copyright (C) 2011 by Holger Class * + * Copyright (C) 2011 by Holger Class * * Institute for Modelling Hydraulic and Environmental Systems * * University of Stuttgart, Germany * * email: <givenname>.<name>@iws.uni-stuttgart.de * @@ -9,7 +9,7 @@ * 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 vesion. * + * (at your option) any later vesion. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * @@ -178,7 +178,7 @@ public: { const GlobalPosition globalPos = vertex.geometry().center(); - if(globalPos[1] < eps_) + if (globalPos[1] < eps_) values.setAllDirichlet(); else values.setAllNeumann(); @@ -329,37 +329,52 @@ private: values[temperatureIdx] = 296.15; values[pressureIdx] = 1.e5; - - if(y > 1.2-eps_){ - values[switch2Idx] = 0.112; // almost no contaminant component - values[switch1Idx] = 0.005; - } else if(y < 1.2-0.3){ // extended domain - values[switch2Idx] = 1.e-4; // almost no contaminant component - values[switch1Idx] = 0.005; - } else { - values[switch1Idx] = 0.005; - if((y<=1.2-0.001)&&(y>=1.2-0.0148)) values[switch2Idx] = 0+((1.2-y)/0.0148)*0.112; - if((y<1.2-0.0148)&&(y>=1.2-0.0296)) values[switch2Idx] = 0.112+(((1.2-y)-0.0148)/0.0148)*(0.120-0.112); - if((y<1.2-0.0296)&&(y>=1.2-0.0444)) values[switch2Idx] = 0.120+(((1.2-y)-0.0296)/0.0148)*(0.125-0.120); - if((y<1.2-0.0444)&&(y>=1.2-0.0592)) values[switch2Idx] = 0.125+(((1.2-y)-0.0444)/0.0148)*(0.137-0.125); - if((y<1.2-0.0592)&&(y>=1.2-0.0740)) values[switch2Idx] = 0.137+(((1.2-y)-0.0592)/0.0148)*(0.150-0.137); - if((y<1.2-0.0740)&&(y>=1.2-0.0888)) values[switch2Idx] = 0.150+(((1.2-y)-0.0740)/0.0148)*(0.165-0.150); - if((y<1.2-0.0888)&&(y>=1.2-0.1036)) values[switch2Idx] = 0.165+(((1.2-y)-0.0888)/0.0148)*(0.182-0.165); - if((y<1.2-0.1036)&&(y>=1.2-0.1184)) values[switch2Idx] = 0.182+(((1.2-y)-0.1036)/0.0148)*(0.202-0.182); - if((y<1.2-0.1184)&&(y>=1.2-0.1332)) values[switch2Idx] = 0.202+(((1.2-y)-0.1184)/0.0148)*(0.226-0.202); - if((y<1.2-0.1332)&&(y>=1.2-0.1480)) values[switch2Idx] = 0.226+(((1.2-y)-0.1332)/0.0148)*(0.257-0.226); - if((y<1.2-0.1480)&&(y>=1.2-0.1628)) values[switch2Idx] = 0.257+(((1.2-y)-0.1480)/0.0148)*(0.297-0.257); - if((y<1.2-0.1628)&&(y>=1.2-0.1776)) values[switch2Idx] = 0.297+(((1.2-y)-0.1628)/0.0148)*(0.352-0.297); - if((y<1.2-0.1776)&&(y>=1.2-0.1924)) values[switch2Idx] = 0.352+(((1.2-y)-0.1776)/0.0148)*(0.426-0.352); - if((y<1.2-0.1924)&&(y>=1.2-0.2072)) values[switch2Idx] = 0.426+(((1.2-y)-0.1924)/0.0148)*(0.522-0.426); - if((y<1.2-0.2072)&&(y>=1.2-0.2220)) values[switch2Idx] = 0.522+(((1.2-y)-0.2072)/0.0148)*(0.640-0.522); - if((y<1.2-0.2220)&&(y>=1.2-0.2368)) values[switch2Idx] = 0.640+(((1.2-y)-0.2220)/0.0148)*(0.767-0.640); - if((y<1.2-0.2368)&&(y>=1.2-0.2516)) values[switch2Idx] = 0.767+(((1.2-y)-0.2368)/0.0148)*(0.878-0.767); - if((y<1.2-0.2516)&&(y>=1.2-0.2664)) values[switch2Idx] = 0.878+(((1.2-y)-0.2516)/0.0148)*(0.953-0.878); - if((y<1.2-0.2664)&&(y>=1.2-0.2812)) values[switch2Idx] = 0.953+(((1.2-y)-0.2664)/0.0148)*(0.988-0.953); - if((y<1.2-0.2812)&&(y>=1.2-0.3000)) values[switch2Idx] = 0.988; - } - + values[switch1Idx] = 0.005; + + if (y > 1.2 - eps_) + values[switch2Idx] = 0.112; + else if (y > 1.2 - 0.0148) + values[switch2Idx] = 0 + ((1.2 - y)/0.0148)*0.112; + else if (y > 1.2 - 0.0296) + values[switch2Idx] = 0.112 + (((1.2 - y) - 0.0148)/0.0148)*(0.120 - 0.112); + else if (y > 1.2 - 0.0444) + values[switch2Idx] = 0.120 + (((1.2 - y) - 0.0296)/0.0148)*(0.125 - 0.120); + else if (y > 1.2 - 0.0592) + values[switch2Idx] = 0.125 + (((1.2 - y) - 0.0444)/0.0148)*(0.137 - 0.125); + else if (y > 1.2 - 0.0740) + values[switch2Idx] = 0.137 + (((1.2 - y) - 0.0592)/0.0148)*(0.150 - 0.137); + else if (y > 1.2 - 0.0888) + values[switch2Idx] = 0.150 + (((1.2 - y) - 0.0740)/0.0148)*(0.165 - 0.150); + else if (y > 1.2 - 0.1036) + values[switch2Idx] = 0.165 + (((1.2 - y) - 0.0888)/0.0148)*(0.182 - 0.165); + else if (y > 1.2 - 0.1184) + values[switch2Idx] = 0.182 + (((1.2 - y) - 0.1036)/0.0148)*(0.202 - 0.182); + else if (y > 1.2 - 0.1332) + values[switch2Idx] = 0.202 + (((1.2 - y) - 0.1184)/0.0148)*(0.226 - 0.202); + else if (y > 1.2 - 0.1480) + values[switch2Idx] = 0.226 + (((1.2 - y) - 0.1332)/0.0148)*(0.257 - 0.226); + else if (y > 1.2 - 0.1628) + values[switch2Idx] = 0.257 + (((1.2 - y) - 0.1480)/0.0148)*(0.297 - 0.257); + else if (y > 1.2 - 0.1776) + values[switch2Idx] = 0.297 + (((1.2 - y) - 0.1628)/0.0148)*(0.352 - 0.297); + else if (y > 1.2 - 0.1924) + values[switch2Idx] = 0.352 + (((1.2 - y) - 0.1776)/0.0148)*(0.426 - 0.352); + else if (y > 1.2 - 0.2072) + values[switch2Idx] = 0.426 + (((1.2 - y) - 0.1924)/0.0148)*(0.522 - 0.426); + else if (y > 1.2 - 0.2220) + values[switch2Idx] = 0.522 + (((1.2 - y) - 0.2072)/0.0148)*(0.640 - 0.522); + else if (y > 1.2 - 0.2368) + values[switch2Idx] = 0.640 + (((1.2 - y) - 0.2220)/0.0148)*(0.767 - 0.640); + else if (y > 1.2 - 0.2516) + values[switch2Idx] = 0.767 + (((1.2 - y) - 0.2368)/0.0148)*(0.878 - 0.767); + else if (y > 1.2 - 0.2664) + values[switch2Idx] = 0.878 + (((1.2 - y) - 0.2516)/0.0148)*(0.953 - 0.878); + else if (y > 1.2 - 0.2812) + values[switch2Idx] = 0.953 + (((1.2 - y) - 0.2664)/0.0148)*(0.988 - 0.953); + else if (y > 1.2 - 0.3000) + values[switch2Idx] = 0.988; + else + values[switch2Idx] = 1.e-4; } const Scalar eps_; -- GitLab