CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM

Propeller case in AMI tutorial

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

Like Tree6Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   July 19, 2013, 07:23
Default
  #41
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 293
Rep Power: 7
Artur is on a distinguished road
my run with rotatingMovingWall has now fully converged in terms of forces. I ran it with exact same settings as the previous one for advance coefficient of J = 0.64 (1.601ms-1 advance velocity at ~10 rps). I have experienced pretty much the same rate of convergence and the results accuracy was in of the same order in terms of forces and moments (+/- 2% c.f. the experimental results).

Attached pictures show, in order of appearance:
1. the old case with movingWall BC (already shown a few posts above but included here for consistency)
2. the new case with rotatingMovingWall BC showing Ux velocity using the same scale as the one used for pic 1 -> note the without comparison better representation of the no-slip condition
3. the new case with rotatingMovingWall BC -> note the 5-fold difference in magnitudes of the extreme velocity values and the no-slip condition spread across the blade
Attached Images
File Type: jpg PPTC_Ux_mowingWallBc.jpg (19.4 KB, 94 views)
File Type: jpg PPTC_Ux_rotatingMowingWallBc_largeVarRange.jpg (16.7 KB, 81 views)
File Type: jpg PPTC_Ux_rotatingMowingWallBc.jpg (18.8 KB, 78 views)
kiddmax and snowflying like this.
Artur is offline   Reply With Quote

Old   July 19, 2013, 07:29
Default
  #42
Member
 
Join Date: Apr 2013
Posts: 32
Rep Power: 5
simt is on a distinguished road
Thanks alot for sharing your conclusion, great!
simt is offline   Reply With Quote

Old   July 19, 2013, 07:33
Default
  #43
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 293
Rep Power: 7
Artur is on a distinguished road
Just as an add-on, as I feel it is relevant: I am running at maxCo of 2.0 or 2.5, depending on how desperate I am on computational time, which usually yields time steps of 1.5e-4 - 2.0e-4 s for this case. That means the blade moves roughly 0.8 deg/time step.
Artur is offline   Reply With Quote

Old   July 19, 2013, 15:41
Default
  #44
Member
 
reza1980's Avatar
 
reza
Join Date: Jan 2013
Location: Goteborg-Sweden
Posts: 80
Rep Power: 6
reza1980 is on a distinguished road
Artur,
I tried to handle my case with the method suggested in tut.
I used my mesh and just applied the createAMIFaces.topoSetDict to create the AMI cellzones instead of using
splitMeshRegions -makeCellZones -overwrite

but I am wondering why innerCylinderSmallFace,and the other created Dic in set folder are empty.

Please, Look at the attachment that is made relevant my AMI cylinder.
Best
Reza
Attached Files
File Type: gz createAMIFaces.topoSetDict.tar.gz (680 Bytes, 40 views)
reza1980 is offline   Reply With Quote

Old   July 22, 2013, 03:43
Default
  #45
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 293
Rep Power: 7
Artur is on a distinguished road
hmm... I don't see anything standing out that could be wrong with this dict. Have you cleared all the folders properly so that there are not sets present before running topoSet?
Artur is offline   Reply With Quote

Old   August 14, 2013, 10:15
Default
  #46
Member
 
Join Date: Aug 2013
Posts: 50
Rep Power: 5
nash is on a distinguished road
during the sHM there are faceZone as well as cellZone generated for innerCylinderSmall.

can i use this :

  • cellZone for the dynamicMeshDict?
  • faceZone createBafflesDict? which by doing this i can skip the createAMIFaces.topoSetDict.
incase of radial fan, the flow is upwards into fan and then the flow is radial.

i cant figure it out how to set the normalToSurface in createInletOutletSets.topoSetDict since the flow is differ from propeller.


Code:
 {
        name    outletFaces;
        type    faceSet;
        action  subset;
        source  normalToFace;
        sourceInfo
        {
            normal  (0 -1 0);   // Vector
            cos     0.3;        // Tolerance (max cos of angle)
        }
    }

    {
        name    inletFaces;
        type    faceSet;
        action  subset;
        source  normalToFace;
        sourceInfo
        {
            normal  (0 1 0);    // Vector
            cos     0.3;        // Tolerance (max cos of angle)
        }
    }
lets say if i already have the inlet and outlet generated from the sHM from STL , can i skip the part of creating the inlet and outlet patch?

Code:
Adding patches for surface regions
 ----------------------------------  
