CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

cyclic boundary with same geometric size but different number of faces?

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes
  • 1 Post By strikeraj

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   April 17, 2012, 22:53
Default cyclic boundary with same geometric size but different number of faces?
  #1
New Member
 
Tom Li
Join Date: Aug 2011
Posts: 16
Rep Power: 15
strikeraj is on a distinguished road
Hi

I am just wondering if this is possible.
I have a 3D rectangular domain. It is meshed in ICEM with unstructured grid, save to fluent .msh and converted in openfoam using fluent3DMeshToFoam.
But when I try to run it, it says the number of faces does not match on the two patches that I set as cyclic. Is there a way to work this out without remeshing the faces with a structured grid? If not, does my way of generating and exporting mesh works when I put a structured surface mesh on both sides?

Thanks in advance

Cheers,
Tom
strikeraj is offline   Reply With Quote

Old   May 6, 2012, 17:16
Default
  #2
New Member
 
Tom Li
Join Date: Aug 2011
Posts: 16
Rep Power: 15
strikeraj is on a distinguished road
sorry to bump this up but can anyone give me an idea on how to put on cyclic BC on an unstructured mesh?

Many thanks
strikeraj is offline   Reply With Quote

Old   May 7, 2012, 11:50
Default
  #3
New Member
 
Michael Ahlmann
Join Date: Feb 2010
Posts: 27
Rep Power: 16
danishdude is on a distinguished road
The original cyclic condition requires point matched faces. However, the cyclicAMI condition allows you to use a cyclic condition without point matching. It's available in OF 2.1.
danishdude is offline   Reply With Quote

Old   May 8, 2012, 13:44
Default
  #4
New Member
 
Bruno
Join Date: Apr 2011
Posts: 2
Rep Power: 0
brunotojo is on a distinguished road
Yes, it is possible. In ICEM you need to define the mesh as periodic in Mesh>Global Mesh Setup>Set up periodicity.

And then, after converting to OpenFoam format, you will need to use createPatch (there are a lot of post about this here) to define your periodic boundary.

I am also new to OpenFoam so, I am not sure if this will work for every case, but for me it did.

Best regards,
Bruno
brunotojo is offline   Reply With Quote

Old   May 8, 2012, 13:46
Default
  #5
New Member
 
Tom Li
Join Date: Aug 2011
Posts: 16
Rep Power: 15
strikeraj is on a distinguished road
Thanks Michael and Bruno for your reply.
I will take a look into both methods after I finish my work on hand and I will let you know how it works out
strikeraj is offline   Reply With Quote

Old   May 15, 2012, 19:58
Default
  #6
New Member
 
Tom Li
Join Date: Aug 2011
Posts: 16
Rep Power: 15
strikeraj is on a distinguished road
Quote:
Originally Posted by danishdude View Post
The original cyclic condition requires point matched faces. However, the cyclicAMI condition allows you to use a cyclic condition without point matching. It's available in OF 2.1.
Hi Michael

I have just tried my case with the cyclicAMI BC and it works if i run it serial.
But when I try to use decomposePar and run in parallel with mpirun, error occurs. Do you have clue on what might be wrong?

Thanks very much for your time

Cheers,
Tom

attached is the error log file
Attached Files
File Type: zip log.1.1.0.zip (2.5 KB, 52 views)

Last edited by strikeraj; May 15, 2012 at 20:09. Reason: attach log
strikeraj is offline   Reply With Quote

Old   May 16, 2012, 12:10
Default
  #7
New Member
 
Michael Ahlmann
Join Date: Feb 2010
Posts: 27
Rep Power: 16
danishdude is on a distinguished road
Any chance you can upload the case somewhere so I can take a closer look? If it's not too big, you can e-mail it to me at mahlmann@ucdavis.edu
danishdude is offline   Reply With Quote

Old   May 21, 2012, 08:02
Default
  #8
Member
 
Join Date: Apr 2010
Posts: 61
Rep Power: 16
alquimista is on a distinguished road
Hello,

I had the same questions months ago and in my opinion the best option was to use the extend version of OpenFOAM. It has General Interface Grid implemented. There's more information available on internet.

https://cmg.soton.ac.uk/community/at...LloydAug11.pdf
http://www.tfd.chalmers.se/~hani/kur...dy_2010_OP.pdf

Good luck.
alquimista is offline   Reply With Quote

Old   May 21, 2012, 11:43
Default
  #9
New Member
 
Tom Li
Join Date: Aug 2011
Posts: 16
Rep Power: 15
strikeraj is on a distinguished road
Update:

I have posted this on the bug tracker and got a reply with working solution:

Quote:
The AMI assumes the patches are collocated - if not you have to specify the 'transform' type. (This does not affect serial running since it uses a different code path).

Add transform=translational and a separationVector to your constant/polyMesh/boundary file and it should work:

CYCLIC1
{
type cyclicAMI;
neighbourPatch CYCLIC2;
transform translational;
separationVector (0 0 -0.0914);
nFaces 9824;
startFace 593664;
}

CYCLIC2
{
type cyclicAMI;
neighbourPatch CYCLIC1;
transform translational;
separationVector (0 0 0.0914);
nFaces 11028;
startFace 615000;
}
Thoma likes this.
strikeraj is offline   Reply With Quote

Old   December 13, 2013, 13:35
Default decompose par for cyclicAMI bc
  #10
New Member
 
swapnil
Join Date: Jun 2013
Posts: 1
Rep Power: 0
swapnilsalokhe is on a distinguished road
Hi Tom Li,

When you are using any cyclic boundary in decomposePar you have to set both cyclic planes on one processor then only it will work on parallel processors.


Quote:
Originally Posted by strikeraj View Post
Hi Michael

