CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   FLUENT (https://www.cfd-online.com/Forums/fluent/)
-   -   Continuity Residuals (https://www.cfd-online.com/Forums/fluent/118542-continuity-residuals.html)

shashank312 May 29, 2013 12:53

Continuity Residuals
 
I am solving a two-phase VOF model with phase change (both heat and mass transfer across the interface). Just wondering if the residual values of continuity could be greater than 1? I am observing residuals with values close to 1e+03 but they seem to be decreasing and eventually reaching to the convergence value (set at 1e-04).

blackmask May 29, 2013 19:57

The residual is scaled by the maximum of first a few iterations (default 5). It the residual keep on growing after that then it could be larger than 1. It does not matter if it converges finally.

shashank312 May 30, 2013 15:06

Thanks again, Thomas. I kinda had an idea that it is converging but its taking a lot of iterations each time step. Since my evaporation rates and difference in densities of liquid and vapor are high at the liquid-vapor interface, my initial residuals might be high.

This is not related to this particular forum but do you know how to impose a constant temperature inside one of the phases (in a VOF model) throughout the simulation (every iteration of each time step)? I tried the following but it did not work.

DEFINE_ADJUST(somename,domain)
Thread *lt = pt[liquidphaseindex];

begin_c_loop_all(c,t)
{
if (C_VOF(c,lt) == 0.0)
{
C_T(c,t) = 329;
}
}
end_c_loop_all(c,t)

The temperature inside that phase is decreasing to a much lower value and after a few iterations reaching to zero Kelvin.

blackmask May 30, 2013 19:49

One quick question, why
Code:

begin_c_loop_all(c,t)
instead of
Code:

begin_c_loop_all(c,lt)
Due to physical and numerical diffusion, the
Code:

C_VOF(c,lt)
does not necessary be zero even for a cell taken up by one specific phase. You should use
Code:

( fabs( C_VOF(c, lt) ) < 1.e-3 ) /*you might need to adjust the tolerance 1.e-3*/
instead.

shashank312 May 30, 2013 19:58

Could I loop over threads of a specific phase? I thought it generally gives a segmentation error. Let me try it anyway.

About the tolerance, I agree. The volume fraction may not necessarily be zero or one even though the cell is completely filled with a specific phase. Thanks for the extra tip.

shashank312 May 30, 2013 20:08

BTW, if I use
begin_c_loop_all(c,lt)
instead of
begin_c_loop_all(c,t)
how can I access the mixture threads for temperature macro
C_T(c,t)

shashank312 May 30, 2013 20:10

Could I use C_T(c,mt)? Here "mt" is a new thread different from "t", and specified as:

Thread *mt = THREAD_SUPER_THREAD(lt);


All times are GMT -4. The time now is 22:53.