CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (https://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   Wrong treatment of time derivatives in matrices (Jasak Presentation) (https://www.cfd-online.com/Forums/openfoam-programming-development/183340-wrong-treatment-time-derivatives-matrices-jasak-presentation.html)

Tobi February 1, 2017 15:44

Wrong treatment of time derivatives in matrices (Jasak Presentation)
 
Dear community,

today I got an interesting presentation that was held last year Hrvoje Jasak with the title Pressure-Velocity Coupling in FOAM - Consistent Derivation for Steady and Transient Flow Solvers. Here it is described that the included time term in the matrices:

Code:

fvVectorMatrix UEqn
(
    fvm::ddt(U)
    ...
)

lead to wrong or lets say time-step depended results. Therefore, I came across this problem again (already forgot it). At the moment I did not read everything but I will do that. It seems that the included ddt term makes troubles in both, transient and steady-state solvers and therefore the ddtCorr() function takes care of removing the troubles somehow.

Can someone provide some information about that and does anyone know if this will be re-implemented in a correct and consistent way in future like Jasak suggested? However, there is one question left because based on the fact that the developers introduced the ddtCorr() function, they know that there is a problem (more or less), so why do they patch it instead of fix it. Maybe there is some special meaning of doing it in that way or there is no other possible way (but again, Jasak demonstrated it).

In addition I want ask kindly if this ddtCorr is related to the Rhie Chow Interpolation because something is mentioned here: https://www.cfd-online.com/Forums/op...tml#post516511 However, here it is said that this stuff is consistent while Jasak mentioned in his presentation, that it is not consistent. In addition I will check out the paper that is mentioned in the above mentioned thread.

Thanks in advance.

louisgag February 27, 2017 08:35

Dear Tobias,
I was at the presentation you are referring to and if I am not mistaking Jasak said the fix was already part of extend-4.0. That said, the technical details of the remainder of your question may need his attention as few of the OpenFOAM users grasp the exact and complete nature of the problem Jasak solved.
Best Regards,
-Louis

2538sukham April 6, 2022 06:21

I wish Dr. Jasak have written more on the presentation. I think the code snippets from foam extend 3.2 and 4.1 on this matter is same. I dont know whether the fix has been made because I am getting flux on moving meshes to be inconsistent.

Santiago April 6, 2022 07:54

There is an article on the subject: https://www.sciencedirect.com/scienc...45793018300495

2538sukham April 6, 2022 08:04

Thank you Santiago!! I will go through the paper. I am working on HDPC shot sleeve partilaly filled with piston moving wall layer deletion. This will help me a lot :) :)

2538sukham June 29, 2022 20:35

It has been updated in foam-extend 4.1 .
Code:

        // Time-derivative matrix
        fvVectorMatrix ddtUEqn(fvm::ddt(U));

        // Convection-diffusion matrix
        fvVectorMatrix HUEqn
        (
            fvm::div(phi, U)
          - fvm::laplacian(nu, U)
        );

        if (piso.momentumPredictor())
        {
            solve(ddtUEqn + HUEqn == -fvc::grad(p));
        }

        // Prepare clean 1/a_p without time derivative contribution
        volScalarField rAU = 1.0/HUEqn.A();

But the changes are only in incompressible solvers. Multiphase solver like interFoam reamains the same as earlier codes. Does that mean multiphase transient is not consistent? :confused: :confused:


All times are GMT -4. The time now is 16:44.