[lammps-users] Define Polygon regions in LAMMPS

Dear Lammps users:

I am working with 2D grains in lammps. I have the vertices and the end-points of a particular polygon-shaped grain. I want to define a region with the shape of this polygon and then create atoms to generate this grain. What I am now doing is dividing the polygon into small squares and then using their dimensions in the region block command. However, this process takes too long to generate a large grain. Do you guys have any ideas on how to make this process faster? Also, is there any command in lammps that can generate polygon regions?

I know this is more of a preprocessing problem if lammps do not have any polygon region command. Still your input will be much appreciated.

Mahmudul Islam
Department of Mechanical Engineering
Bangladesh University of Engineering and Technology

no. it’s straight lines creating a polygon.

You can create a region from the union (or intersection) of multiple regions. If each of those regions lies on one side of a plane, you can use multiple “region” commands to define a region for any polyhedron. (If all of the planes are perpendicular to the Z axis, then this will be a polygon. For convex polyhedrons, it’s perhaps a little bit easier, because you can use only set intersections.)

Take a look at the documentation for the region command, and read about the “planar”, “union” and “intersection” keywords for that command.

Hope this helps.


A quick question:

Is the polyhedral region convex?


Thank you very much Andrew.