Patch    Type    Region 
-----    ----    ------ 
fan:  
5    wall    fan_rotor-layersides 
6    wall    fan_rotor-mrf-02 
7    wall    fan_casing-schwarz-03 
8    wall    fan_rotor-mrf-layer-02 
9    wall    fan_rotor-mrf-01 
10    wall    fan_casing 
11    wall    fan_plane 
12    wall    fan_inlet 
13    wall    fan_outlet 
14    wall    fan_channel 
15    wall    fan_casing-outter 
16    wall    fan_casing-mrf 
17    wall   fan_casing-02 
18    wall   fan_rotor--mrf-layer-01  

mrfDomain:  
19    wall    mrfDomain_frameboarder-interior 
20    wall    mrfDomain_frameboarder-interior_slave
but i'm not sure wether it is patch or just a region with the name fan_outlet and fan_inlet.

thank you in advance
nash is offline   Reply With Quote

Old   August 14, 2013, 11:41
Default
  #47
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 293
Rep Power: 7
Artur is on a distinguished road
1. I think you can use the cellzones created by sHM, I recall that I did it some time ago and it worked but there was something about it that made me stick to the approach proposed by the tutorial (I'm really sorry but I can't recall what it was). So my answer would be: you can do it but be careful.

2. I'm not sure what you mean by:
Quote:
i cant figure it out how to set the normalToSurface in createInletOutletSets.topoSetDict since the flow is differ from propeller.
The normal vector is just a surface normal of the faces being selected. For instance, if the flow is parallel to x axis in the -ve direction and I want to select the inlet faces then I use:
Code:
normal  (1 0 0);
The cosine of angle is the tolerance of how closely the faces need to conform to the normal vector criterion in order to be selected. For a reasonably orthogonal mesh 0.3 or even less seems to work O.K. for me.

3. If you create your patches otherwise then I don't see why you shouldn't use them as they are. Be careful though, sometimes it is necessary to call
Code:
createPatch -overwrite
in order to remove empty patches from the boundary file (whether you do need it or not depends on how you go about things).

4. I'm not sure what you mean by the last question. The best way to check what patches you have is to a) check your boundary file b) misspell one patch name deliberately and try to run your case: all available patches should be printed on the screen together with the error message.
Artur is offline   Reply With Quote

Old   August 14, 2013, 12:00
Default
  #48
Member
 
Join Date: Aug 2013
Posts: 50
Rep Power: 5
nash is on a distinguished road
in the boundary i can see the listed patches by log.sHM, so they are patch and type wall. am i correct?

Last edited by nash; August 15, 2013 at 03:32.
nash is offline   Reply With Quote

Old   August 23, 2013, 19:01
Default
  #49
Member
 
Join Date: Aug 2013
Posts: 50
Rep Power: 5
nash is on a distinguished road
Hi everyone,

Just a quick view of what i have done so far..
after reading this thread and also the thread here
http://www.cfd-online.com/Forums/ope...ing-ami-8.html

i tried to prepare case for simulation of centrifugal fan.

i'm using sHM from my simpleFoam MRF case. (2 stl file: for the geometry (fan and casing or rotor and stator; and AMI which is cylinder covering the rotor part)

to create AMI:
1) i removed the faceZone and cellZone created by sHM (patches like inlet outlet etc. generated within sHM)
2) followed the step using topoSet dict except for the createPatch for inlet outlet since i already have the patches. Instead of using cylinderToCell ( i dont know the p1 p2 and radii), i used surfaceToCell from the stl file.
3) createBaffles using the faceZone for AMI and cellZone for dynamicMesh.

after that used paraView to have a look at my AMI.

1) should the AMI looks the same as what in STL file?? because i got a cylinder but the bottom side is open ( i will include the image next week since now i dont have access to the file)

i hope someone can help me
thank you in advance
nash is offline   Reply With Quote

Old   August 24, 2013, 10:55
Default rotatingWallVelocity or movingWallVelocity
  #50
Senior Member
 
stephane sanchi
Join Date: Mar 2009
Posts: 306
Rep Power: 11
openfoam_user is on a distinguished road
Hi,

in the following tutorial

~/OpenFOAM/OpenFOAM-2.2.x/tutorials/multiphase/interDyMFoam/ras/mixerVesselAMI

the rotatingWallVelocity BC is used.

Stephane.
openfoam_user is offline   Reply With Quote

Old   October 1, 2013, 10:53
Default cavitation steps
  #51
New Member
 
samir
Join Date: Sep 2011
Location: Algeria
Posts: 11
Rep Power: 7
samir_cfd is on a distinguished road
Send a message via MSN to samir_cfd Send a message via Skype™ to samir_cfd
Hello !!

Please I am simulating cavitation of full 5 bladed marine propeller using Ansys Fluent, with sliding mesh

