|
[Sponsors] |
[swak4Foam] Possible to sum across different patches? |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
September 16, 2013, 10:35 |
Possible to sum across different patches?
|
#1 |
Senior Member
Anne Gerdes
Join Date: Aug 2010
Location: Hamburg
Posts: 168
Rep Power: 16 |
Dear Foamers,
I hope this question doesn't already exist in the forum. I would like to calculate an average value which should be evaluated over different patches. Is it possible to do this with swak4foam? Furthermore I would like to compute the difference on each patch to this (global) average value. So far I am able to evaluate the expressions seperately, i.e. I am computing the average value on patch1, compute the difference of my variable (temperature) to this value on patch 1, and I am doing the same for the other patches. It would be great if I could compute an expression like this HTML Code:
gAv= \sum_{Outlet j} \sum{i \in Outlet_j} T_i A_i /A(Outlet j) HTML Code:
\sum_{i \in Outlet j} (T_i A_i - gAv) Thank you very much in advance for an answer or sharing your experiences. Kind Regards Anne |
|
September 16, 2013, 16:41 |
|
#2 | |
Assistant Moderator
Bernhard Gschaider
Join Date: Mar 2009
Posts: 4,225
Rep Power: 51 |
Quote:
Code:
variables ( "sumHere{here}=sum(T*area());" "sumThere{there}=sum(T*area());" "areaHere{here}=sum(area());" "areaThere{there}=sum(area());" "totalAverage=(sumHere+sumThere)/(areaHere+areaThere);" );
__________________
Note: I don't use "Friend"-feature on this forum out of principle. Ah. And by the way: I'm not on Facebook either. So don't be offended if I don't accept your invitation/friend request |
||
September 17, 2013, 04:27 |
|
#3 |
Senior Member
Anne Gerdes
Join Date: Aug 2010
Location: Hamburg
Posts: 168
Rep Power: 16 |
Dear Bernhard,
thank you very much for the fast reply! I will try to make this evaluation run with your instructions as soon as possible. Best Regards Anne |
|
July 22, 2016, 11:41 |
|
#4 |
Senior Member
Manu Chakkingal
Join Date: Feb 2016
Location: Delft, Netherlands
Posts: 129
Rep Power: 10 |
Dear Bernard
I have two patches (w_l,w_lb --> both of them of different area and mesh distribution) and I want to find combined nusselt No. for them. When I do the below it crashes: -------------------------------------------------------------- Test234 { type patchExpression; patches ( w_l w_lb ); verbose true; variables ( "Tsat=300;" "lc2D=0.0786;" "sumHere{w_l}=sum(snGrad(T)*area()/(T-Tsat);" /*"dtwl{w_l}=T-Tsat;" "dtwlb{w_lb}=T-Tsat;"*/ "sumThere{w_lb}=sum(snGrad(T)*area()/(T-Tsat));" "areaHere{w_l}=sum(area());" "areaThere{w_lb}=sum(area());" "totalAverage=(sumHere+sumThere)/(areaHere+areaThere);"*/ ); expression "totalAverage"; accumulations ( max min average sum ); ------------------------------------------------------------------ But when I try to debug and remove the division by (T-Tsat) it runs ,but not what I need.. ---------------------------------------------------------------------------- Test234 { type patchExpression; patches ( w_l w_lb ); verbose true; variables ( "Tsat=300;" "lc2D=0.0786;" "sumHere{w_l}=sum(snGrad(T)*area());" /*"dtwl{w_l}=T-Tsat;" "dtwlb{w_lb}=T-Tsat;"*/ "sumThere{w_lb}=sum(snGrad(T)*area());" "areaHere{w_l}=sum(area());" "areaThere{w_lb}=sum(area());" "totalAverage=(sumHere+sumThere)/(areaHere+areaThere);"*/ ); expression "totalAverage"; accumulations ( max min average sum ); ----------------------------------------------------------------- Also it creates 2 output files w_l and w_lb .Is this expected Could you please comment on it.. My scenario: A wall cut into two patches so that I could use one of the as inlet for flow if needed.At present both considered as wall. So I want Nusselt number at the whole wall and I need averaging over both patches.
__________________
Regards Manu |
|
July 26, 2016, 05:39 |
|
#5 |
Senior Member
Anne Gerdes
Join Date: Aug 2010
Location: Hamburg
Posts: 168
Rep Power: 16 |
Hey Manu,
have you tried to just replace Tsat by the constant value, i.e. 300? Maybe the coder has problems to detect the variable Tsat inside the variable definition part..... Best, Anne |
|
July 26, 2016, 08:15 |
|
#6 |
Senior Member
Manu Chakkingal
Join Date: Feb 2016
Location: Delft, Netherlands
Posts: 129
Rep Power: 10 |
Hello Anne
I did try that,but doesnt work.Bye the way when used only for a single patch the same piece of file works.But when I try to find avg. of two patches it fails.
__________________
Regards Manu |
|
July 26, 2016, 08:19 |
|
#7 |
Senior Member
Anne Gerdes
Join Date: Aug 2010
Location: Hamburg
Posts: 168
Rep Power: 16 |
||
July 26, 2016, 08:44 |
|
#8 |
Senior Member
Manu Chakkingal
Join Date: Feb 2016
Location: Delft, Netherlands
Posts: 129
Rep Power: 10 |
Nope:
I tried that the error reported is: Build : 2.4.0-dcea1e13ff76 Exec : DNSbuoyantBoussinesqPimpleFoam -parallel Date : Jul 26 2016 Time : 13:43:04 Host : "n11-40" PID : 24612 Case : /home/manuchakkingal/OpenFOAM/manuchakkingal-2.4.0/run/2d_NC_porous_4_by_4_Ra_10_6 nProcs : 4 Slaves : 3 ( "n11-40.24613" "n11-40.24614" "n11-40.24615" ) Pstream initialized with: floatTransfer : 0 nProcsSimpleSum : 0 commsType : nonBlocking polling iterations : 0 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Allowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time -------------------------------------------------------------------------- MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD with errorcode 1. NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes. You may or may not see output from other processes, depending on exactly when Open MPI kills them. --------------------------------------------------------------------------
__________________
Regards Manu |
|
July 26, 2016, 08:46 |
|
#9 |
Senior Member
Anne Gerdes
Join Date: Aug 2010
Location: Hamburg
Posts: 168
Rep Power: 16 |
Looks as if there might be a division by zero....
|
|
July 26, 2016, 08:47 |
|
#10 |
Senior Member
Manu Chakkingal
Join Date: Feb 2016
Location: Delft, Netherlands
Posts: 129
Rep Power: 10 |
I will check it "for division by zero"..Thanks
__________________
Regards Manu |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
pimpleDyMFoam computation randomly stops | babapeti | OpenFOAM Running, Solving & CFD | 5 | January 24, 2018 06:28 |
Possible bug with stitchMesh and cyclics in OpenFoam | Jack001 | OpenFOAM Pre-Processing | 0 | May 21, 2016 09:00 |
Upgraded from Karmic Koala 9.10 to Lucid Lynx10.04.3 | bookie56 | OpenFOAM Installation | 8 | August 13, 2011 05:03 |
IcoFoam parallel woes | msrinath80 | OpenFOAM Running, Solving & CFD | 9 | July 22, 2007 03:58 |
Could anybody help me see this error and give help | liugx212 | OpenFOAM Running, Solving & CFD | 3 | January 4, 2006 19:07 |