
[Sponsors] 
January 22, 2014, 06:43 
Outlet fields as inlet fields, how to.

#1 
New Member
Tommy V
Join Date: Nov 2013
Posts: 28
Rep Power: 3 
Dears,
i`m running a unsteady RANS simulation (kepsilon) with twoLiquidMixingFoam. In order to reduce the computational domain showed in the top of the attached figure1 i need to use the outlet from the bottom left geometry (at latestTime) as inlet condition for the bottom right geometry. I tried two ways (to take fields from the outlet of the bottom left geometry): 1) mapFields (with mapFieldsDict), the result of the mapped field (for U) is show in figure2 2) sample (with sampleDict), the result of the mapped field (for U) is show in figure3 In both cases k, epsilon, U, nut are well mapped: I have set these fields as inlet condition for the bottom left geometry in 0/U 0/k etc etc. BUT seems to be the solver does not "feel" this nonuniform List of inlet condition and solved fields are wherever 0. Suggestions? p.s. If to answer you need some dictionaries just ask! cheers 

January 22, 2014, 11:00 
Making it more interesting...

#2 
New Member
Tommy V
Join Date: Nov 2013
Posts: 28
Rep Power: 3 
Just to make it more interesting ( or more (un)clear...?) here you some more information:
 attached the mapFieldsDict.txt and sampleDict.txt used to map fields at outlet patch  attached the example of 0/U obtained after run mapFields and sample utility (for the last one I have just copy the sample result after value nonuniform List<vector>) 

January 22, 2014, 11:22 
Making it more interesting... part2

#3 
New Member
Tommy V
Join Date: Nov 2013
Posts: 28
Rep Power: 3 
Browsing for similar problems i prefer show you the constant/polymesh/boundary. The mapping/sampling target is the patch int_1B (and the mapping/sampling source is the patch int_1A)
Could be that my problem is just due from the definition of boundary condition on int_1B? So (eg) chancing it from patch to mappedPatch (and similarly for all the 0/fields) 3 ( wall { type wall; nFaces 84456; startFace 3005866; } int_1B { type patch; nFaces 1637; startFace 3090322; } outlet { type patch; nFaces 1637; startFace 3091959; } ) 

February 4, 2014, 11:06 

#4 
Senior Member
Roman Thiele
Join Date: Aug 2009
Location: Stockholm, Sweden
Posts: 360
Rep Power: 12 
Did you solve the problem? And if yes, could you share your procedure step by step?
__________________
~roman 

February 4, 2014, 11:44 

#5 
Senior Member
Alexey Matveichev
Join Date: Aug 2011
Location: Nancy, France
Posts: 1,132
Rep Power: 20 
Did you try something like this:
Code:
inlet { type outletMappedUniformInlet; outletPatchName outlet; phi phi; value uniform 0; } outlet { type zeroGradient; }  Sorry forgot that you need to rotate vectors. My solution is wrong in this case. Last edited by alexeym; February 4, 2014 at 11:47. Reason: mistake 

February 4, 2014, 15:23 

#6 
Senior Member
Roman Thiele
Join Date: Aug 2009
Location: Stockholm, Sweden
Posts: 360
Rep Power: 12 
Hej,
the way I solved something similar applied to your problem: 1. Sample the outlet patch int_1A > with the result that you get a folder postProcessing/surfaces/latestTime/sampleValues/vectorField with contains the velocity values and then under sampleValues, which is just the name of the surface set you have faceCentres, faces and points 2. Next I renamed the faceCentres to points and discarded faces and points completely. 3. Put the new points file into a folder which has the same name as the boundary patch that you would like to use (in your case int_1B) and also create a 0 folder in there. 4. In the 0 folder you put all the sampled fields that you would like to have an inlet condition for (U, nu, p, ...) 5. The files are missing headers. I attached the necessary headers in this post, the points one gets the points.txt header, the vector fields get vector headers and the scalar field get the scalar header. 5. The full folder int_1B , containing the 0 folder and the points file are now copied to constant/boundaryData 6. The inlet boundary condition gets the following type Code:
inlet { type timeVaryingMappedFixedValue; setAverage true; offset (0 0 0); } 7. run the case
__________________
~roman 

February 5, 2014, 10:21 

#7 
New Member
Tommy V
Join Date: Nov 2013
Posts: 28
Rep Power: 3 
Hi Alexey and Roman, thanks for your interest.
The problem (solved for RANS computation)was due to my mistake because i was using the outlet from the left geometry as inlet for the right geometry... independently from the followed procedure (mapFields, sample... or just copying the field from the time folder of interest as i did at the end) the direction of the flow is maintained... OpenFoam was feeling my flow as going out and not coming in So, what i did can be summarized as: 1) On the the whole geometry create an AMI in the location where i want to split the geometry (let`s say left_AMI and right_AMI) 2) From the solved whole geometry copy the fields (from left_AMI patch) that have to be mapped 3) On the new case reduced geometry (in my case the one on the right) paste this fields in the correspondent 0/fields for the right_AMI patch (the new inlet) This will keep the flow direction. @Alexey i will try on one other case your suggestion "outletMappedUniformInlet"... could works nice, bypassing the need to simulate the whole geometry as i did. I will let you know if it works. @Roman "timeVaryingMappedFixedValue" is nice but i prefer to use it just for transient inlet. By the way you show me how to use it BUT... I said "I solve it for RANS computation."... because trying to apply the procedure laid before and more as sample and mapFields, on LES computation... well, look at the new attached picture. I thought it was due to the enumeration of cells, but if it was so I should have had the same problem in the RANS computation. Guys, any idea? __________________________________________________ ______________________ @Alexey I read the edit to your post only after answering. The origin of my problem was exactly the no rotation of the vector field (U). So let me understand, i cannot apply "outletMappedUniformInlet" because does not reverse the vector field? So what is the purpose of "outletMappedUniformInlet"? 

February 5, 2014, 11:46 

#8 
Senior Member
Roman Thiele
Join Date: Aug 2009
Location: Stockholm, Sweden
Posts: 360
Rep Power: 12 
Due to the nature of how the timeVaryingMappedFixedValue works, you can even create the sample surface in matlab, meaning you could also of course turn around the velocity vectors in matlab. When you sample in raw instead of foamFile, you get something that can easily be read into matlab, turn around the vectors and put out the 2 files (U and points) in a OpenFoam compatible version.
__________________
~roman 

Tags 
inlet and outlet, mapfields, sample 
Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
a reconstructPar issue  immortality  OpenFOAM PostProcessing  8  June 16, 2013 11:25 
an odd(at least for me!) reconstructPar error on a field  immortality  OpenFOAM Running, Solving & CFD  3  June 3, 2013 22:36 
Mapping outlet patch to inlet patch of new case  val46  OpenFOAM  0  February 18, 2011 12:22 
Inlet but not outlet  mireis  FLUENT  1  June 10, 2010 10:56 
ATTENTION! Reliability problems in CFX 5.7  Joseph  CFX  14  April 20, 2010 15:45 