I am new in simulating multiphase flow, and i need if it is possible steps to simulate cavitation using Fluent

Best regards

Samir
samir_cfd is offline   Reply With Quote

Old   October 1, 2013, 11:47
Default
  #52
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 293
Rep Power: 7
Artur is on a distinguished road
Hi,

You will note that this thread is a part of the OpenFOAM users' forum. I think you will get much more feedback if you post your question in the Fluent section.

Regards,

A
Artur is offline   Reply With Quote

Old   October 1, 2013, 12:06
Default
  #53
New Member
 
samir
Join Date: Sep 2011
Location: Algeria
Posts: 11
Rep Power: 7
samir_cfd is on a distinguished road
Send a message via MSN to samir_cfd Send a message via Skype™ to samir_cfd
Thanks Artur

I found just one commenter who work with fluent for marine propeller
samir_cfd is offline   Reply With Quote

Old   December 21, 2016, 02:49
Default
  #54
New Member
 
Aldias Bahatmaka,ST
Join Date: Aug 2015
Location: Busan, South Korea
Posts: 26
Rep Power: 3
bmaldi is on a distinguished road
Quote:
Originally Posted by reza1980 View Post
Hi Artur,
I would thank you for your reply.One odd thing in the tutorial is not satisfying no-slip condition on the propeller that I can see same on my case as well.
What motivated me to check out the results of the tutorial is my project. It is related to a tanker propeller model meshed by pointwise that should be compared with the experimental values for open-water and self-propelled case.
The techniques are AMI and MRF ,To approach AMI I did as below:
  • create two parts as rotor(inner cylinder that is rotating)and stator (not rotating outer part) .
  • merge two parts through implement mergeMeshes stator rotor.
  • rename the type of boundary AMI from patch to cyclic AMI and add the neighborhood and tolerance and update 0 folder .
  • use topoSet or splitMeshRegions -makeCellZones -overwrite to create the cellZones and update the dynamicmeshDic.
  • Run pimpleDyMFoam as parallel on network(claster).
For MRF is almost same except the applying stitches ,stitchMesh,instead of split and Remove manually the empty boundaries (0 faces) from constant/boundaries file.
My case includes 3.5 mil cells and the results approaches converged for AMI and MRF. But what I suffers me is to have backflow for two cases on the tip of blades and a noticeable gap between the thrust force
obtained from experimental and numerical values ,around 40%,in AMI.
Furthermore,MRF shows close results to the experiment ,just 12.3% difference,would be agreeable.
Hello Mr.Reza,
can i ask something to you? how if we want to simulate for ducted propeller case, propeller that has nozzle and what should we do with the boundaries? I assumed that the nozzle is not rotating, propeller only for rotating, but when i did in AMI structure in openFoam, i had some problems, the run process stopped, and i don't know the exactly error. but when i did in MRF case, there was no problem, could you help me for the problem?
bmaldi is offline   Reply With Quote

Old   January 22, 2017, 11:35
Default merge mesh in openfoam
  #55
New Member
 
Javid
Join Date: Dec 2016
Posts: 2
Rep Power: 0
javid629 is on a distinguished road
hello,
i am trying to simulate flow around propeller in openfoam. for this purpose i create two meshes in pointwise and exported mesh to openfoam, one for rotating domain and second for stationary, now i want to merge two meshes in open foam, how can i do this?
javid629 is offline   Reply With Quote

Old   January 23, 2017, 06:05
Default
  #56
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 293
Rep Power: 7
Artur is on a distinguished road
You'll need to export them to separate test cases as "rotor" and "stator" or something along those lines and then use the "mergeMeshes" tool:
https://openfoamwiki.net/index.php/MergeMeshes
http://www.sourceflux.de/blog/genera...snappyhexmesh/
Artur is offline   Reply With Quote

Old   February 16, 2017, 08:24
Default problem with AMI building
  #57
New Member
 
