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

Question about the fvm::SuSp, and fvm::Sp

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

Like Tree1Likes
  • 1 Post By rama13

Reply
 
LinkBack Thread Tools Display Modes
Old   June 6, 2012, 09:37
Talking Question about the fvm::SuSp, and fvm::Sp
  #1
Member
 
Charlie
Join Date: Dec 2010
Location: 415 Kinross Dr. Newark, DE 19711
Posts: 78
Rep Power: 6
cheng1988sjtu is on a distinguished road
Hi Foamers!

When I'm programming with the OpenFOAM, I got confused with the difference between fvm::SuSp, and fvm::Sp, could anybody tell me the difference? As far as I know, fvm::SuSp(a,b) will calculate a*b implicitly or explicitly according to the sign of a, however, when a is positive, is fvm::Sp explicit or implicit? fvm::Sp(a,b) will calculate a*b implicitly anyway.

The second question is related to a phenomenon I found when I'm solving the continuity equation, the exact form should be :

ddt(alpha) + div(phia, alpha) - alpha * div(phia) ==0

This supposed to be solving ddt(alpha) + U_a*grad(alpha) =0, and the implementation I made in the code is : (alpha is a scalar, volume fraction)

fvScalarMatrix alphaEqn
(
fvm::ddt(alpha)
+ fvm::div(phia, alpha, scheme)
- fvm::Sp(fvc::div(phia), alpha, schemer)
);
where phia = fvc::interpolation(Ua) *mesh.Sf()

Interestingly, after this, I got that alpha does not change with time anymore, which means that the equation reduced to ddt(alpha) =0, which is clearly not true if we take the definition of fvm::Sp().

However, my worry is that, in the momentum equation, they are solving :

fvm::ddt(Ua)
+ fvm::div(phia, Ua, "div(phia,Ua)")
- fvm::Sp(fvc::div(phia), Ua)
== ........

I'm wondering if this fvm::Sp( ) makes a difference between the scalar source and vector source. Thanks!!!!

Any idea would be appreciated!!
cheng1988sjtu is offline   Reply With Quote

Old   June 6, 2012, 10:06
Default Sorry for the mistake I made in the continuity equation
  #2
Member
 
Charlie
Join Date: Dec 2010
Location: 415 Kinross Dr. Newark, DE 19711
Posts: 78
Rep Power: 6
cheng1988sjtu is on a distinguished road
Hi

I made a mistake, I think the exact form for continuity equation should be:

ddt(alpha) + div(alpha*phia) =0

not : ddt(alpha) + U_a*grad(alpha) =0

So, forget about the continuity equation I described, however, the question about the difference between fvm::SuSp() and fvm::Sp() is still valid, Thanks!

Zhen
cheng1988sjtu is offline   Reply With Quote

Old   October 10, 2014, 04:52
Default A bit late, but however...
  #3
New Member
 
rama13's Avatar
 
Damiano Natali
Join Date: Mar 2013
Location: Genova, Italy
Posts: 15
Rep Power: 4
rama13 is on a distinguished road
A bit late, but however...this page on the wiki helps a lot in clarifying!
hansh34 likes this.
rama13 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



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