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

Custom Lagrangian Lookup Table Injector Fails to Fully Initialise in Parallel

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   January 27, 2021, 09:44
Default Custom Lagrangian Lookup Table Injector Fails to Fully Initialise in Parallel
  #1
Member
 
Conor Crickmore
Join Date: Jan 2020
Location: Leicestershire, United Kingdom
Posts: 36
Rep Power: 6
cjc96 is on a distinguished road
Hey all!
I hope you are keeping both safe and sane!

I've encountered an issue with a custom Lagrangian injector I'm working on, based upon the standard KinematicLookupTableInjection model. I am recording the properties of parcels that cross a user-specified plane in Simulation A and then injecting parcels with those same properties into Simulation B.

The model itself seems to largely be working as desired, however, if the injection points span multiple processors in a parallel case, the standard method for assigning the injector a cell fails. I can avoid this in smaller cases by only decomposing the domain in one direction, such that all the injection sites fall within a single sub-domain, but this obviously isn't feasible for the more complicated and highly decomposed cases I have planned.

My 'C++ Fu' has definitely failed me here. I've followed the function trail as best I could to find an alternative, but I have very little experience with parallel coding and so I am here, asking for your help!

-----------------------------

The active injection model calling the findCellAtPosition function (injectionModel.C) available to all injection models which attempts to assign each injector in the lookup table with a cell using findCellFacePt (polyMesh.C). This process fails to identify the parent cell of some, but not all, injectors.

I can force the cells to be assigned by including a call to findNearestCell (meshSearch.C) for any injectors that aren't initialised during the initial pass but at runtime, this generates warnings that the specified cells are outside of the mesh. The positions are within the domain itself, but it seems they are outside the sub-domain assigned to processor handling injections.

-----------------------------

I guess, in essence, I am looking for a way to enable the injections to be handled my multiple processors? I understand this isn't a lot to go on, but I didn't just want to spam the post with entire functions. If you need any further information I'm of course happy to oblige

Thanks as always,
__________________
Conor Crickmore
PhD Researcher in Automotive Aerodynamics
Aeronautical and Automotive Engineering
Loughborough University
LE11 3TU
cjc96 is offline   Reply With Quote

Old   February 5, 2021, 10:13
Default
  #2
Member
 
Conor Crickmore
Join Date: Jan 2020
Location: Leicestershire, United Kingdom
Posts: 36
Rep Power: 6
cjc96 is on a distinguished road
As is often the case, it looks like I was just being an idiot...


Still relatively new to this and I didn't realise that the Info function only reads from processor 0. Therefore, if an injector was being initialised elsewhere, it was deemed invalid. A quick check with Pout confirms this.


Oops =P
__________________
Conor Crickmore
PhD Researcher in Automotive Aerodynamics
Aeronautical and Automotive Engineering
Loughborough University
LE11 3TU
cjc96 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
Lagrangian particle tracking cannot be run in parallel for the cases with AMI patches Armin.Sh OpenFOAM Running, Solving & CFD 7 March 28, 2021 23:33
Error running openfoam in parallel fede32 OpenFOAM Programming & Development 5 October 4, 2018 17:38
Explicitly filtered LES saeedi Main CFD Forum 16 October 14, 2015 12:58
simpleFoam parallel AndrewMortimer OpenFOAM Running, Solving & CFD 12 August 7, 2015 19:45
custom inlet problem with parallel runs hansjoerg OpenFOAM Running, Solving & CFD 3 November 15, 2013 11:05


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