Andrea Mala
Join Date: Nov 2016
Posts: 7
Rep Power: 2
andrea.mala is on a distinguished road
Hi all,
it is the first time that I write, but I follow you a few months. Thanks to your previous post, I was able to adapt the propeller tutorial to my case of a fan of an industrial oven (I used SHM propellerTip.obj replacing the file with a propeller STL files and varying parameters such as epsilon, k , nu, Maxco). The simulation converges and everything seems to be good.
At this point, I tried to replicate the same case using an external meshing (Hexpress of Numeca) instead of SHM.
First street, I built two meshes (external hollow cylinder and a small cylinder inside) and I used mergeMeshes and createPatch following your advice (I've also tried it with createBaffles) to create AMI1 and AMI2. When I start the simulations, however, I have weight problems (I think because the two interfaces have a different number of faces and align bad. Unfortunately I was not able to overcome this problem by using directly Hexpress (any advice on this point is appreciated).
Second road, I built a mesh with inside the fan and I used topoSet and createBaffles (as done in the propeller tutorial editing these files) to create AMI1 and AMI2. In this case, I get interfaces with the same number of faces that are well aligned in terms of weight. The simulation, however, diverges immediately. Opening the geometry with paraview, known that AMI1 and AMI2 not have a cylindrical contour, but are constituted by a "step" cells (which is not the case using SHM). This leads me to think it is due to the fact of not having a "guide" cylinder inside the mesh (as innerCylinderSmall for SHM).
So, third street, I built a single mesh with the small cylinder inside and the fan. But if at this point I try to create AMI1 and AMI2 with topoSet (as in the propeller tutorial, building a cylinder with cellToCylinder the same size as the one inside the mesh) the faceZone (amiCylinderFace) is empty.

I kindly ask you tips or ideas on how to proceed, because these roads do not seem to work. Thank you.
Andrea
andrea.mala is offline   Reply With Quote

Old   February 16, 2017, 12:38
Default
  #58
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 293
Rep Power: 7
Artur is on a distinguished road
Hi,

Glad to hear you found some of my posts useful. Definitely the 3rd approach you're describing (with including a cylinder in the mesh and then splitting it the same way you'd do with snappyHexMesh) is the correct way to do things.

There are a number of reasons why topoSet wouldn't work, difficult to say exactly without looking at the mesh. Do the cells inside the cylinder get added to the cell set at all? Have you tried running renumberMesh after exporting? (I've had some issues with Pointwise OF exports, not sure about Hexpress since I never used it). Can you post some screenshots of the grid (I realise the geometry is probably sensitive but maybe you can show the mesh without the actual fan somehow).

Sorry I couldn't be of more help at this stage.

A
Artur is offline   Reply With Quote

Old   February 20, 2017, 08:19
Default
  #59
New Member
 
Andrea Mala
Join Date: Nov 2016
Posts: 7
Rep Power: 2
andrea.mala is on a distinguished road
Hello Artur,
thanks for your immediate response and sorry if I could not answer you before but I had to finish another job.
Unfortunately I felt like on your advice with renumberMesh, but the problem is not solved. Indeed, the geometry of the fan is sensitive, so I made a change to the model by inserting a small hollow cylinder in place of the hollow fan, but the concept and the problem of the two cylinders should always be the same. I am attaching the mesh screen shoots, the log.topoSet file and topoSetDict file.
If you need more and want to check it out when you have time I can send you the complete case.
Also I write on NUMECA Hexpress forum to try to have other information about it.

Thanks for your help.
Andrea
Attached Images
File Type: jpg Mesh screenshot1.jpg (101.7 KB, 9 views)
File Type: jpg Mesh screenshot2.jpg (190.2 KB, 8 views)
File Type: jpg Mesh screenshot3.jpg (125.9 KB, 7 views)
Attached Files
File Type: txt log.topoSet.txt (2.4 KB, 2 views)
File Type: txt topoSetDict.txt (3.3 KB, 3 views)
andrea.mala is offline   Reply With Quote

Old   February 20, 2017, 09:54
Default
  #60
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 293
Rep Power: 7
Artur is on a distinguished road
Hi,

Hmm, the mesh seems OK at the first glance. One thing which I've found to help with the weightings going to zero sometimes is to coarsen the grid at the AMI instead of making it finer (it seems counter-intuitive but somehow manges to help with snappy, not sure with hexpress).

Another thing I noticed is that your amiCylinderFaceZone has zero size:
Code:
faceZoneSet amiCylinder now size 0
Doesn't that lead to problems with patch creation after topoSet?

Hope the hexpress support comes through.

All the best

A
Artur is offline   Reply With Quote

Reply

Thread Tools
Display Modes

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 Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
MRF and employing on a propeller case reza1980 OpenFOAM 9 June 12, 2013 09:27
A questionable Tutorial test case immortality OpenFOAM Running, Solving & CFD 0 December 5, 2012 09:40
propeller tutorial openfoam_user OpenFOAM Running, Solving & CFD 0 February 8, 2012 05:02
tutorial copying troubles / new case Gabbee90 OpenFOAM Running, Solving & CFD 0 June 3, 2011 21:50
FoamX refuses to open an interFoam tutorial case vrecha OpenFOAM Pre-Processing 5 March 12, 2008 13:36


All times are GMT -4. The time now is 01:37.