interFoam and alphaEqn.H
Hello,
Why in alphaEqn.H is it not added alpha1 = max(min(alpha1, scalar(1)), scalar(0)); i mean this artificial bounded? Thanks |
Hi
MULES solver ensures boundedness, that is why the last 2 inputs are 0 and 1, the bounds of alpha1. This is achieved by the use of limiters. The final result may show values greater than 1 or lower than 0, but with differences of the order of 10^-5, which is negligible. Regards |
Using an artificial bounding of this kinds leads to a non-phase-preserving algorithm due it 'cuts' with having in account the conservative properties of the alpha equation. In other words you will lose or gain mass.
Regards. |
But looking for steady state loss or gain mass is not going to be relevant or yes?
Thanks |
Hhmm, I don't know, but since the solver is unsteady probably it will blow up before reach the steady state due mass preservation problems.
Regards. |
Hi guys,
I guess this is the most relevant thread I found to post the following question and hope anyone of you could help me out. The alphaEqn.H file has evolved from 2.2 version to 2.3 version. I can understand the 2.2 version of the code but I cant follow most part of the 2.3 version of alphaEqn. Can you help me out? What does the following code indicate? fvScalarMatrix alpha1Eqn ( fv::EulerDdtScheme<scalar>(mesh).fvmDdt(alpha1) + fv::gaussConvectionScheme<scalar> ( mesh, phi, upwind<scalar>(mesh, phi) ).fvmDiv(phi, alpha1) ); The later part is from the older version for advection of alpha with velocity and relative velocity terms. I tried to use the older version into this but alpha is no more bounded between 0 and 1. Thanks; Saideep |
Hi Saideep, the new version of alphaEqn is based on operator splitting techniques to obtain a semi-implicit solver. The code you posted corresponds to the first-order bounded predictor of alpha which is lately corrected by a high-order corrector:
http://www.openfoam.org/version2.3.0/multiphase.php Regards. |
All times are GMT -4. The time now is 01:19. |