
[Sponsors] 
August 30, 2010, 16:45 
Adding U*U as a source term

#1 
New Member
Ozgur Kirlangic
Join Date: May 2009
Location: Istanbul
Posts: 16
Rep Power: 10 
Hi Foamers,
I am trying to solve the following equation: dU/dt = grad(p)  0.5*(f/L)*(U*U) here, U(velocity vector), p (pressure), and L is length, (f is dimensionless scalar). In fact, I made an attempt and it seems working for 1D .. However, I can not be very sure about the approach that I use (especially for 2D and 3D problems), and I need some comments from more experienced people. I constructed my equations as follows: Code:
... vector identity(1,1,1); ... volVectorField gradp = fvc::grad(p); ... fvVectorMatrix UEqn ( fvm::ddt(U) + fvm::Sp((U & identity)/2*(1/L+f/D), U) ); ... solve(UEqn == fvc::grad(p)); ... Instead, assuming that only the i component of the vectors will be used while solving Ux, I wrote "U & identity" to obtain the value of the x component of U and put it in to the first parameter place of Sp function. This works for 1D but I cannot be sure about my assumption about the behavior of U & identity expression in 2D and 3D problems.. In short, say that U(1, 2, 3) then will "U & identity" produce 1+2+3=6 in ALL Ux, Uy and Uz solutions OR will it produce 1 in Ux solution, 2 in Uy solution and 3 in Uz solution?? Kind regards, Ozgur 

August 31, 2010, 11:05 

#2 
New Member
Ozgur Kirlangic
Join Date: May 2009
Location: Istanbul
Posts: 16
Rep Power: 10 
Hi,
PS: The above is not a realistic CFD problem, but I am just playing a little with the code so to get some understanding... Anyway, I think I got the answer of my question by constructing a 2D case. And, I saw that unfortunately (in fact fortunately) my assumption was wrong, i.e. use of "U & identity" produced Ux+Uy+Uz. So, in this problem, what is needed is something like scale(U,U) function, which gives the product of corresponding components of vectors U and U; so it will produce another vector (not a matrix which only the main diagonal is useful). I couldn't still make scale(U,U) work. But asked about it under another title. Ozgur 

July 20, 2011, 11:22 

#3 
New Member
Amin
Join Date: Oct 2010
Location: Notre Dame, US
Posts: 6
Rep Power: 8 
scale(U,U) doesn't work and unfortunately it has not been updated in programmers guide. You should use cmptMultiply(U,U) instead.


Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
momentum source term  zwdi  FLUENT  14  June 27, 2017 15:40 
Adding volumetric Source Term  mohanamuraly  OpenFOAM  0  May 17, 2009 22:00 
DxFoam reader update  hjasak  OpenFOAM PostProcessing  69  April 24, 2008 01:24 
DecomposePar links against liblamso0 with OpenMPI  jens_klostermann  OpenFOAM Bugs  11  June 28, 2007 17:51 
Adding a momentum source term  segersson  OpenFOAM Running, Solving & CFD  5  March 3, 2006 00:06 