I had a bug elsewhere which is now fixed. Everything seems good now.
Best regards,
Dmitry
On 30.03.2021 18:10, Dmitry Pavlov wrote:
Dear Timo,
Agreed, thank you. Now I have implemented similar behavior in my
PrimaryVariableSwitch. It did not remedy the problem I was having, I
keep looking.
Best regards,
Dmitry
On 30.03.2021 17:44, Timo Koch wrote:
Hi Dmitry,
I think you are misinterpreting the threshold adjustment.
If the threshold is higher if the phase state already switched in the
last iteration. That means in the last iteration both phases where
present and one disappeared.
In order to prevent the Newton from switching back and forth between
states every iteration the threshold is slightly increased in the
iteration after the switch.
This doesn’t alter the result since the Newton will always perform at
least one more iteration after a switch, it just tries to keep the
Newton more stable.
It could be interpreted as some kind of chop / semi-smooth Newton.
Best regards
Timo
On 30. Mar 2021, at 16:36, Dmitry Pavlov <[email protected]>
wrote:
I have to switch primary variables, similarly to what Etienne said,
from secondPhaseOnly to bothPhases. So I implemented my own
PrimaryVariableSwitch.
I see in TwoPTwoCCO2PrimaryVariableSwitch that the switch is not
necessarily done when the condition xnw > xnwMax is met (xnw is mole
fraction, xnwMax is the maximum mole fraction that is allowed in one
phase).
For the switch to happen, xnw should exceed xnwMax, and then (on
next call, I am not sure whether it happens on the same time step or
not), xnw should exceed xnwMax * 1.02. Only then the switch is made.
I do not understand at the moment why such a two-step switch
procedure was needed for.
Best regards,
Dmitry
_______________________________________________
DuMux mailing list
[email protected]
https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
_______________________________________________
DuMux mailing list
[email protected]
https://listserv.uni-stuttgart.de/mailman/listinfo/dumux