I have just tried my case with the cyclicAMI BC and it works if i run it serial.
But when I try to use decomposePar and run in parallel with mpirun, error occurs. Do you have clue on what might be wrong?

Thanks very much for your time

Cheers,
Tom

attached is the error log file
swapnilsalokhe is offline   Reply With Quote

Old   August 16, 2018, 16:38
Default
  #11
New Member
 
Nilay Kulkarni
Join Date: May 2018
Posts: 24
Rep Power: 8
neilk is on a distinguished road
Quote:
Originally Posted by strikeraj View Post
Update:

I have posted this on the bug tracker and got a reply with working solution:
Hello.
I am trying to simulate for over a bifurcating channel with surface film on it. The solver I'm trying to use is reactingParcelFilmFoam. But i face the following error:

AMI: Creating addressing and weights between 56 source faces and 101 target faces
--> FOAM Warning :
From function void Foam::AMIMethod<SourcePatch, TargetPatch>::checkPatches() const [with SourcePatch = Foam::PrimitivePatch<Foam::face, Foam::SubList, const Foam::Field<Foam::Vector<double> >&>; TargetPatch = Foam::PrimitivePatch<Foam::face, Foam::SubList, const Foam::Field<Foam::Vector<double> >&>]
in file lnInclude/AMIMethod.C at line 57
Source and target patch bounding boxes are not similar
source box span : (0.05119999904 0.05118754041 1.52368e-006)
target box span : (0.1997277537 0.04618446137 0.0378344416)
source box : (-0.02559999952 -0.02559712399 -0.1000011034) (0.02559999952 0.02559041642 -0.09999957972)
target box : (-0.09986398835 -0.02308501394 0.1047726057) (0.0998637653 0.02309944743 0.1426070473)
inflated target box : (-0.1102869948 -0.03350802035 0.09434959929) (0.1102867717 0.03352245384 0.1530300537)


--> FOAM FATAL ERROR:
Unable to find initial target face

From function bool Foam::AMIMethod<SourcePatch, TargetPatch>::initialise(Foam::labelListList&, Foam::scalarListList&, Foam::labelListList&, Foam::scalarListList&, Foam::label&, Foam::label&) [with SourcePatch = Foam::PrimitivePatch<Foam::face, Foam::SubList, const Foam::Field<Foam::Vector<double> >&>; TargetPatch = Foam::PrimitivePatch<Foam::face, Foam::SubList, const Foam::Field<Foam::Vector<double> >&>; Foam::labelListList = Foam::List<Foam::List<int> >; Foam::scalarListList = Foam::List<Foam::List<double> >; Foam::label = int]
in file lnInclude/AMIMethod.C at line 127.

FOAM aborting

For creating the surface film I use extrudeToRegionMesh. Is there any way to run this case without having the new surface films boundaries as cyclic? The polymesh generated by default after extrudeToRegionMesh is as follows:

(
INLET
{
type patch;
nFaces 56;
startFace 23224;
}
OUTLETS
{
type patch;
nFaces 101;
startFace 23280;
}
wallFilmFaces_top
{
type patch;
nFaces 15535;
startFace 23381;
}
region0_to_wallFilmRegion_wallFilmFaces
{
type mappedWall;
inGroups 1(wall);
nFaces 15535;
startFace 38916;
sampleMode nearestPatchFace;
sampleRegion region0;
samplePatch region0_to_wallFilmRegion_wallFilmFaces;
offsetMode nonuniform;
offsets nonuniform List<vector>

Thank you
neilk is offline   Reply With Quote

Old   August 17, 2018, 05:12
Default
  #12
Senior Member
 
Robert
Join Date: May 2015
Location: Bremen, GER
Posts: 292
Rep Power: 12
RobertHB is on a distinguished road
You could try using cyclicACMI instead of plain AMI or work with the BC's transform/rotate/translate entry to align your patches.
__________________
If you liked my answer to your question, please consider leaving a "Like" in return
RobertHB is offline   Reply With Quote

Old   August 17, 2018, 12:10
Default
  #13
New Member
 
Nilay Kulkarni
Join Date: May 2018
Posts: 24
Rep Power: 8
neilk is on a distinguished road
Quote:
Originally Posted by RobertHB View Post
You could try using cyclicACMI instead of plain AMI or work with the BC's transform/rotate/translate entry to align your patches.
Hey,

I did try using cyclicACMI but it gave me the following error:

--> FOAM FATAL ERROR:
Inconsistent ACMI patches INLET and region0_to_wallFilmRegion_wallFilmFaces. Patches should have identical topology

From function virtual Foam::label Foam::cyclicACMIPolyPatch::nonOverlapPatchID() const
in file AMIInterpolation/patches/cyclicACMI/cyclicACMIPolyPatch/cyclicACMIPolyPatch.C at line 481.


And if I do want to transform the boundary, I'm not sure how to go about it as the outlets are diverging in the opposite directions. My geometry is something along these lines.

https://www.google.com/search?rlz=1C...K_ZQadEpl-Q8UM

Will transforming the boundary here, physically alter my actual mesh and geometry?

Thank you
neilk is offline   Reply With Quote

Reply


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


Similar Threads
Thread Thread Starter Forum Replies Last Post
Problem with parallel run Hisham OpenFOAM Running, Solving & CFD 9 March 13, 2012 09:31
critical error during installation of openfoam Fabio88 OpenFOAM Installation 21 June 2, 2010 04:01
[snappyHexMesh] external flow with snappyHexMesh chelvistero OpenFOAM Meshing & Mesh Conversion 11 January 15, 2010 20:43
[Commercial meshers] Trimmed cell and embedded refinement mesh conversion issues michele OpenFOAM Meshing & Mesh Conversion 2 July 15, 2005 05:15


All times are GMT -4. The time now is 06:43.