Need help with boundary conditions: open to atmosphere
Hi all,
after trying a lot of different setups, it seems that I need some help with the boundary conditions of my problem. I think posting the entire setup here is much too long, so I'm going to attach the whole zipped case. The setup is as follows, I attach a picture of that in the end. The case is two dimensional and I have two regions, which gives two meshes. It can be described as a sqare with an annulus in the middle. The annulus is rotating with constant speed and has a fixed temperature of 473K. In the middle of the annulus, there's nothing. The surrounding square is filled with air as fluid, only the bottom is considered a wall, left, right and top are open to atmosphere. The fluid has initially a temperature of 300K and I want air that is sucked into the domain to have 300K too. There is no specific inlet or outlet. The only kinematic component of the case is rotation of the annulus. I implemented this, by simply setting a rotatingWallVelocity in the fluid/U file. No mesh movement or the like. So far, temperature coupling works very well. Considering velocity and pressure, I've got a lot of different results, depending on the boundary conditions. Some results show nearly stable situations, but have strange distortions every now and then. Some results show even more stable situations, but then the simulation explodes suddenly (20% of the solvers log is taken by the last 0.5% of the time simulated). Some of the boundary conditions I considered to be appropriate give strange results, while others which at first don't seem right, produce better results... I'm stuck with too much different setups that I tried... So here is, what it should look like: (example for a nearly stable solution, but disturbed every now and then) http://img192.imageshack.us/img192/2...outletpres.png Yes, I'm looking for a stable (steady state?) solution, but want to calculate time dependent stuff, so I chose chtMultiRegionFoam as solver. I think, there's nothing wrong with that choice and my problem is only related to boundary conditions... ...to be continued... |
4 Attachment(s)
Okay, just to give an example, here's a summary of the basic setup for the case which I took the screenshot of...
Remarks: My solid is called "GAL" in my case, fluid is named "FLUID_AMB". I left the comments in the case setup files by intention... With respect to the FLUID_AMB/0/U settings of inletOutlet, I want to explain, that this is just an idea and only one of various combinations I tried. Giving well defined velocity BCs seem to produce far more stable results, although I wanted to have zero (or pressure calculated) inlet velocity... Solver: chtMultiRegionFoam System settings Fluid: system/FLUID_AMB/fvSchemes Code:
ddtSchemes Code:
solvers system/GAL/fvSchemes Code:
ddtSchemes Code:
solvers Fluid constant/FLUID_AMB/g Code:
dimensions [0 1 -2 0 0 0 0]; Code:
RASModel laminar; Code:
thermoType hPsiThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>>>>>; Code:
simulationType laminar; 0/FLUID_AMB/epsilon Code:
dimensions [0 2 -3 0 0 0 0]; Code:
dimensions [0 2 -2 0 0 0 0]; Code:
dimensions [1 -1 -2 0 0 0 0]; Code:
dimensions [1 -1 -2 0 0 0 0]; Code:
dimensions [0 0 0 1 0 0 0]; Code:
dimensions [0 1 -1 0 0 0 0]; 0/GAL/cp Code:
dimensions [0 2 -2 -1 0 0 0]; Code:
dimensions [1 1 -3 -1 0 0 0]; Code:
dimensions [1 -3 0 0 0 0 0]; Code:
dimensions [0 0 0 1 0 0 0]; Well, as the upload file size is limited per file, I had to split the archive... You can easily unpack with this single command line: Code:
$ cat example.tar.gz-a* | tar zxvf - The case has a ./Allclean script that should clean up everything and a ./Allrun script to run the case. Note, that the log.blockMesh.* files should not be removed, as the correct settings in constant/*/polyMesh/boundary would have to be set manually afterwards! That's why I included those files (and logfiles) into the package... |
So far for now. For those who want to give it a test run, just try the above case files (BCs might slightly differ, as I tried many combinations).
What I tried so far, are different bc setups mostly for U and p_rgh of the fluid. What should be most appropriate for U at left, right and top boundary, is in my opinion pressureInletOutletVelocity although I'm not sure, whether this would "amplify" a given state of the system and by this lead to instability. The header file for this velocity boundary condition says: "Velocity inlet/outlet boundary condition patches for where the pressure is specified. Zero-gradient is applied for outflow (as defined by the flux) and for inflow the velocity is obtained from the patch-face normal component of the internal-cell value." Sounds nice... but I didn't manage to set it up with a good BC for pressure by now. Thus I think I need to specify p and/or p_rgh. I found this posting on that subject: http://www.cfd-online.com/Forums/ope...tml#post262838 Now... leaving p all calculated and setting left, right and top BC fpr p_rgh to uniformDensityHydrostaticPressure doesn't work... I get very low temperatures and stuff. Maybe setting p to calculated is wrong with that boundary condition? In the above mentioned thread, there's the advice to set pd=0 (in OF 1.5). How to apply this in my case and with respect to OF 1.7? Cheers & Thanks for reading so far! Wolle P.S.: I hope it's not "too much", but posting less might have lead to further information requests.... so I simply decided to post it all together... :o |
All times are GMT -4. The time now is 07:49. |