CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   Main CFD Forum (http://www.cfd-online.com/Forums/main/)
-   -   About finite volume methods for N-S (http://www.cfd-online.com/Forums/main/11702-about-finite-volume-methods-n-s.html)

Lionel BRS June 24, 2006 17:07

About finite volume methods for N-S
 
Hi everybody,

I'm a student in mechanical engineering (at Swiss Federal Institute of Technology), and I had some courses about finite volume methods.

For the moment, I didn't have any application on finite volume method to Navier-Stokes equations. I have a question about numerical implementation.

As N-S has a term:

V*grad(V) where V=(u,v) is the speed vector,

it's non linear equations.

So, if I want to make a numerical compute of N-S equation, I will have to convert

u*du/dx

in

u(k)*[u(k)-u(k-1)]/deltaX

where u(k) is the x-speed at the k-th point of discretisation (the center of a finite volume for example).

But the goal is to convert differential equations to a *linear algebraic* system. And the previous equation is NOT linear, even it is algebraic.

So I wonder how to make it linear. Maybe I could take a Taylor's developement, but It would make a strong error.

How is it done in most commercial solvers ?

Thank you in advance for your help ! I would really like to understand the numerical solving of NS.

Lionel

yousef June 26, 2006 02:04

Re: About finite volume methods for N-S
 
hi I'm yousef I study aerospace at Sharif univer. in Tehran. if you have a term like "f*g" you can linearize it as below: f*g=f(at last itteration)*g+g(last itteration)*f-g*f(both at last itteration). so your non-linear term f*g equals three terms but all of them are linear.


Lionel BRS June 26, 2006 06:08

Re: About finite volume methods for N-S
 
Ok, it means to make a Taylor linearisation around the last iteration point.

Thank you for the answer !

Salva June 27, 2006 06:23

Re: About finite volume methods for N-S
 
In finite volume schemes you tend avoid this terms and express everthing in conservative form I=nabla (u phi ). Once this terms is integrated over the control volume (the cell)and applying Gauss theorem.

I=( u phi)_R-( u phi)_L

where R and L are points in the surface of the cell (in 1-D sense)

Now you interpolate as you wish. You use u from the previous iteration or step and you solve for phi. The result is an algebraic equation. If phi=u you still use the same procedure the convective u is diffrenet form the "u" you are solving. This schemes are iteratives in nature (so repeat, at the end the diference between both "u's" must be very small)


Lionel BRS June 27, 2006 08:34

Re: About finite volume methods for N-S
 
Hi Salva, and thank you very much for this information.

I understand the interest of conservative form, but I dont see how to integrate numerically in 2D or 3D.

Because as you said,

I=( u phi)_R-( u phi)_L

is only applicable for 1-D.

In 2D, can I just take the same formula for integration along X for example, and then multiply by the height of cell (if it's rectangular) ?

Or is there some more accruate methods to integrate on a 2D domain ?

Salva June 29, 2006 06:15

Re: About finite volume methods for N-S
 
Because you are integrating over teh cell doesn't matter if the system is 1D,2D or 3D.

I=sum_k (F_k S_k)

Where F_k is the flux across face K and S_k is the area of the face. (asuming polyhedarl cells, but it doens't matter) Basically you can understand it as

I= Flux going in- flux going out

The advantage of this method is that it is conservative at cell level (no mass loss).

The numerics inteven in the fact that F_k is an averaged flux you hav eto evaluate by interpolation or wahtever you want.

Equation for I is NOT an approximation (no numerics involved), if we knew F_k exactly F_k S_k= int_k F n dS there would be no numericall error in equation I.

All comercial codes worked like this.


Alej July 16, 2006 04:15

Re: About finite volume methods for N-S
 
The book "numerical heat transfer an fluid flow" of Patankar is a good source to see that.


All times are GMT -4. The time now is 21:41.