Moving wall/region with SPH; gravity gradient

Submitted by SchmidtDa on Fri, 09/27/2013 - 11:35

Hello,
I want to simulate the flow of lubrication oil in bearings using the SPH-Method.

So I need an inner and outer ring that rotate around the origin(0,0,0) in opposite direction and several rolling elements that rotate around their own axis. And at the same time I need a rotation gravity vector, that rotates with the same angular velocity as the outer ring, using the gravity gradient command.

To create complex walls for SPH there only seems to be the option to use fix wall/region/SPH with a region that is created by importing .vtk files. I don't have the program to create .vtk files right now, so I simply use cylinders and spheres as simplified models.

To rotate the regions I wanted to use the keyword "rotate" as it is documented here: http://nf.nci.org.au/facilities/software/LIGGGHTS/doc/region.html

So the region that is used for my cylinder should look as following: rotate around 0,0,0 with vector 0,0,1 period 1
region au cylinder z 0.0 0.0 39e-3 -0.015 0.015 side in units box rotate 0.0 0.0 0.0 0.0 0.0 1.0 1.0

But this gives me the "ERROR: Illegal region command (region.cpp:356)"
I only have a very basic understanding of C++, but I looked at the code of region.cpp and it appears to me that this error is caused, because the string "v_" is expected in the second input argument. So I changed my region line to:
region au cylinder z 0.0 0.0 39e-3 -0.015 0.015 side in units box rotate v_1.0 0.0 0.0 0.0 0.0 0.0 1.0
Which lets me execute that line without error message, but when I want to run that case I get the message:
ERROR: Variable name for region does not exist (region.cpp:105)
And I can't figure out what causes this.
What am I missing? And is this really the only option to create moving walls for SPH? It would be a lot easier if you could use mesh surface from .STL as SPH walls.

The second point is about gravity gradient. http://nf.nci.org.au/facilities/software/LIGGGHTS/doc/fix_gravity.html
My line looks as following.
fix gravi all gravity 9.81 gradient 0.0 -180.0 0.0 1.0
Which gives: ERROR: Illegal fix gravity command (fix_gravity.cpp:128)
Looking at fix_gravity.cpp it appears that there isn't even an option for gradient in my version.
I'm using 2.3.7. Is this option not implemented or am I missing something?

Thanks in advance

aaigner's picture

aaigner | Tue, 10/01/2013 - 12:45

The documentation from http://nf.nci.org.au/... is for the version 1.1. It is very outdated!

Use your own documentation that can be found in the directory /your_LIGGGHTS_dir/doc/.

Cheers
Andreas