I try to remake the icoFoam solver to an solver for stratified almost incompressible liquid and I've an following problem:
I added a new term to momentum equation, which is defined as: - rhoMin+f*(rhoMax-rhoMin)-rho0)/rho0*g
(where rhoMin, rhoMax, rho0 are a constants)
And if I write the momentum equation a intuitive way:
But if we write the equation as follows
And for me it's realy strange, because expression - fvm::laplacian(nu, U)- rhoMin+f*(rhoMax-rhoMin)-rho0)/rho0*g means that we add matrix coefficient to vector.
All of the terms are vectors, i.e. the Laplacian of a vector is a vector and your custom term is also a vector, since you include g. Is this what your confusion is about?
I suppose that you question is about two "identical" modifications to the momentum equation, however, you get two different results on the flow field, correct?
The second implementation is the correct one to choose, simply because you are otherwise solving a pressure equation, which do not know about the additional source term. When you put the source inside fvVectorMatrix, it works correctly with respect to the pressure-velocity coupling.
|All times are GMT -4. The time now is 18:34.|