Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Unsaturated flow with dry initial condition

Please login with a confirmed email address before reporting spam

Hi,

I am working with a Richards' equation model that tries to simulate an imbibition of a very dry soil.
As anyone can see, in literature it's reported that Richards' equation has not good convergence with initial dry condition, near to residual saturation value.
Actually, I have experienced that there is a thresh for the initial pressure head below which the solver doesn't converge.

In literature the problem is solved with the primary variable switching techique (using saturation as primary variable in unsaturated porous media) or controlling the steps of the solver modifying the preconditioner algorithm.
Can anybody give me some tips to emulate these procedures?
How can I customize the solver algorithm?

Thanks a lot!

Tommaso Santagata

2 Replies Last Post 2 mars 2017, 14:34 UTC−5

Please login with a confirmed email address before reporting spam

Posted: 7 years ago 27 févr. 2017, 07:34 UTC−5
Hi,


I have not tried switching. But some quick thoughts...

1. I also came across some years ago such a formulation wherein there is variable switching, but this was from the degree of saturation (or moisture content) to pressure as the primary variable; with pressure being switched on when Sr=1. But not from some initially dry state to some arbitrary unsaturated state.

2. If your problem is all about wetting a sample to saturation, do you need pressure as the primary variable? Just write a PDE for moisture diffusion or use some existing diffusion module, characterized by moisture diffusivity. Or a crude approach, which I don't like is to solve in one study step with moisture diffusion only and after the problem has reached certain sensible degree of saturation, solve another study step wherein you solve Richard's equation with the initial conditions based on study step 1, which will be in terms of degree of saturation, but can be converted to pressure via the moisture retention curve.

3. I think when you have really a dry state, you need to check the value of initial specific moisture capacity. What is it? Can it be fixed to some value that allows convergence.

4. In terms of elements, try linear elements, or in terms of solver, may be loosen up tolerance, there is also a knowledge base on solver settings for highly nonlinear problems, which you can search.

5. A final alternative could be to again use simple diffusion equation, but use density of vapour as the primary variable as in Chapter 7 of www.grs.de/sites/default/files/pdf/GRS-199_0.pdf


Suresh


Hi, I have not tried switching. But some quick thoughts... 1. I also came across some years ago such a formulation wherein there is variable switching, but this was from the degree of saturation (or moisture content) to pressure as the primary variable; with pressure being switched on when Sr=1. But not from some initially dry state to some arbitrary unsaturated state. 2. If your problem is all about wetting a sample to saturation, do you need pressure as the primary variable? Just write a PDE for moisture diffusion or use some existing diffusion module, characterized by moisture diffusivity. Or a crude approach, which I don't like is to solve in one study step with moisture diffusion only and after the problem has reached certain sensible degree of saturation, solve another study step wherein you solve Richard's equation with the initial conditions based on study step 1, which will be in terms of degree of saturation, but can be converted to pressure via the moisture retention curve. 3. I think when you have really a dry state, you need to check the value of initial specific moisture capacity. What is it? Can it be fixed to some value that allows convergence. 4. In terms of elements, try linear elements, or in terms of solver, may be loosen up tolerance, there is also a knowledge base on solver settings for highly nonlinear problems, which you can search. 5. A final alternative could be to again use simple diffusion equation, but use density of vapour as the primary variable as in Chapter 7 of https://www.grs.de/sites/default/files/pdf/GRS-199_0.pdf Suresh

Please login with a confirmed email address before reporting spam

Posted: 7 years ago 2 mars 2017, 14:34 UTC−5
Hi Suresh,

thank you for your accurate answer.
I succeded to perform my simulation implementing a constraint on effective saturation (dl.Se) writing in the box for the saturation expression:
if(dl.Se<=0,0,s_e)
where s_e is the effective saturation wrote in the variables table.
Actually, the problem was the negative value that saturation assumed during iterations: due to this, COMSOL couldn't find a value for relative permeability.

Anyway, let me replay to your comments:


1. I also came across some years ago such a formulation wherein there is variable switching, but this was from the degree of saturation (or moisture content) to pressure as the primary variable; with pressure being switched on when Sr=1. But not from some initially dry state to some arbitrary unsaturated state.

1. Yes, that is exactly what I wanted to say: the primary variable switching technique (from pressure to saturation) is used when the saturation goes below 0.99-1. If you always use pressure as primary variable, more the pressure value (negative) goes down, more the oscillations of the solver occur. That's why I was talking about initially (very) dry condition, far from saturation condition and so difficut to solve with pressure as primary variable.


2. If your problem is all about wetting a sample to saturation, do you need pressure as the primary variable? Just write a PDE for moisture diffusion or use some existing diffusion module, characterized by moisture diffusivity. Or a crude approach, which I don't like is to solve in one study step with moisture diffusion only and after the problem has reached certain sensible degree of saturation, solve another study step wherein you solve Richard's equation with the initial conditions based on study step 1, which will be in terms of degree of saturation, but can be converted to pressure via the moisture retention curve.

2. I would like to use pressure head as primary variable because it's the driving force of the phenomenon (I'm glad that I don't need to switch variable anymore!).


3. I think when you have really a dry state, you need to check the value of initial specific moisture capacity. What is it? Can it be fixed to some value that allows convergence.

3. I'm using a function of liquid compressility:
(liquid compressibility) * (derivate of saturation respect to pressure head).


4. In terms of elements, try linear elements, or in terms of solver, may be loosen up tolerance, there is also a knowledge base on solver settings for highly nonlinear problems, which you can search.

4. I'll try linear elements, while I'm solving with higly non linear settings, too.


5. A final alternative could be to again use simple diffusion equation, but use density of vapour as the primary variable as in Chapter 7 of www.grs.de/sites/default/files/pdf/GRS-199_0.pdf

5. Thank you very much for this reference.

Cheers!

Tommaso
Hi Suresh, thank you for your accurate answer. I succeded to perform my simulation implementing a constraint on effective saturation (dl.Se) writing in the box for the saturation expression: if(dl.Se

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.