CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   upwinding of "curl"-type convection (

Maxim Olshanskii October 19, 1998 10:19

upwinding of "curl"-type convection

Thank you for any advice and/or reference on upwinding of convection written in "curl" form: \curl u \times u, where \times stands for vector product.

Generaly, what is the essential reading and references on the topic of "upwinding"?


John C. Chien October 23, 1998 13:16

Re: upwinding of "curl"-type convection
In the finite-difference approximation of the first order derivative term, such as u * ( df/dx ), there are several ways to approximate it. The central difference form is: u(i,j,k) * ( (f(i+1,j,k)-f(i-1,j,k))/ (x(i+1,j,k)-x(i-1,j,k)) ). The other form is: IF ( u(i,j,k) is Positive ) , u(i,j,k) * ( (f(i,j,k)-f(i-1,j,k))/ (x(i,j,k)-x(i-1,j,k)) ) ,AND IF ( u(i,j,k) is NEGATIVE ) , u(i,j,k) * ( (f(i+1,j,k)-f(i,j,k))/ (x(i+1,j,k)-x(i,j,k)) ). This is the so-called 1st order up-wind one-sided difference form. It is less accurate than the central difference form, but it is more stable when used with the second-order diffusion term in the Navier-Stokes equations. In general, the variable f can be anything, and u does not have to be the physical velocity at all.

Adrin Gharakhani October 23, 1998 16:05

Re: upwinding of "curl"-type convection
>Thank you for any advice and/or reference on upwinding of >convection written in "curl" form: \curl u
>\times u, where \times stands for vector product.

Basically, this term is equal to vorticity^velocity, where ^ implies vector product as you mention above. However, this term is not just convection even though it does show up subsequent to taking the curl of the "velocity convection" term! If you expand it out, you'll see that it is equal to the convection of vorticity+stretch of vorticity+ (2 other terms having to do with the divergence of vorticity and velocity). Then the question becomes whether you wish to obtain the convection of vorticity ( in the upwind form, which also would require you to obtain the stretch term ( in a consitent manner.

Or alternatively, you can just difference vorticity^velocity but you cannot call this a convection term anymore (it includes at least 2 physically different processes in it!)

For a consistent finite differencing of the above term, check a paper by Weinan E (the last name is just that one letter E) in Journal of Computational Physics in the 90's (I don't remember the exact date or title). As keyword for your search you can use velicity (as in velocity-vorticity), or vorticity (and perhaps impulse and magnetization)

Hope it helps

Adrin Gharakhani

Adrin Gharakhani October 23, 1998 20:34

Correction: upwinding of "curl"...

I was not clear (and was thus incorrect) in my terminology in my previous message.

I meant to say curl(vorticity^velocity) in my explanation and not just vorticity^velocity! The former results from taking the curl of the convection term. The latter.... what does it mean?

Adrin Gharakhani

Maxim Olshanskii October 24, 1998 03:57

Re: Correction: upwinding of "curl"...
Thank you very much for the comments. I feel that I was not qiute paticular in my question. You talk about the terms after application of \curl to the momentum equations. Indeed these results in the term like \curl(vorticity * velocity). However, I am thinking about another trick. That is consider convection u\dot\nabla u as a sum: (\curl u) * u + \nabla (u^2)/2.

The seccond term goes to pressure and the first one is what remains from convection. From some reasons this another form of convection can be more convinient. But my first attempts of simply discretizing \curl by second oder finite difference in upwind derection do not give satisfactory results...

Thank you for the reference, I'll try to find.

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