CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Programming & Development

Which procedure to solve Ueqn without momentum predictor.

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree2Likes
  • 2 Post By santiagomarquezd

Reply
 
LinkBack Thread Tools Display Modes
Old   July 2, 2013, 21:04
Default Which procedure to solve Ueqn without momentum predictor.
  #1
Senior Member
 
Dongyue Li
Join Date: Jun 2012
Location: Torino, Italy
Posts: 676
Rep Power: 8
sharonyue is on a distinguished road
Hi,
This is icoFoam's code,:

Code:
fvVectorMatrix UEqn
        (
            fvm::ddt(U)
          + fvm::div(phi, U)
          - fvm::laplacian(nu, U)
        );

        solve(UEqn == -fvc::grad(p));//this term is only executed when the momentumPredictor flag is set to true

        // --- PISO loop

        for (int corr=0; corr<nCorr; corr++)
        {
            volScalarField rAU(1.0/UEqn.A());

            volVectorField HbyA("HbyA", U);
            HbyA = rAU*UEqn.H();
            surfaceScalarField phiHbyA
            (
                "phiHbyA",
                (fvc::interpolate(HbyA) & mesh.Sf())
              + fvc::ddtPhiCorr(rAU, U, phi)
            );

            adjustPhi(phiHbyA, U, p);

            for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
            {
                fvScalarMatrix pEqn
                (
                    fvm::laplacian(rAU, p) == fvc::div(phiHbyA)
                );
My confusion is if I set the momentum predictor is off, which line is to solve U?
sharonyue is offline   Reply With Quote

Old   July 2, 2013, 23:37
Default
  #2
Senior Member
 
santiagomarquezd's Avatar
 
Santiago Marquez Damian
Join Date: Aug 2009
Location: Santa Fe, Santa Fe, Argentina
Posts: 418
Rep Power: 15
santiagomarquezd will become famous soon enough
Hi, in the PISO method, U is predicted and then corrected in the pressure-velocity coupling loop, so that, if you don't predict the velocity, the velocity used to start the coupling loop is a derivative of the velocity in the last time step as is done in interFoam and other solvers.

In the code you've cited the matrix for the momentum equation is assembled so that you have the A and H methods available for the use in the PISO loop, the line:

HbyA = rAU*UEqn.H();

calculates a first approximation for U using the H operator applied to the velocity of the last-timestep or which was predicted when you solved the UEqn (if you did it) and the A operator. If you need it, please check the definition of these operators in chapter 2.7 of my Ph.D. thesis

https://drive.google.com/file/d/0B2l...it?usp=sharing

and Jasak's Ph.D. and other's thesis.

Regards.
Tushar@cfd and sharonyue like this.
__________________
Santiago MÁRQUEZ DAMIÁN, Ph.D.
Post-doctoral Fellow
Research Center for Computational Mechanics (CIMEC) - CONICET/FICH-UNL
T.E.: 54-342-4511594 Ext. 1005
Güemes 3450 - (3000) Santa Fe
Santa Fe - Argentina
http://www.cimec.org.ar

Last edited by wyldckat; April 1, 2014 at 15:01. Reason: rectified link according to request
santiagomarquezd is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Simulation of Axial Fan Flow using A Momentum Source Subdomain Liam CFX 28 July 16, 2013 08:24
Linearized NS euqations: how to solve them?(problem with Matrix operations..) matteoL OpenFOAM Running, Solving & CFD 0 November 18, 2009 07:58
OpenFOAM wonbt solve the momentum U equation sek OpenFOAM Running, Solving & CFD 5 March 6, 2008 17:27
AirPak 2.06 solve problem ABS FLUENT 0 October 4, 2005 17:58
How to solve another continuum and momentum eqn? west_wing FLUENT 0 August 25, 2003 10:00


All times are GMT -4. The time now is 09:46.