Hi Lorenzo,

you are using Dumux 2.12, right?

Best wishes
Kilian

On 11/16/2018 02:51 PM, lc wrote:

Hello,

It would like to ask something more about boundary conditions, since I'm experiencing some apparently strange behaviors at the outlet. As you can see from the screenshot attached, I think I assign BCs. not correctly for the problem in consideration.

I'm running with a modified version of tutorial_sequential. I want to impose the following BCs:

1) Dirichlet at inlet: s_water = smax

2) Neuman at inlet: dp/dn = some const value of pressure flux

3) Dirichlet at outlet: p = p_out

4) Neuman or Outflow(?) at outlet: s_water zero flux. Which one should I use? What's difference?

5) Neuman upper and lower: zero flow


According to this, I wrote:


void *boundaryTypesAtPos*(BoundaryTypes &bcTypes, const GlobalPosition& globalPos) const
    {
             if (globalPos[0] < eps_)
            {
                bcTypes.setNeumann(pressEqIdx);
                bcTypes.setDirichlet(satEqIdx);

            }
            else if (globalPos[0] > this->bBoxMax()[0] - eps_)
            {
                bcTypes.setDirichlet(pressEqIdx);

                // bcTypes.setNeumann(satEqIdx);  // I also tried this, but no significant difference
                bcTypes.setOutflow(satEqIdx);
            }
            else
            {
                bcTypes.setAllNeumann();
            }
    }


void *dirichletAtPos*(PrimaryVariables &values, const GlobalPosition& globalPos) const
    {
        values = 0;

        const Scalar smax = 0.7856;
        const Scalar smin = 0.2121;

        if (globalPos[0] < eps_) {

           values[swIdx] = smax;

        } else {

           values[pwIdx] = -30e5;
        }
    }


void*neumannAtPos*(PrimaryVariables &values, const GlobalPosition& globalPos) const
    {
         values = 0;

         if (globalPos[0] > this->bBoxMax()[0] - eps_)
        {
            values[wPhaseIdx] = 0.;

        } else if (globalPos[0] < this->bBoxMin()[0] + eps_) {

             values[wPhaseIdx] = const. value;
       }
    }

Is there something wrong?

Thanks for help,

Best regards,

Lorenzo



_______________________________________________
Dumux mailing list
[email protected]
https://listserv.uni-stuttgart.de/mailman/listinfo/dumux

--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Kilian Weishaupt M.Sc.
Institut für Wasser- und Umweltsystemmodellierung (IWS)
Lehrstuhl für Hydromechanik und Hydrosystemmodellierung
Universität Stuttgart, Pfaffenwaldring 61, 70569 Stuttgart
Email: [email protected]
Telefon: 0049 711 685-60461 ** fax: 0049-711-685-60430
http://www.hydrosys.uni-stuttgart.de
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

_______________________________________________
Dumux mailing list
[email protected]
https://listserv.uni-stuttgart.de/mailman/listinfo/dumux

Reply via email to