Periodic BC on half cylinder

Submitted by karenson on Tue, 01/09/2018 - 23:04

Hello everyone,

I am trying to reduce the number of particles in a pour simulation by cutting my cylindrical domain in half with a periodic boundary.

I started by creating a rectangular simulation domain with periodic/fixed/fixed BCs in x/y/z respectfully. I then created the walls of my cylinder such that the cylinder is dissected in the middle by the periodic x-plane. Finally, I create a pour region for inserting particles. The pour region is formed by a primitive wedge shape that exists only in the rectangular simulation domain (i.e., to the right of the periodic x-plane).

When I run the simulation I get the following:

ERROR: surface_exterior not implemented (../region_wedge.cpp:369)

I cannot find any documentation explaining what "surface_exterior" is. Could anyone please point me in the right direction for how to fix this error / get my code to run?

Best regards
Karen N Son

PS: Please see the attached PDF which describes my domain in more detail.

arnom's picture

arnom | Wed, 01/10/2018 - 11:10

The problem is coming from the fact that the surface_exterior function is not implemented for regions of type wedge. As you did not provide your input script I don't know how you are inserting your particles. But you are probably using this region for the insertion, which requires the surface_exterior function. Depending on what you want to do I suggest you look into the fix insert/stream which allows you to specify a mesh (half of your cylinder cap) to insert particles. Obviously you can also just look at the code and implement this function. It should not be too hard really.

DCS team member & LIGGGHTS(R) core developer

AndresMM | Wed, 01/10/2018 - 11:22

Does your simulation run if the X-dimensions is not periodic but a wall? I do not understand how the periodic X-boundary works in this case. If a particle leaves through the periodic left X-plane in the "minus X" direction, it will enter from the right X-plane of the domain, which has to be further right than the rightmost point of the cylinder, which would cause the particles to bounce on the cylinder wall from the right.

Another approach you can take to diminish your computational effort is to take a thin slice of the cylinder, with a Y-length of its diameter and with periodic X-boundaries. If it is thin enough in the X-dimensions you could approximate the Y-Walls to planes (or find the real curvatures).

What are you trying to measure in your simulations?

Cheers,
Andrés