# jumpTable: Can someone explain how to use it?

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

 April 12, 2013, 20:15 jumpTable: Can someone explain how to use it? #1 Senior Member   Pei-Ying Hsieh Join Date: Mar 2009 Posts: 316 Rep Power: 11 Dear OpenFOAMers, Could someone explain how to use jumpTable in cyclic fan BC? In the TJunctionFan example, I saw: p { type fan; patchType cyclic; jump uniform 0; value uniform 0; jumpTable polynomial 1((100 0)); } ---------------- Does the "polynominal 1((100 0));" mean pressure jump of 100 Pa with 0 velocity? What if I have a 5th order polynominal, like Del_P = a0 + a1*U + a2*U^2 + a3*U^3 + a4*U^4 + a5*U^5. How to specify this? I tried 5((a0 a1 a2 a3 a4 a5)); but, got an error. Thanks! Pei-Ying

 April 13, 2013, 00:23 #2 Senior Member   Fumiya Nozaki Join Date: Jun 2010 Location: Yokohama, Japan Posts: 217 Blog Entries: 1 Rep Power: 11 Reading the source code(fanFvPatchFields.C), the meaning of "f" dictionary changed from v2.2.0: To set "Del_P = a0 + a1*U + a2*U^2 + a3*U^3 + a4*U^4 + a5*U^5" Older versions than 2.2.0 Code: ```p {type fan; patchType cyclic; f 6(a0 a1 a2 a3 a4 a5); value uniform 0;}``` Version 2.2.0 and newer Code: ```p {type fan; patchType cyclic; jump uniform 0; value uniform 0; jumpTable polynomial 6( (Del_p(U0) U0) (Del_p(U1) U1) (Del_p(U2) U2) (Del_p(U3) U3) (Del_p(U4) U4) (Del_p(U5) U5) );}``` I think to use the older version settings gives unexpected results. Please correct me if I'm wrong. Hope this helps, Fumiya Tobi likes this.

 April 13, 2013, 07:27 #3 Senior Member   Pei-Ying Hsieh Join Date: Mar 2009 Posts: 316 Rep Power: 11 Hi, Fumiya, You are a great help! I looked at the source code in fanFvPatch. Could not figure out how to use the polynominal method. So, I ended up using reading the csv method to read in the curve. And yes, in the source code, it looks like it tries to be backward compatible with OF-2.1.x, but, when I tried it "f 6(a0 a1 a2 a3 a4 a5)", the case diverged in 4 steps. Maybe there is a bug. Pei-Ying

 August 13, 2015, 06:42 HI Hsieh #4 Member   Manjunath Reddy Join Date: Jun 2013 Posts: 47 Rep Power: 6 What is backward compatible?

 August 13, 2015, 07:49 #5 Super Moderator   Bruno Santos Join Date: Mar 2009 Location: Lisbon, Portugal Posts: 10,031 Blog Entries: 39 Rep Power: 110 Greetings to all! @manju819: Pei-Ying was referring to this piece of code: https://github.com/OpenFOAM/OpenFOAM...chFields.C#L81 Essentially, this boundary condition tries to construct the polynomial that is provided with the "f" option, but reinterpreted into the new data structure. This is the backward compatibility feature. This code doesn't seem to have changed in 2.3.x... I gotta test if this part of the code has a bug or not. edit: I could not find any bugs in the compatibility code. Best regards, Bruno __________________ OpenFOAM: FAQ | Getting started Forum: How to get help, to post code/output and forum guide What am I doing/planning: blog/wiki Read this before sending me PM Last edited by wyldckat; August 13, 2015 at 09:45. Reason: see "edit:"

 August 17, 2015, 05:42 Hi Bruno #6 Member   Manjunath Reddy Join Date: Jun 2013 Posts: 47 Rep Power: 6 Thank you for your reply. I have one more doubt, how does the pressure jump calculated on cyclic patch. For example if I put the pressure jump boundary on cyclic patch as this Fan1_half0 { type fan; patchType cyclic; jumpTable table ((3.73 524.56)(5.24 429.33)(6.59 244.48)); value uniform 0; } How will it caluclate the jump values on Fan1_half0 and Fan1_half1? Thanks in advance.

 August 17, 2015, 08:30 #7 Super Moderator   Bruno Santos Join Date: Mar 2009 Location: Lisbon, Portugal Posts: 10,031 Blog Entries: 39 Rep Power: 110 Quick answer: This is the interpolation table you defined: Code: ``` U p 3.73 524.56 5.24 429.33 6.59 244.48``` The pressure jump is calculated in function of U, using linear interpolation of the 2 closest values: Code: `dp = table(U);` The pressure difference is imposed directly on the matrices before solving, therefore always ensuring that the pressure jump is imposed between both sides. This is done here: https://github.com/OpenFOAM/OpenFOAM...chField.C#L164 What I don't know is if the pressure jump is imposed half to each side or if it's the same on both sides. My guess is that the values are automatically balanced between the two sides, given it's a pair of cyclic patches, therefore the weights on them (the "coeffs" array) will balance it out, i.e. roughly making it half of the value on each side.

 Thread Tools Display Modes Linear Mode

 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 OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post gandesk OpenFOAM 1 December 7, 2010 03:15 smillion OpenFOAM 10 September 7, 2010 23:14 jaswi OpenFOAM 0 September 13, 2007 08:37 askquestion Main CFD Forum 1 March 9, 2004 14:36 madasu FLUENT 19 October 17, 2001 21:14

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